QHelpEngineCore Class
La clase QHelpEngineCore proporciona la funcionalidad principal del sistema de ayuda. Más...
| Cabecera: | #include <QHelpEngineCore> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Help)target_link_libraries(mytarget PRIVATE Qt6::Help) |
| qmake: | QT += help |
| Hereda: | QObject |
| Heredado por: |
Propiedades
- autoSaveFilter : bool
- collectionFile : QString
(since 6.0)readOnly : bool
Funciones públicas
| 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 |
Señales
| void | setupFinished() |
| void | setupStarted() |
| void | warning(const QString &msg) |
Miembros públicos estáticos
| QVariant | metaData(const QString &documentationFileName, const QString &name) |
| QString | namespaceName(const QString &documentationFileName) |
Descripción detallada
Antes de poder utilizar el motor de ayuda, debe inicializarse llamando a setupData(). Al principio del proceso de inicialización se emite la señal setupStarted(). Desde este momento hasta que se emite la señal setupFinished(), los datos de ayuda se encuentran en un estado indefinido, es decir, inutilizables.
El núcleo del motor de ayuda puede utilizarse para realizar diferentes tareas. Llamando a documentsForIdentifier() el motor devuelve URLs que especifican las ubicaciones de los archivos dentro del sistema de ayuda. Los datos reales del archivo pueden recuperarse llamando a fileData().
El motor de ayuda puede contener cualquier número de filtros personalizados. La gestión de los filtros, incluyendo la adición de nuevos filtros, el cambio de las definiciones de los filtros, o la eliminación de los filtros existentes, se realiza a través de la clase QHelpFilterEngine, a la que se puede acceder mediante el método filterEngine().
Nota: QHelpFilterEngine sustituye a la antigua API de filtros, obsoleta desde Qt 5.13. Llama a setUsesFilterEngine() con true para activar la nueva funcionalidad.
El núcleo del motor de ayuda tiene dos modos:
- Modo de sólo lectura, en el que el archivo de colección de ayuda no se modifica a menos que se solicite explícitamente. Esto también funciona si el archivo de colección está en una ubicación de sólo lectura, y es el modo por defecto.
- Modo de escritura completa, que requiere que el archivo de la colección de ayuda pueda escribirse.
El modo puede cambiarse llamando al método setReadOnly(), antes de llamar a setupData().
El motor de ayuda también ofrece la posibilidad de establecer y leer valores de forma persistente, comparable a los archivos ini o las entradas del registro de Windows. Para más información, consulte setCustomValue() o customValue().
Esta clase no ofrece ningún componente GUI o funcionalidad para índices o contenidos. Si necesita alguna de ellas utilice QHelpEngine en su lugar.
Documentación de propiedades
autoSaveFilter : bool
Esta propiedad mantiene si QHelpEngineCore está en modo de autoguardado de filtro o no.
Si QHelpEngineCore está en modo de autoguardado de filtros, el filtro actual se guarda automáticamente cuando es cambiado por la función QHelpFilterEngine::setActiveFilter(). El filtro se guarda de forma persistente en el archivo de la colección de ayuda.
Por defecto, este modo está activado.
Funciones de acceso:
| bool | autoSaveFilter() const |
| void | setAutoSaveFilter(bool save) |
collectionFile : QString
Esta propiedad contiene el nombre de archivo absoluto del archivo de colección utilizado actualmente.
Establecer esta propiedad deja el motor de ayuda en un estado inválido. Es importante invocar setupData() o cualquier función getter para volver a configurar el motor de ayuda.
Funciones de acceso:
| QString | collectionFile() const |
| void | setCollectionFile(const QString &fileName) |
[since 6.0] readOnly : bool
Esta propiedad indica si el motor de ayuda es de sólo lectura.
En modo de sólo lectura, el usuario puede utilizar el motor de ayuda con un archivo de colección instalado en una ubicación de sólo lectura. En este caso, algunas funcionalidades no serán accesibles, como el registro de documentación adicional, la edición de filtros o cualquier acción que requiera cambios en el archivo de colección. Si se establece en false, se podrá acceder a todas las funciones del motor de ayuda.
Por defecto, esta propiedad es true.
Esta propiedad se introdujo en Qt 6.0.
Funciones de acceso:
| bool | isReadOnly() const |
| void | setReadOnly(bool enable) |
Documentación de funciones miembro
[explicit] QHelpEngineCore::QHelpEngineCore(const QString &collectionFile, QObject *parent = nullptr)
Construye un nuevo motor de ayuda del núcleo con un parent. El motor de ayuda utiliza la información almacenada en el collectionFile para proporcionar ayuda. Si el archivo de colección aún no existe, se creará.
[virtual noexcept] QHelpEngineCore::~QHelpEngineCore()
Destruye el motor de ayuda.
bool QHelpEngineCore::copyCollectionFile(const QString &fileName)
Crea el archivo fileName y copia todo el contenido del archivo de colección actual en el archivo recién creado, y devuelve true si se ha realizado correctamente; en caso contrario, devuelve false.
El proceso de copia se asegura de que las referencias a los archivos de colección de Qt (.qch) se actualicen en consecuencia.
QVariant QHelpEngineCore::customValue(const QString &key, const QVariant &defaultValue = {}) const
Devuelve el valor asignado a la key. Si la clave solicitada no existe, se devuelve la defaultValue especificada.
Véase también setCustomValue() y removeCustomValue().
QString QHelpEngineCore::documentationFileName(const QString &namespaceName)
Devuelve el nombre de archivo absoluto del archivo de ayuda comprimido Qt (.qch) identificado por namespaceName. Si no hay ningún archivo de ayuda comprimido Qt con el espacio de nombres especificado registrado, se devuelve una cadena vacía.
Véase también namespaceName().
QList<QHelpLink> QHelpEngineCore::documentsForIdentifier(const QString &id) const
Devuelve una lista de todos los enlaces de documentos encontrados para el id. El contenido de la lista devuelta depende del filtro actual, por lo que sólo se devolverán las palabras clave registradas para el filtro actual.
QList<QHelpLink> QHelpEngineCore::documentsForIdentifier(const QString &id, const QString &filterName) const
Devuelve una lista de los enlaces de documentos encontrados para el id, filtrados por filterName. El contenido de la lista devuelta depende del filtro pasado, por lo que sólo se devolverán las palabras clave registradas para este filtro. Si desea obtener todos los resultados sin filtrar, pase una cadena vacía como filterName.
QList<QHelpLink> QHelpEngineCore::documentsForKeyword(const QString &keyword) const
Devuelve una lista de todos los enlaces de documentos encontrados para el keyword. El contenido de la lista devuelta depende del filtro actual, por lo que sólo se devolverán las palabras clave registradas para el filtro actual.
QList<QHelpLink> QHelpEngineCore::documentsForKeyword(const QString &keyword, const QString &filterName) const
Devuelve una lista de los enlaces de documentos encontrados para el keyword, filtrados por filterName. El contenido de la lista devuelta depende del filtro pasado, por lo que sólo se devolverán las palabras clave registradas para este filtro. Si desea obtener todos los resultados sin filtrar, pase una cadena vacía como filterName.
QString QHelpEngineCore::error() const
Devuelve una descripción del último error que se ha producido.
QByteArray QHelpEngineCore::fileData(const QUrl &url) const
Devuelve los datos del archivo especificado por url. Si el archivo no existe, se devuelve un QByteArray vacío.
Véase también findFile().
QList<QUrl> QHelpEngineCore::files(const QString namespaceName, const QString &filterName, const QString &extensionFilter = {})
Devuelve una lista de los archivos contenidos en el archivo de ayuda comprimido de Qt para namespaceName. Los archivos pueden filtrarse por filterName así como por su extensión extensionFilter (por ejemplo, 'html').
QHelpFilterEngine *QHelpEngineCore::filterEngine() const
Devuelve el motor de filtrado asociado a este motor de ayuda. El motor de filtros permite añadir, cambiar y eliminar filtros existentes para este motor de ayuda. Para utilizar el motor también hay que llamar a setUsesFilterEngine() ajustado a true.
QUrl QHelpEngineCore::findFile(const QUrl &url) const
Devuelve la URL corregida para el url que puede referirse a un espacio de nombres diferente definido por la carpeta virtual definida como parte del url. Si la carpeta virtual coincide con el espacio de nombres del url, el método sólo comprueba si el archivo existe y devuelve el mismo url. Si la carpeta virtual no coincide con el espacio de nombres de url, intenta encontrar el espacio de nombres que mejor coincida según el filtro activo. Cuando encuentra el espacio de nombres, devuelve la URL corregida si el archivo existe, en caso contrario devuelve una URL no válida.
[static] QVariant QHelpEngineCore::metaData(const QString &documentationFileName, const QString &name)
Devuelve los metadatos del archivo de ayuda comprimido de Qt documentationFileName. Si no hay datos disponibles para name, se devuelve un QVariant() inválido. Los metadatos se definen al crear el archivo de ayuda comprimido Qt y no pueden modificarse posteriormente. Los metadatos comunes incluyen, por ejemplo, el autor de la documentación.
[static] QString QHelpEngineCore::namespaceName(const QString &documentationFileName)
Devuelve el nombre del espacio de nombres definido para el archivo de ayuda comprimido Qt (.qch) especificado por su documentationFileName. Si el archivo no es válido, se devuelve una cadena vacía.
Véase también documentationFileName().
bool QHelpEngineCore::registerDocumentation(const QString &documentationFileName)
Registra el archivo de ayuda comprimido Qt (.qch) contenido en el archivo documentationFileName. Un archivo de ayuda comprimido, identificado unívocamente por su espacio de nombres, sólo puede ser registrado una vez. Se devuelve true si el registro se ha realizado correctamente, en caso contrario false.
Véase también unregisterDocumentation() y error().
QStringList QHelpEngineCore::registeredDocumentations() const
Devuelve una lista de todos los archivos de ayuda comprimidos Qt registrados del archivo de colección actual. Los nombres devueltos son los espacios de nombres de los archivos de ayuda comprimida Qt (.qch) registrados.
bool QHelpEngineCore::removeCustomValue(const QString &key)
Elimina la dirección key de la sección de configuración del archivo de recogida. Devuelve true si el valor se ha eliminado correctamente, en caso contrario false.
Véase también customValue() y setCustomValue().
bool QHelpEngineCore::setCustomValue(const QString &key, const QVariant &value)
Guarda el value bajo el key. Si la clave ya existe, el valor será sobrescrito. Devuelve true si el valor se ha guardado correctamente, en caso contrario false.
Véase también customValue() y removeCustomValue().
void QHelpEngineCore::setUsesFilterEngine(bool uses)
Activa o desactiva la funcionalidad del nuevo motor de filtrado dentro del motor de ayuda, según el parámetro uses pasado.
Véase también usesFilterEngine() y filterEngine().
bool QHelpEngineCore::setupData()
Configura el motor de ayuda procesando la información encontrada en el fichero de colección y devuelve true si se ha realizado correctamente; en caso contrario devuelve false.
Al llamar a esta función, se obliga al motor de ayuda a inicializarse inmediatamente. La mayoría de las veces, esta función no tiene que ser llamada explícitamente porque las funciones getter que dependen de un motor de ayuda correctamente configurado lo hacen por sí mismas.
Nota: qsqlite4.dll debe desplegarse con la aplicación, ya que el sistema de ayuda utiliza el controlador sqlite al cargar las colecciones de ayuda.
[signal] void QHelpEngineCore::setupFinished()
Esta señal se emite cuando la configuración ha finalizado.
[signal] void QHelpEngineCore::setupStarted()
Esta señal se emite cuando se inicia la configuración.
bool QHelpEngineCore::unregisterDocumentation(const QString &namespaceName)
Desregistra el archivo de ayuda comprimido Qt (.qch) identificado por su namespaceName de la colección de ayuda. Devuelve true en caso de éxito, false en caso contrario.
Véase también registerDocumentation() y error().
bool QHelpEngineCore::usesFilterEngine() const
Devuelve si el motor de ayuda utiliza la nueva funcionalidad de filtro.
Véase también setUsesFilterEngine() y filterEngine().
[signal] void QHelpEngineCore::warning(const QString &msg)
Esta señal se emite cuando se produce un error no crítico. El mensaje de advertencia se almacena en msg.
© 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.