QHelpSearchEngine Class
The QHelpSearchEngine class provides access to widgets reusable to integrate fulltext search as well as to index and search documentation. More...
Header: | #include <QHelpSearchEngine> |
qmake: | QT += help |
Since: | Qt 4.4 |
Inherits: | QObject |
Public Types
typedef | SearchHit |
Public Functions
QHelpSearchEngine(QHelpEngineCore *helpEngine, QObject *parent = Q_NULLPTR) | |
~QHelpSearchEngine() | |
int | hitCount() const |
QList<SearchHit> | hits(int start, int end) const |
QList<QHelpSearchQuery> | query() const |
QHelpSearchQueryWidget * | queryWidget() |
QHelpSearchResultWidget * | resultWidget() |
- 31 public functions inherited from QObject
Public Slots
void | cancelIndexing() |
void | cancelSearching() |
void | reindexDocumentation() |
void | search(const QList<QHelpSearchQuery> &queryList) |
- 1 public slot inherited from QObject
Signals
void | indexingFinished() |
void | indexingStarted() |
void | searchingFinished(int hits) |
void | searchingStarted() |
- 2 signals inherited from QObject
Additional Inherited Members
- 1 property inherited from QObject
- 1 public variable inherited from QObject
- 10 static public members inherited from QObject
- 9 protected functions inherited from QObject
- 2 protected variables inherited from QObject
Detailed Description
The QHelpSearchEngine class provides access to widgets reusable to integrate fulltext search as well as to index and search documentation.
Before the search engine can be used, one has to instantiate at least a QHelpEngineCore object that needs to be passed to the search engines constructor. This is required as the search engine needs to be connected to the help engines setupFinished() signal to know when it can start to index documentation.
After starting the indexing process the signal indexingStarted() is emitted and on the end of the indexing process the indexingFinished() is emitted. To stop the indexing one can call cancelIndexing().
While the indexing process has finished, the search engine can now be used to search thru its index for a given term. To do this one may use the possibility of creating the QHelpSearchQuery list by self or reuse the QHelpSearchQueryWidget which has the inbuild functionality to set up a proper search queries list that get's passed to the search engines search() function.
After the list of querys has been passed to the search engine, the signal searchingStarted() is emitted and after the search has finished the searchingFinished() signal is emitted. The search process can be stopped by calling cancelSearching().
If the search succeeds, the searchingFinished() will be called with the search hits count, which can be reused to fetch the search hits from the search engine. Calling the hits() function with the range of hits you would like to get will return a list of the requested SearchHits. They basically constist at the moment of a pair of strings where the values of that pair are the documentation file path and the page title.
To display the given hits use the QHelpSearchResultWidget or build up your own one if you need more advanced functionality. Note that the QHelpSearchResultWidget can not be instantiated directly, you must retrieve the widget from the search engine in use as all connections will be established for you by the widget itself.
Member Type Documentation
typedef QHelpSearchEngine::SearchHit
Typedef for QPair<QString, QString>. The values of that pair are the documentation file path and the page title.
See also hits().
Member Function Documentation
QHelpSearchEngine::QHelpSearchEngine(QHelpEngineCore *helpEngine, QObject *parent = Q_NULLPTR)
Constructs a new search engine with the given parent. The search engine uses the given helpEngine to access the documentation that needs to be indexed. The QHelpEngine's setupFinished() signal is automatically connected to the QHelpSearchEngine's indexing function, so that new documentation will be indexed after the signal is emitted.
QHelpSearchEngine::~QHelpSearchEngine()
Destructs the search engine.
[slot]
void QHelpSearchEngine::cancelIndexing()
Stops the indexing process.
[slot]
void QHelpSearchEngine::cancelSearching()
Stops the search process.
int QHelpSearchEngine::hitCount() const
Returns the amount of hits the search engine found.
This function was introduced in Qt 4.6.
QList<SearchHit> QHelpSearchEngine::hits(int start, int end) const
Returns a list of search hits within the range of start end.
[signal]
void QHelpSearchEngine::indexingFinished()
This signal is emitted when the indexing process is complete.
[signal]
void QHelpSearchEngine::indexingStarted()
This signal is emitted when indexing process is started.
QList<QHelpSearchQuery> QHelpSearchEngine::query() const
Returns the list of queries last searched for.
This function was introduced in Qt 4.5.
QHelpSearchQueryWidget *QHelpSearchEngine::queryWidget()
Returns a widget to use as input widget. Depending on your search engine configuration you will get a different widget with more or less subwidgets.
[slot]
void QHelpSearchEngine::reindexDocumentation()
Forces the search engine to reindex all documentation files.
QHelpSearchResultWidget *QHelpSearchEngine::resultWidget()
Returns a widget that can hold and display the search results.
[slot]
void QHelpSearchEngine::search(const QList<QHelpSearchQuery> &queryList)
Starts the search process using the given list of queries queryList build by the search field name and the values to search for.
[signal]
void QHelpSearchEngine::searchingFinished(int hits)
This signal is emitted when the search process is complete. The hit count is stored in hits.
[signal]
void QHelpSearchEngine::searchingStarted()
This signal is emitted when the search process is started.