QHelpEngineCore Class

Die Klasse QHelpEngineCore bietet die Kernfunktionalität des Hilfesystems. Mehr...

Kopfzeile: #include <QHelpEngineCore>
CMake: find_package(Qt6 REQUIRED COMPONENTS Help)
target_link_libraries(mytarget PRIVATE Qt6::Help)
qmake: QT += help
Vererbt: QObject
Vererbt von:

QHelpEngine

Eigenschaften

Öffentliche Funktionen

QHelpEngineCore(const QString &collectionFile, QObject *parent = nullptr)
virtual ~QHelpEngineCore()
bool autoSaveFilter() const
QString collectionFile() const
bool copyCollectionFile(const QString &fileName)
QVariant customValue(const QString &key, const QVariant &defaultValue = {}) const
QString documentationFileName(const QString &namespaceName)
QList<QHelpLink> documentsForIdentifier(const QString &id) const
QList<QHelpLink> documentsForIdentifier(const QString &id, const QString &filterName) const
QList<QHelpLink> documentsForKeyword(const QString &keyword) const
QList<QHelpLink> documentsForKeyword(const QString &keyword, const QString &filterName) const
QString error() const
QByteArray fileData(const QUrl &url) const
QList<QUrl> files(const QString namespaceName, const QString &filterName, const QString &extensionFilter = {})
QHelpFilterEngine *filterEngine() const
QUrl findFile(const QUrl &url) const
bool isReadOnly() const
bool registerDocumentation(const QString &documentationFileName)
QStringList registeredDocumentations() const
bool removeCustomValue(const QString &key)
void setAutoSaveFilter(bool save)
void setCollectionFile(const QString &fileName)
bool setCustomValue(const QString &key, const QVariant &value)
void setReadOnly(bool enable)
void setUsesFilterEngine(bool uses)
bool setupData()
bool unregisterDocumentation(const QString &namespaceName)
bool usesFilterEngine() const

Signale

void setupFinished()
void setupStarted()
void warning(const QString &msg)

Statische öffentliche Mitglieder

QVariant metaData(const QString &documentationFileName, const QString &name)
QString namespaceName(const QString &documentationFileName)

Detaillierte Beschreibung

Bevor die Hilfe-Engine benutzt werden kann, muss sie durch den Aufruf setupData() initialisiert werden. Zu Beginn des Einrichtungsprozesses wird das Signal setupStarted() ausgegeben. Von diesem Zeitpunkt an bis zur Ausgabe des Signals setupFinished() befinden sich die Hilfedaten in einem undefinierten, d.h. unbrauchbaren Zustand.

Die Kern-Hilfe-Engine kann für verschiedene Aufgaben verwendet werden. Durch den Aufruf von documentsForIdentifier() gibt die Engine URLs zurück, die die Dateispeicherorte innerhalb des Hilfesystems angeben. Die tatsächlichen Dateidaten können dann durch den Aufruf von fileData() abgerufen werden.

Die Hilfe-Engine kann eine beliebige Anzahl von benutzerdefinierten Filtern enthalten. Die Verwaltung der Filter, einschließlich des Hinzufügens neuer Filter, des Änderns von Filterdefinitionen oder des Entfernens vorhandener Filter, erfolgt über die Klasse QHelpFilterEngine, auf die mit der Methode filterEngine() zugegriffen werden kann.

Hinweis: QHelpFilterEngine ersetzt die ältere Filter-API, die seit Qt 5.13 veraltet ist. Rufen Sie setUsesFilterEngine() mit true auf, um die neue Funktionalität zu aktivieren.

Die Kern-Hilfe-Engine hat zwei Modi:

  • Schreibgeschützter Modus, in dem die Hilfesammlungsdatei nicht verändert wird, es sei denn, sie wird explizit angefordert. Dies funktioniert auch, wenn sich die Sammlungsdatei an einem schreibgeschützten Ort befindet, und ist die Standardeinstellung.
  • Vollständig beschreibbarer Modus, bei dem die Hilfesammlungsdatei beschreibbar sein muss.

Der Modus kann durch den Aufruf der Methode setReadOnly() geändert werden, bevor setupData() aufgerufen wird.

