: m_LabelPos(
string::npos),
78m_IsDatabase(is_database),
158 Create(parent,
id, caption, pos,
size, style);
165SetExtraStyle(wxWS_EX_BLOCK_EVENTS);
166CDialog::Create( parent,
id, caption, pos,
size, style );
171GetSizer()->SetSizeHints(
this);
203wxBoxSizer* itemBoxSizer2 =
newwxBoxSizer(wxVERTICAL);
204itemCDialog1->SetSizer(itemBoxSizer2);
206wxFlexGridSizer* itemFlexGridSizer3 =
newwxFlexGridSizer(2, 2, 0, 0);
207itemBoxSizer2->Add(itemFlexGridSizer3, 0, wxGROW|wxLEFT|wxRIGHT|wxTOP, wxDLG_UNIT(itemCDialog1, wxSize(5, -1)).x);
209wxStaticText* itemStaticText4 =
newwxStaticText( itemCDialog1, wxID_STATIC,
_(
"Filter:"), wxDefaultPosition, wxDefaultSize, 0 );
210itemFlexGridSizer3->Add(itemStaticText4, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, wxDLG_UNIT(itemCDialog1, wxSize(5, -1)).x);
212wxBoxSizer* itemBoxSizer5 =
newwxBoxSizer(wxHORIZONTAL);
213itemFlexGridSizer3->Add(itemBoxSizer5, 0, wxGROW|wxALIGN_CENTER_VERTICAL, wxDLG_UNIT(itemCDialog1, wxSize(5, -1)).x);
215 m_SearchCtrl=
newwxTextCtrl( itemCDialog1,
ID_SEARCH, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
216itemBoxSizer5->Add(
m_SearchCtrl, 1, wxGROW|wxALL, wxDLG_UNIT(itemCDialog1, wxSize(5, -1)).x);
218wxButton* itemButton7 =
newwxButton( itemCDialog1,
ID_RESET_BTN,
_(
"Clear"), wxDefaultPosition, wxDefaultSize, 0 );
219itemBoxSizer5->Add(itemButton7, 0, wxALIGN_CENTER_VERTICAL|wxALL, wxDLG_UNIT(itemCDialog1, wxSize(5, -1)).x);
221itemFlexGridSizer3->Add(wxDLG_UNIT(itemCDialog1, wxSize(5, -1)).x, wxDLG_UNIT(itemCDialog1, wxSize(-1, 5)).y, 0, wxALIGN_CENTER_HORIZONTAL|wxALIGN_CENTER_VERTICAL|wxALL, wxDLG_UNIT(itemCDialog1, wxSize(5, -1)).x);
223 m_StatusText=
newwxStaticText( itemCDialog1,
wxID_STATUS,
_(
"Filter:"), wxDefaultPosition, wxDefaultSize, 0 );
224itemFlexGridSizer3->Add(
m_StatusText, 0, wxGROW|wxALIGN_CENTER_VERTICAL|wxALL, wxDLG_UNIT(itemCDialog1, wxSize(5, -1)).x);
226itemFlexGridSizer3->AddGrowableCol(1);
228 m_TreeCtrl=
newwxTreeCtrl( itemCDialog1,
ID_TREECTRL, wxDefaultPosition, wxDLG_UNIT(itemCDialog1, wxSize(240, 160)), wxTR_HAS_BUTTONS |wxTR_FULL_ROW_HIGHLIGHT|wxTR_HIDE_ROOT|wxTR_SINGLE|
wxTR_GBENCH_LINES);
229itemBoxSizer2->Add(
m_TreeCtrl, 1, wxGROW|wxALL, wxDLG_UNIT(itemCDialog1, wxSize(5, -1)).x);
231wxStdDialogButtonSizer* itemStdDialogButtonSizer11 =
newwxStdDialogButtonSizer;
233itemBoxSizer2->Add(itemStdDialogButtonSizer11, 0, wxALIGN_RIGHT|wxALL, wxDLG_UNIT(itemCDialog1, wxSize(5, -1)).x);
234 m_OKBtn=
newwxButton( itemCDialog1, wxID_OK,
_(
"&OK"), wxDefaultPosition, wxDefaultSize, 0 );
235itemStdDialogButtonSizer11->AddButton(
m_OKBtn);
237wxButton* itemButton13 =
newwxButton( itemCDialog1, wxID_CANCEL,
_(
"&Cancel"), wxDefaultPosition, wxDefaultSize, 0 );
238itemStdDialogButtonSizer11->AddButton(itemButton13);
240itemStdDialogButtonSizer11->Realize();
274 strings = tool +
" - Select BLAST Databases";
287 if( ! databases.empty()) {
317CDialog::OnInitDialog(event);
343vector<string> tokens;
347 const string& path = it->first;
352 size_t n= tokens.size();
353 for(
size_t i= 0;
i<
n; ++
i) {
354 const string&
label= tokens[
i];
358 if(new_item ==
NULL) {
436 boolreset =
query.empty();
462 while(parent && ! parent->
IsVisible()) {
478 stringstatus = reset ?
"All ":
"Filtered - ";
479 if( ! reset &&
n== 0) {
480status +=
"no matches";
483status +=
" Database";
484status += (
n!= 1 ?
"s are shown":
" is shown");
505 booldb_item =
false;
507wxTreeItemId
id=
m_TreeCtrl->GetSelection();
542wxTreeItemId
id=
m_TreeCtrl->GetSelection();
std::invoke_result< _Fty, ICanceled & >::type GUI_AsyncExec(_Fty &&_Fnarg, const wxString &msg=wxT("Accessing network..."))
CRef< CBLAST_Dlg_Item > m_Item
CBLASTDlgItemData(CBLAST_Dlg_Item *item)
virtual void EndModal(int retCode)
Interface for testing cancellation request in a long lasting operation.
container_type::iterator iterator
const_iterator end() const
iterator_bool insert(const value_type &val)
container_type::value_type value_type
const_iterator find(const key_type &key) const
#define ITERATE(Type, Var, Cont)
ITERATE macro to sequence through container elements.
#define NON_CONST_ITERATE(Type, Var, Cont)
Non constant version of ITERATE macro.
CRef< CBLAST_Dlg_Item > m_Root
void OnTreectrlSelChanged(wxTreeEvent &event)
deque< CBLAST_Dlg_Item * > TItemDeque
void AddChild(CBLAST_Dlg_Item &item)
CBLAST_Dlg_Item * x_GetSelectedDBItem()
CBLAST_Dlg_Item * GetParent()
void x_BuildTreeItems(CBLAST_Dlg_Item &item)
void x_UpdateCollapsedState(wxTreeItemId id)
void x_OnDatabaseSelected()
void OnOkClick(wxCommandEvent &event)
void OnTreectrlItemCollapsed(wxTreeEvent &event)
const string & GetPath() const
void SelectDatabases(vector< string > &databases)
void SetVisible(bool visible)
void OnInitDialog(wxInitDialogEvent &event)
void GetSelectedDatabases(vector< string > &databases)
void x_FilterItems(const string &query)
void OnTreectrlItemExpanded(wxTreeEvent &event)
map< wxString, CRef< CBLAST_Dlg_Item > > TNameToItemMap
CBLAST_Dlg_Item * m_Parent
TNameToItemMap * m_ChildItems
void x_UpdateFilterStatusText(bool reset, int n)
TNameToItemMap * GetChildItems()
CBLAST_Dlg_Item * GetChildByLabel(const string &label)
void SetDBMap(const TDbMap &map)
void SetToolName(const string &tool)
wxStaticText * m_StatusText
void SetId(const wxTreeItemId &id)
const wxTreeItemId & GetId() const
wxIcon GetIconResource(const wxString &name)
void OnTreectrlItemActivated(wxTreeEvent &event)
void OnResetBtnClick(wxCommandEvent &event)
wxTextCtrl * m_SearchCtrl
static bool ShowToolTips()
bool Create(wxWindow *parent, wxWindowID id=ID_CBLAST_DB_DIALOG, const wxString &caption=wxEmptyString, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(400, 300), long style=wxCAPTION|wxRESIZE_BORDER|wxSYSTEM_MENU|wxCLOSE_BOX|wxTAB_TRAVERSAL)
CBLASTDatabases::TDbMap TDbMap
wxBitmap GetBitmapResource(const wxString &name)
wxString GetLabel() const
void OnSearchTextUpdated(wxCommandEvent &event)
TObjectType * GetPointer(void) THROWS_NONE
Get pointer,.
void Reset(void)
Reset reference object.
#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 SIZE_TYPE FindNoCase(const CTempString str, const CTempString pattern, SIZE_TYPE start, SIZE_TYPE end, EOccurrence which=eFirst)
Find the pattern in the specified range of a string using a case insensitive search.
static string IntToString(int value, TNumToStringFlags flags=0, int base=10)
Convert int to string.
static const char label[]
const struct ncbi::grid::netcache::search::fields::SIZE size
static SLJIT_INLINE sljit_ins l(sljit_gpr r, sljit_s32 d, sljit_gpr x, sljit_gpr b)
static void SetTitle(CRef< CSeq_entry > entry, string title)
wxString ToWxString(const string &s)
string ToStdString(const wxString &s)
#define wxTR_GBENCH_LINES
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