QHelpSearchEngine Class
La classe QHelpSearchEngine permet d'accéder à des widgets réutilisables pour intégrer une recherche en texte intégral, ainsi que pour indexer et rechercher de la documentation. En savoir plus...
| En-tête : | #include <QHelpSearchEngine> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Help) target_link_libraries(mytarget PRIVATE Qt6::Help) |
| qmake : | QT += help |
| Hérite de : | QObject |
Fonctions publiques
| QHelpSearchEngine(QHelpEngineCore *helpEngine, QObject *parent = nullptr) | |
| virtual | ~QHelpSearchEngine() |
| QHelpSearchQueryWidget * | queryWidget() |
| QHelpSearchResultWidget * | resultWidget() |
| QString | searchInput() const |
| int | searchResultCount() const |
| QList<QHelpSearchResult> | searchResults(int start, int end) const |
Slots publics
| void | cancelIndexing() |
| void | cancelSearching() |
| void | reindexDocumentation() |
| void | search(const QString &searchInput) |
Signaux
| void | indexingFinished() |
| void | indexingStarted() |
| void | searchingFinished(int searchResultCount) |
| void | searchingStarted() |
Description détaillée
Avant de pouvoir utiliser le moteur de recherche, il faut instancier au moins un objet ` QHelpEngineCore `, qui doit être transmis au constructeur du moteur de recherche. Cette étape est obligatoire, car le moteur de recherche doit être connecté au signal `setupFinished()` des moteurs d’aide afin de savoir quand il peut commencer à indexer la documentation.
Une fois le processus d’indexation lancé, le signal ` indexingStarted()` est émis ; à la fin de ce processus, le signal ` indexingFinished()` est émis. Pour interrompre l’indexation, il est possible d’appeler la fonction ` cancelIndexing()`.
Une fois le processus d’indexation terminé, le moteur de recherche peut être utilisé pour rechercher un terme donné dans l’index à l’aide de la fonction search(). Lorsque la requête de recherche est transmise au moteur de recherche, le signal searchingStarted() est émis. À la fin de la recherche, le signal searchingFinished() est émis. Le processus de recherche peut être interrompu en appelant cancelSearching().
Si la recherche aboutit, la fonction searchingFinished() est appelée avec le nombre de résultats de recherche afin de récupérer ces derniers auprès du moteur de recherche. L’appel de la fonction searchResults() avec une plage de recherche renvoie une liste d’objets QHelpSearchResult se situant dans cette plage. Les résultats comprennent le titre et l’URL du document, ainsi qu’un extrait du document contenant la correspondance la plus pertinente par rapport à la requête de recherche.
Pour afficher les résultats de recherche obtenus, utilisez le widget « QHelpSearchResultWidget » ou créez votre propre widget si vous avez besoin de fonctionnalités plus avancées. Notez que le widget « QHelpSearchResultWidget » ne peut pas être instancié directement : vous devez le récupérer auprès du moteur de recherche utilisé, car toutes les connexions seront établies pour vous par le widget lui-même.
Documentation des fonctions membres
[explicit] QHelpSearchEngine::QHelpSearchEngine(QHelpEngineCore *helpEngine, QObject *parent = nullptr)
Crée un nouveau moteur de recherche à partir de l'parent fourni. Le moteur de recherche utilise l'helpEngine fourni pour accéder à la documentation à indexer. Le signal `setupFinished()` de l'QHelpEngine est automatiquement connecté à la fonction d'indexation du QHelpSearchEngine, de sorte que la nouvelle documentation soit indexée une fois ce signal émis.
[virtual noexcept] QHelpSearchEngine::~QHelpSearchEngine()
Détruit le moteur de recherche.
[slot] void QHelpSearchEngine::cancelIndexing()
Arrête le processus d'indexation.
[slot] void QHelpSearchEngine::cancelSearching()
Arrête le processus de recherche.
[signal] void QHelpSearchEngine::indexingFinished()
Ce signal est émis lorsque le processus d'indexation est terminé.
[signal] void QHelpSearchEngine::indexingStarted()
Ce signal est émis lorsque le processus d'indexation est lancé.
QHelpSearchQueryWidget *QHelpSearchEngine::queryWidget()
Renvoie un widget à utiliser comme widget de saisie. En fonction de la configuration de votre moteur de recherche, vous obtiendrez un widget différent, comportant plus ou moins de sous-widgets.
[slot] void QHelpSearchEngine::reindexDocumentation()
Force le moteur de recherche à réindexer tous les fichiers de documentation.
QHelpSearchResultWidget *QHelpSearchEngine::resultWidget()
Renvoie un widget capable de contenir et d'afficher les résultats de la recherche.
[slot] void QHelpSearchEngine::search(const QString &searchInput)
Lance le processus de recherche à l'aide de l'expression de recherche fournie searchInput.
L'expression peut être composée de plusieurs mots. Par défaut, le moteur de recherche renvoie la liste des documents contenant tous les mots spécifiés. L'expression peut contenir n'importe quelle combinaison des opérateurs logiques AND, OR et NOT. L'opérateur doit être écrit entièrement en majuscules, sinon il sera considéré comme faisant partie de l'expression de recherche.
Si des guillemets doubles sont utilisés pour regrouper les mots, le moteur de recherche recherchera une correspondance exacte de l'expression entre guillemets.
Pour plus d’informations sur la syntaxe des requêtes textuelles, consultez l’extension SQLite FTS5.
Remarque : ce slot est surchargé. Pour vous connecter à ce slot :
// Connect using qOverload:
connect(sender, &SenderClass::signal,
helpSearchEngine, qOverload(&QHelpSearchEngine::search));
// Or using a lambda as wrapper:
connect(sender, &SenderClass::signal,
helpSearchEngine, [receiver = helpSearchEngine](const QString &searchInput) { receiver->search(searchInput); }); QString QHelpSearchEngine::searchInput() const
Renvoie la dernière expression recherchée.
int QHelpSearchEngine::searchResultCount() const
Renvoie le nombre de résultats trouvés par le moteur de recherche.
QList<QHelpSearchResult> QHelpSearchEngine::searchResults(int start, int end) const
Renvoie une liste de résultats de recherche compris dans l'intervalle allant de l'index spécifié par start à l'index spécifié par end.
[signal] void QHelpSearchEngine::searchingFinished(int searchResultCount)
Ce signal est émis lorsque le processus de recherche est terminé. Le nombre de résultats de la recherche est stocké dans ` searchResultCount`.
[signal] void QHelpSearchEngine::searchingStarted()
Ce signal est émis lorsque le processus de recherche est lancé.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.