Die Hilfe-Engine bietet auch die Möglichkeit, Werte zu setzen und zu lesen, vergleichbar mit ini-Dateien oder Windows-Registrierungseinträgen. Für weitere Informationen siehe setValue() oder value().

Diese Klasse bietet keine GUI Komponenten oder Funktionalität für Indizes oder Inhalte. Wenn Sie eine davon benötigen, verwenden Sie stattdessen QHelpEngine.

Dokumentation der Eigenschaften

autoSaveFilter : bool

Diese Eigenschaft gibt an, ob QHelpEngineCore im Modus "Filter automatisch speichern" ist oder nicht.

Wenn QHelpEngineCore im automatischen Speichermodus ist, wird der aktuelle Filter automatisch gespeichert, wenn er durch die Funktion QHelpFilterEngine::setActiveFilter() geändert wird. Der Filter wird dauerhaft in der Hilfesammlungsdatei gespeichert.

Standardmäßig ist dieser Modus eingeschaltet.

Zugriffsfunktionen:

bool autoSaveFilter() const
void setAutoSaveFilter(bool save)

collectionFile : QString

Diese Eigenschaft enthält den absoluten Dateinamen der aktuell verwendeten Sammlungsdatei.

Durch das Setzen dieser Eigenschaft wird das Hilfesystem in einen ungültigen Zustand versetzt. Es ist wichtig, setupData() oder eine beliebige Getter-Funktion aufzurufen, um die Hilfemaschine wieder einzurichten.

Zugriffsfunktionen:

QString collectionFile() const
void setCollectionFile(const QString &fileName)

[since 6.0] readOnly : bool

Diese Eigenschaft gibt an, ob die Hilfemaschine schreibgeschützt ist.

Im Nur-Lese-Modus kann der Benutzer die Hilfe-Engine mit einer Sammlungsdatei verwenden, die an einem schreibgeschützten Ort installiert ist. In diesem Fall sind einige Funktionen nicht zugänglich, wie z. B. die Registrierung zusätzlicher Dokumentation, die Bearbeitung von Filtern oder andere Aktionen, die Änderungen an der Sammlungsdatei erfordern würden. Die Einstellung false schaltet die volle Funktionalität der Hilfemaschine frei.

Standardmäßig steht diese Eigenschaft auf true.

Diese Eigenschaft wurde in Qt 6.0 eingeführt.

Zugriffsfunktionen:

bool isReadOnly() const
void setReadOnly(bool enable)

Dokumentation der Mitgliedsfunktionen

[explicit] QHelpEngineCore::QHelpEngineCore(const QString &collectionFile, QObject *parent = nullptr)

Konstruiert eine neue Kern-Hilfe-Engine mit einer parent. Die Hilfe-Engine verwendet die in der collectionFile gespeicherten Informationen, um Hilfe bereitzustellen. Wenn die Sammlungsdatei noch nicht vorhanden ist, wird sie erstellt.

[virtual noexcept] QHelpEngineCore::~QHelpEngineCore()

Zerstört die Hilfemaschine.

bool QHelpEngineCore::copyCollectionFile(const QString &fileName)

Erstellt die Datei fileName und kopiert alle Inhalte aus der aktuellen Sammlungsdatei in die neu erstellte Datei und gibt bei Erfolg true zurück; andernfalls wird false zurückgegeben.

Der Kopiervorgang sorgt dafür, dass Dateiverweise auf Qt-Sammlungsdateien (.qch) entsprechend aktualisiert werden.

QVariant QHelpEngineCore::customValue(const QString &key, const QVariant &defaultValue = {}) const

Gibt den Wert zurück, der dem key zugewiesen wurde. Wenn der angeforderte Schlüssel nicht existiert, wird der angegebene defaultValue zurückgegeben.

Siehe auch setCustomValue() und removeCustomValue().

QString QHelpEngineCore::documentationFileName(const QString &namespaceName)

Gibt den absoluten Dateinamen der komprimierten Qt-Hilfedatei (.qch) zurück, die durch namespaceName identifiziert wird. Wenn keine komprimierte Qt-Hilfedatei mit dem angegebenen Namensraum registriert ist, wird ein leerer String zurückgegeben.

