namePos = href.find(name);
59 if(string::npos == namePos)
61 size_tnextPos = href.find(
'&', namePos);
62 if(string::npos == nextPos)
63nextPos = href.length();
64 returnhref.substr(namePos + name.length() + 1, nextPos - namePos - name.length() - 1);
69 const stringunalignedRegionHref =
"$UNALIGNED_REGION$";
70 const stringgenomicLinkHref =
"$GENOMIC_LINK$";
71 if(string::npos != href.find(unalignedRegionHref)) {
75 else if(string::npos != href.find(genomicLinkHref)) {
96 if(
"true"==
value)
98 boolreverse(
false);
100 if(
"true"==
value)
104 if(
"true"==
value)
122 type->SetStr(
"GraphicalViewParams");
130 label->SetStr(
"Settings");
133param->
SetData().SetStr(url);
134 data.push_back(param);
143 stringtmp_seq{ seq };
151 if(!flipped_strands) {
157 if(!is_protein && flipped_strands) {
176wxMessageBox(
"Failed to retrieve sequence: "+ seq_id);
183 if(reverse != flipped_strands) {
191dialogUnalignedRegion.SetTitle(dialogUnalignedRegion.GetTitle() +
" - poly(A)-tail");
193dialogUnalignedRegion.ShowModal();
198 size_thiddenBasesCount(0);
208 if(hiddenBasesCount) {
211vec.
GetSeqData(displayFrom, displayTo, seq_data);
215wxString hiddenBasesText;
216hiddenBasesText.Printf(
"\n...(%ld more unaligned bases)...\n", (
long)hiddenBasesCount);
222vec.
GetSeqData(displayFrom, displayTo, seq_data);
227vec.
GetSeqData(displayFrom, displayTo, seq_data);
235vec.
GetSeqData(displayFrom, displayTo, seq_data);
240displayFrom = (from -
offset) > 0 ? (from -
offset) : 0;
242vec.
GetSeqData(displayFrom, displayTo, seq_data);
246 if(hiddenBasesCount) {
250vec.
GetSeqData(displayFrom, displayTo, seq_data);
254wxString hiddenBasesText;
255hiddenBasesText.Printf(
"\n...(%ld more unaligned bases)...\n", (
long)hiddenBasesCount);
261vec.
GetSeqData(displayFrom, displayTo, seq_data);
269vec.
GetSeqData(displayFrom, displayTo, seq_data);
278 size_thiddenBasesCount(0);
289vec.
GetSeqData(displayFrom, displayTo, seq_data);
293 if(hiddenBasesCount) {
297vec.
GetSeqData(displayFrom, displayTo, seq_data);
301wxString hiddenBasesText;
302hiddenBasesText.Printf(
"\n...(%ld more unaligned bases)...\n", (
long)hiddenBasesCount);
308vec.
GetSeqData(displayFrom, displayTo, seq_data);
316vec.
GetSeqData(displayFrom, displayTo, seq_data);
323 if(hiddenBasesCount) {
327vec.
GetSeqData(displayFrom, displayTo, seq_data);
331wxString hiddenBasesText;
332hiddenBasesText.Printf(
"\n...(%ld more unaligned bases)...\n", (
long)hiddenBasesCount);
338vec.
GetSeqData(displayFrom, displayTo, seq_data);
346vec.
GetSeqData(displayFrom, displayTo, seq_data);
351displayFrom = (from -
offset) > 0 ? (from -
offset) : 0;
354vec.
GetSeqData(displayFrom, displayTo, seq_data);
363vector<string> params;
365 for(
auto& param : params) {
366 size_tpos = param.find(
"mk=");
367 if(string::npos == pos)
370vector<string> marker;
373 if(3 != marker.size())
376 TSeqPosmpos = NStr::StringToNumeric<TSeqPos>(marker[0]);
379param += NStr::NumericToString<TSeqPos>(--mpos);
388 if(0 == params.size())
393 for(
size_t i= 1;
i< params.size(); ++
i) {
static SIZE_TYPE Reverse(const string &src, TCoding src_coding, TSeqPos pos, TSeqPos length, string &dst)
static SIZE_TYPE ReverseComplement(const string &src, TCoding src_coding, TSeqPos pos, TSeqPos length, string &dst)
void WriteNormalText(const wxString &text)
void WriteRedText(const wxString &text)
unsigned int TSeqPos
Type for sequence locations and lengths.
int TSignedSeqPos
Type for signed sequence position.
#define LOG_POST(message)
This macro is deprecated and it's strongly recomended to move in all projects (except tests) to macro...
void Error(CExceptionArgs_Base &args)
virtual bool Send(CEvent *evt, EDispatch disp_how=eDispatch_Default, int pool_name=ePool_Default)
Sends an event synchronously.
@ eDispatch_Default
dispatch until handled at least by one handler
CSeq_id & Set(const CTempString &the_id, TParseFlags flags=fParse_AnyRaw)
Reassign based on flat specifications; arguments interpreted as with constructors.
@ eCoding_Iupac
Set coding to printable coding (Iupacna or Iupacaa)
void GetSeqData(TSeqPos start, TSeqPos stop, string &buffer) const
Fill the buffer string with the sequence data for the interval [start, stop).
#define END_NCBI_SCOPE
End previously defined NCBI scope.
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
static list< string > & Split(const CTempString str, const CTempString delim, list< string > &arr, TSplitFlags flags=0, vector< SIZE_TYPE > *token_pos=NULL)
Split a string using specified delimiters.
static unsigned int StringToUInt(const CTempString str, TStringToNumFlags flags=0, int base=10)
Convert string to unsigned int.
@ fConvErr_NoThrow
Do not throw an exception on error.
static const char label[]
TData & SetData(void)
Assign a value to Data data member.
void SetLabel(TLabel &value)
Assign a value to Label data member.
void SetType(TType &value)
Assign a value to Type data member.
void SetData(TData &value)
Assign a value to Data data member.
vector< CRef< CUser_field > > TData
const GenericPointer< typename T::ValueType > T2 value
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4