Search Toolkit Book for CQueryParsePanel
#include <gui/widgets/data/query_parse_panel.hpp>
This class represents a toolbar that allows the user to query against a data source and then to visualize the query results as selected elements within the attached view. In order to support the query toolbar, the developer must have a data source that is derived from IQueryDataSource which supports execution of the parsed query against the data. The developer must also provide a pointer to a widget (the view for the data source) which must implement the interface IQueryWidget.
The queries themselves are run as background jobs since they could take significant time in cases where network access is needed. At job completion a CQueryEvent event is sent to the IQueryWidget-derived widget.
Definition at line 83 of file query_parse_panel.hpp.
◆ TNamedQueries ◆ ECommands Enumerator eCmdStartQuery eCmdStopQuery eCmdSelQuery eCmdNext eCmdPrevious eCmdCaseSensitive eCmdHelp eCmdFilter eCmdStringMatchType eCmdLastDefinition at line 91 of file query_parse_panel.hpp.
◆ CQueryParsePanel() ◆ ~CQueryParsePanel() CQueryParsePanel::~CQueryParsePanel ( ) virtual ◆ AddQueryText() void CQueryParsePanel::AddQueryText ( const string & query_mod ) ◆ CompleteQuery()Definition at line 1034 of file query_parse_panel.cpp.
References eCmdFilter, eCmdNext, eCmdPrevious, eCmdStartQuery, eCmdStopQuery, eCmdStringMatchType, CEventHandler::ePool_Parent, m_Animation, m_pSearch, m_pSelectAll, m_QueryWidget, m_ToolBar, NULL, OnSearchctrlTextEnter(), IQueryWidget::QueryEnd(), and CEventHandler::Send().
Referenced by OnIdle(), and x_ExecuteQuery().
◆ Create() void CQueryParsePanel::Create ( wxWindow * parent, wxWindowID id =wxID_ANY
, const wxPoint & pos = wxDefaultPosition
, const wxSize & size = wxDefaultSize
) virtual ◆ CreateControls() void CQueryParsePanel::CreateControls ( )
Creates the controls and sizers.
Definition at line 277 of file query_parse_panel.cpp.
References _, eCmdFilter, eCmdHelp, eCmdNext, eCmdPrevious, eCmdSelQuery, eCmdStartQuery, eCmdStopQuery, eCmdStringMatchType, IQueryWidget::GetSearchHelpAddr(), ID_QUERY_ANIMATIONCTRL, ID_SEARCHCTRL, ID_SELECT_ALL, ID_TOOLBAR, m_Animation, m_pSearch, m_pSelectAll, m_QueryWidget, m_SearchType, m_ToolBar, NULL, OnCtrlKillFocus(), CSysPath::ResolvePath(), wxID_ANY, and wxT.
Referenced by Create().
◆ DECLARE_EVENT_TABLE() CQueryParsePanel::DECLARE_EVENT_TABLE ( ) private ◆ GetDefaultQueries() ◆ GetLastQuery() string CQueryParsePanel::GetLastQuery ( ) const ◆ HideSelectAll() void CQueryParsePanel::HideSelectAll ( void ) ◆ Init() void CQueryParsePanel::Init ( void ) ◆ IsSelectAll() bool CQueryParsePanel::IsSelectAll ( ) ◆ LoadSettings() void CQueryParsePanel::LoadSettings ( ) virtualImplements IRegSettings.
Definition at line 528 of file query_parse_panel.cpp.
References CGuiRegistry::GetInstance(), CGuiRegistry::GetReadView(), CRegistryReadView::GetStringVec(), i, kRecentQueries, m_MaxRecentQueries, m_RecentQueries, m_RegPath, and m_RegSection.
Referenced by CPhyloTreeWidget::LoadSettings(), SetDataSource(), CGridWidget::SetRegistryPath(), and CGridWidget::x_InitGrid().
◆ OnButtonNext() void CQueryParsePanel::OnButtonNext ( wxCommandEvent & evt ) ◆ OnButtonPrevious() void CQueryParsePanel::OnButtonPrevious ( wxCommandEvent & evt ) ◆ OnContextMenu() ◆ OnCtrlKillFocus() void CQueryParsePanel::OnCtrlKillFocus ( wxFocusEvent & evt ) ◆ OnIdle() void CQueryParsePanel::OnIdle ( wxIdleEvent & event )Definition at line 1298 of file query_parse_panel.cpp.
References CompleteQuery(), NStr::DoubleToString(), Info(), NStr::IntToString(), job_future_base::IsCanceled(), job_future_base::IsComplete(), LOG_POST, m_Future, m_Job, m_QueryDataSource, NCBI_CATCH, NULL, NStr::NumericToString(), job_future_base::reset(), and string.
◆ OnQuerySel() void CQueryParsePanel::OnQuerySel ( wxCommandEvent & evt ) ◆ OnRecentQuery() void CQueryParsePanel::OnRecentQuery ( wxCommandEvent & evt ) ◆ OnSearchctrlSearchButtonClick() void CQueryParsePanel::OnSearchctrlSearchButtonClick ( wxCommandEvent & evt ) ◆ OnSearchctrlSearchStop() void CQueryParsePanel::OnSearchctrlSearchStop ( wxCommandEvent & evt ) ◆ OnSearchctrlTextEnter() void CQueryParsePanel::OnSearchctrlTextEnter ( wxCommandEvent & evt )Definition at line 652 of file query_parse_panel.cpp.
References eCmdStartQuery, NStr::eTrunc_Begin, f, first(), CRichTextCtrl::GetUtf8(), i, m_CaseSensitive, m_pSearch, m_SearchString, m_SearchStringFields, m_ToolBar, max(), min(), OnSearchctrlSearchButtonClick(), ncbi::grid::netcache::search::fields::size, str(), NStr::TruncateSpaces(), wxT, and x_IsValidQuery().
Referenced by CompleteQuery(), and OnRecentQuery().
◆ OnSearchHelp() void CQueryParsePanel::OnSearchHelp ( wxCommandEvent & evt ) ◆ OnStringMatchTypeBtn() void CQueryParsePanel::OnStringMatchTypeBtn ( wxCommandEvent & evt ) ◆ OnStringMatchTypeSelected() void CQueryParsePanel::OnStringMatchTypeSelected ( wxCommandEvent & evt )Definition at line 859 of file query_parse_panel.cpp.
References IQueryWidget::DlgOverlayFix(), ID_STRING_MATCH_TYPE1, kStringMatchEnumTypes, kStringMatchTypes, kStringMatchTypesCount, kStringMatchTypesToolbar, m_CaseSensitive, m_QueryWidget, m_SearchType, m_StringCompare, m_ToolBar, and ToWxString().
◆ OnToggleHideUnselected() void CQueryParsePanel::OnToggleHideUnselected ( wxCommandEvent & evt )Definition at line 822 of file query_parse_panel.cpp.
References eCmdFilter, CRichTextCtrl::GetUtf8(), m_CaseSensitive, m_PrevCaseSensitive, m_PrevQuery, m_PrevStringCompare, m_pSearch, m_QueryWidget, m_StringCompare, m_ToolBar, query, IQueryWidget::SetHideUnselected(), and x_ExecuteQuery().
◆ OnToggleSelectAll() void CQueryParsePanel::OnToggleSelectAll ( wxCommandEvent & evt ) ◆ SaveSettings() void CQueryParsePanel::SaveSettings ( ) const virtual ◆ SetDataSource()Set or update data source.
Definition at line 472 of file query_parse_panel.cpp.
References CChecksum::AddLine(), CChecksum::eMD5, GetMD5Digest(), i, IsSelectAll(), LoadSettings(), m_PrevQuery, m_pSelectAll, m_QueryDataSource, m_QueryWidget, m_RegSection, NULL, CRef< C, Locker >::Reset(), and IQueryWidget::SetSelectAll().
Referenced by CQueryParsePanel(), CPhyloTreeWidget::RemoveCurrentDataSource(), CPhyloTreeWidget::SetDataSource(), and CPhyloTreeWidget::SetDataSourceNoUpdate().
◆ SetDefaultQueries() ◆ SetRegistryPath() void CQueryParsePanel::SetRegistryPath ( const string & reg_path ) virtual ◆ x_AddRecentQuery() ◆ x_CancelQueryInProgress() void CQueryParsePanel::x_CancelQueryInProgress ( ) protected ◆ x_ExecuteQuery() void CQueryParsePanel::x_ExecuteQuery ( int search_dir ) protectedParse query and determine how to execute.
Definition at line 1149 of file query_parse_panel.cpp.
References arr, NStr::CompareNocase(), CompleteQuery(), CTreeNode< TValue, TKeyGetterP >::CountNodes(), CQueryParseTree::eCaseInsensitive, eCmdFilter, eCmdNext, eCmdPrevious, eCmdStartQuery, eCmdStopQuery, eCmdStringMatchType, Error(), CQueryParseTree::eSyntaxCheck, Flatten_ParseTree(), CMacroQueryExec::GetFunctionNames(), CException::GetMsg(), CRef< C, Locker >::GetPointer(), CQueryParseTree::GetQueryTree(), CRichTextCtrl::GetUtf8(), CTreeNode< TValue, TKeyGetterP >::GetValue(), i, Info(), LOG_POST, m_Animation, m_CaseSensitive, m_PrevCaseSensitive, m_PrevQuery, m_PrevStringCompare, m_pSearch, m_pSelectAll, m_QueryDataSource, m_QueryWidget, m_StringCompare, m_ToolBar, NULL, CQueryParseTree::Parse(), CQueryParseTree::Print(), query, IQueryWidget::QueryStart(), NStr::Split(), string, x_AddRecentQuery(), and x_StartQueryJob().
Referenced by OnRecentQuery(), OnSearchctrlSearchButtonClick(), and OnToggleHideUnselected().
◆ x_IsValidQuery() bool CQueryParsePanel::x_IsValidQuery ( string query, bool casesensitive, vector< std::pair< size_t, size_t > > & fields ) protectedReturn true if query parses correctly, putting field names in 'fields'.
Definition at line 921 of file query_parse_panel.cpp.
References NStr::CompareNocase(), CTreeNode< TValue, TKeyGetterP >::CountNodes(), CQueryParseTree::eCaseInsensitive, CQueryParseTree::eCaseSensitiveUpper, CQueryParseTree::eSyntaxCheck, CQueryHighlightFunction::GetFieldPositions(), CMacroQueryExec::GetFunctionNames(), CException::GetMsg(), CRef< C, Locker >::GetPointerOrNull(), CQueryParseTree::GetQueryTree(), CTreeNode< TValue, TKeyGetterP >::GetValue(), Info(), LOG_POST, m_QueryDataSource, m_StringCompare, NULL, CQueryParseTree::Parse(), query, simple_string(), and TreeDepthFirstTraverse().
Referenced by OnSearchctrlTextEnter().
◆ x_StartQueryJob()Submit query job for asynch execution.
Definition at line 1077 of file query_parse_panel.cpp.
References _TRACE, job_future_base::cancel(), CException::GetMsg(), CRef< C, Locker >::GetPointerOrNull(), CQueryParseTree::GetQueryTree(), GUI_AsyncJoinFuture(), Info(), job_future_base::IsRunning(), job_async(), LOG_POST, m_Future, m_Job, m_QueryDataSource, m_StringCompare, query, and TreeDepthFirstTraverse().
Referenced by x_ExecuteQuery().
◆ m_Animation wxAnimationCtrl* CQueryParsePanel::m_Animation protected ◆ m_CaseSensitive bool CQueryParsePanel::m_CaseSensitive protected ◆ m_DefaultQueries vector<pair<string,string> > CQueryParsePanel::m_DefaultQueries protected ◆ m_Future ◆ m_IconsInitialized bool CQueryParsePanel::m_IconsInitialized = false staticprotected ◆ m_Job ◆ m_MaxDefaultQueries const int CQueryParsePanel::m_MaxDefaultQueries = 10 staticprotected ◆ m_MaxRecentQueries const int CQueryParsePanel::m_MaxRecentQueries = 5 staticprotected ◆ m_PrevCaseSensitive bool CQueryParsePanel::m_PrevCaseSensitive protected ◆ m_PrevQuery string CQueryParsePanel::m_PrevQuery protected ◆ m_PrevStringCompare ◆ m_pSearch ◆ m_pSelectAll wxCheckBox* CQueryParsePanel::m_pSelectAll protected ◆ m_QueryDataSource ◆ m_QueryWidgetInterface to widget which will display query results.
Definition at line 310 of file query_parse_panel.hpp.
Referenced by CompleteQuery(), CreateControls(), OnButtonNext(), OnButtonPrevious(), OnCtrlKillFocus(), OnQuerySel(), OnRecentQuery(), OnSearchctrlSearchButtonClick(), OnSearchctrlSearchStop(), OnSearchHelp(), OnStringMatchTypeBtn(), OnStringMatchTypeSelected(), OnToggleHideUnselected(), OnToggleSelectAll(), SetDataSource(), and x_ExecuteQuery().
◆ m_RecentQueries vector<pair<string,string> > CQueryParsePanel::m_RecentQueries protected ◆ m_RegPath string CQueryParsePanel::m_RegPath protected ◆ m_RegSection string CQueryParsePanel::m_RegSection protected ◆ m_SearchString ◆ m_SearchStringFields std::vector<std::pair<size_t, size_t> > CQueryParsePanel::m_SearchStringFields protected ◆ m_SearchType wxStaticText* CQueryParsePanel::m_SearchType protected ◆ m_StopQuery ◆ m_StringCompare ◆ m_StringSearch ◆ m_ToolBar wxToolBar* CQueryParsePanel::m_ToolBar protectedThe documentation for this class was generated from the following files:
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