Siehe auch namespaceName().

QList<QHelpLink> QHelpEngineCore::documentsForIdentifier(const QString &id) const

Gibt eine Liste aller für id gefundenen Dokumentenlinks zurück. Der Inhalt der zurückgegebenen Liste hängt vom aktuellen Filter ab, daher werden nur die für den aktuellen Filter registrierten Schlüsselwörter zurückgegeben.

QList<QHelpLink> QHelpEngineCore::documentsForIdentifier(const QString &id, const QString &filterName) const

Gibt eine Liste der für id gefundenen Dokumentenlinks zurück, gefiltert nach filterName. Der Inhalt der zurückgegebenen Liste hängt von dem übergebenen Filter ab, so dass nur die für diesen Filter registrierten Schlüsselwörter zurückgegeben werden. Wenn Sie alle Ergebnisse ungefiltert erhalten möchten, übergeben Sie einen leeren String als filterName.

QList<QHelpLink> QHelpEngineCore::documentsForKeyword(const QString &keyword) const

Gibt eine Liste aller für keyword gefundenen Dokumentenlinks zurück. Der Inhalt der zurückgegebenen Liste hängt vom aktuellen Filter ab, daher werden nur die für den aktuellen Filter registrierten Schlüsselwörter zurückgegeben.

QList<QHelpLink> QHelpEngineCore::documentsForKeyword(const QString &keyword, const QString &filterName) const

Gibt eine Liste der für keyword gefundenen Dokumentenlinks zurück, gefiltert nach filterName. Der Inhalt der zurückgegebenen Liste hängt von dem übergebenen Filter ab, so dass nur die für diesen Filter registrierten Schlüsselwörter zurückgegeben werden. Wenn Sie alle Ergebnisse ungefiltert erhalten möchten, übergeben Sie einen leeren String als filterName.

QString QHelpEngineCore::error() const

Gibt eine Beschreibung des zuletzt aufgetretenen Fehlers zurück.

QByteArray QHelpEngineCore::fileData(const QUrl &url) const

Gibt die Daten der durch url angegebenen Datei zurück. Existiert die Datei nicht, wird ein leeres QByteArray zurückgegeben.

Siehe auch findFile().

QList<QUrl> QHelpEngineCore::files(const QString namespaceName, const QString &filterName, const QString &extensionFilter = {})

Gibt eine Liste der Dateien zurück, die in der komprimierten Qt-Hilfedatei für namespaceName enthalten sind. Die Dateien können sowohl nach filterName als auch nach ihrer Erweiterung extensionFilter (z. B. 'html') gefiltert werden.

QHelpFilterEngine *QHelpEngineCore::filterEngine() const

Gibt die mit dieser Hilfe-Engine verbundene Filter-Engine zurück. Die Filter-Engine ermöglicht das Hinzufügen, Ändern und Entfernen bestehender Filter für diese Hilfe-Engine. Um die Engine zu verwenden, müssen Sie auch setUsesFilterEngine() aufrufen, das auf true gesetzt ist.

QUrl QHelpEngineCore::findFile(const QUrl &url) const

Gibt die korrigierte URL für url zurück, die sich auf einen anderen Namensraum beziehen kann, der durch den virtuellen Ordner definiert ist, der als Teil von url definiert ist. Wenn der virtuelle Ordner mit dem Namensraum von url übereinstimmt, prüft die Methode nur, ob die Datei existiert und gibt dieselbe url zurück. Wenn der virtuelle Ordner nicht mit dem Namensraum von url übereinstimmt, wird versucht, den am besten passenden Namensraum gemäß dem aktiven Filter zu finden. Wenn der Namensraum gefunden wird, wird die korrigierte URL zurückgegeben, wenn die Datei existiert, andernfalls wird eine ungültige URL zurückgegeben.

[static] QVariant QHelpEngineCore::metaData(const QString &documentationFileName, const QString &name)

Gibt die Metadaten für die komprimierte Qt Help Datei documentationFileName zurück. Wenn keine Daten für name verfügbar sind, wird eine ungültige QVariant() zurückgegeben. Die Metadaten werden bei der Erstellung der komprimierten Qt-Hilfedatei definiert und können später nicht mehr geändert werden. Übliche Metadaten sind z.B. der Autor der Dokumentation.

[static] QString QHelpEngineCore::namespaceName(const QString &documentationFileName)

Gibt den Namen des Namensraums zurück, der für die komprimierte Qt-Hilfedatei (.qch) definiert ist, die durch ihre documentationFileName angegeben ist. Wenn die Datei nicht gültig ist, wird ein leerer String zurückgegeben.

Siehe auch documentationFileName().

bool QHelpEngineCore::registerDocumentation(const QString &documentationFileName)

Registriert die komprimierte Qt-Hilfedatei (.qch), die in der Datei documentationFileName enthalten ist. Eine komprimierte Hilfedatei, die durch ihren Namespace eindeutig identifiziert wird, kann nur einmal registriert werden. True wird zurückgegeben, wenn die Registrierung erfolgreich war, andernfalls false.

Siehe auch unregisterDocumentation() und error().

QStringList QHelpEngineCore::registeredDocumentations() const

Gibt eine Liste aller registrierten komprimierten Qt-Hilfedateien der aktuellen Sammlungsdatei zurück. Die zurückgegebenen Namen sind die Namespaces der registrierten komprimierten Qt-Hilfedateien (.qch).

bool QHelpEngineCore::removeCustomValue(const QString &key)

Entfernt den Wert key aus dem Einstellungsabschnitt in der Sammlungsdatei. Gibt true zurück, wenn der Wert erfolgreich entfernt wurde, andernfalls false.

Siehe auch customValue() und setCustomValue().

bool QHelpEngineCore::setCustomValue(const QString &key, const QVariant &value)

Speichert die value unter der key. Wenn der Schlüssel bereits existiert, wird der Wert überschrieben. Gibt true zurück, wenn der Wert erfolgreich gespeichert wurde, andernfalls false.

Siehe auch customValue() und removeCustomValue().

void QHelpEngineCore::setUsesFilterEngine(bool uses)

Aktiviert oder deaktiviert die neue Filter-Engine-Funktionalität innerhalb der Hilfe-Engine, entsprechend dem übergebenen uses Parameter.

Siehe auch usesFilterEngine() und filterEngine().

bool QHelpEngineCore::setupData()

Richtet das Hilfesystem ein, indem es die in der Sammlungsdatei gefundenen Informationen verarbeitet und bei Erfolg true zurückgibt; andernfalls wird false zurückgegeben.

Durch den Aufruf der Funktion wird die Hilfemaschine gezwungen, sich sofort zu initialisieren. In den meisten Fällen muss diese Funktion nicht explizit aufgerufen werden, da Getter-Funktionen, die von einer korrekt eingerichteten Help-Engine abhängen, dies selbst tun.

Hinweis: qsqlite4.dll muss zusammen mit der Anwendung bereitgestellt werden, da das Hilfesystem beim Laden von Hilfesammlungen den Sqlite-Treiber verwendet.

[signal] void QHelpEngineCore::setupFinished()

Dieses Signal wird ausgegeben, wenn die Einrichtung abgeschlossen ist.

[signal] void QHelpEngineCore::setupStarted()

Dieses Signal wird ausgegeben, wenn die Einrichtung gestartet wird.

bool QHelpEngineCore::unregisterDocumentation(const QString &namespaceName)

Hebt die Registrierung der komprimierten Qt-Hilfedatei (.qch), die durch ihre namespaceName identifiziert wird, aus der Hilfesammlung auf. Gibt bei Erfolg true zurück, andernfalls false.

Siehe auch registerDocumentation() und error().

bool QHelpEngineCore::usesFilterEngine() const

Gibt zurück, ob die Hilfemaschine die neue Filterfunktionalität verwendet.

Siehe auch setUsesFilterEngine() und filterEngine().

[signal] void QHelpEngineCore::warning(const QString &msg)

Dieses Signal wird ausgegeben, wenn ein nicht kritischer Fehler auftritt. Die Warnmeldung wird in msg gespeichert.

© 2025 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.