- Qt 6.12
- Qt Virtual Keyboard
- C++ Classes
- QVirtualKeyboardDictionaryManager
- Qt Virtual Keyboard | Commercial or GPLv3

# QVirtualKeyboardDictionaryManager Class

Dictionary management for application-defined dictionaries. More...

Header: | `#include <QVirtualKeyboardDictionaryManager>`
CMake: | `find_package(Qt6 REQUIRED COMPONENTS VirtualKeyboard)` `target_link_libraries(mytarget PRIVATE Qt6::VirtualKeyboard)`
qmake: | `QT += virtualkeyboard`
Inherits: | QObject

- List of all members, including inherited members

## Properties

- activeDictionaries : QStringList
- availableDictionaries : QStringList
- baseDictionaries : QStringList
- extraDictionaries : QStringList

## Public Functions

QStringList | activeDictionaries() const
QStringList | availableDictionaries() const
QStringList | baseDictionaries() const
QVirtualKeyboardDictionary * | createDictionary(const QString &name)
QVirtualKeyboardDictionary * | dictionary(const QString &name) const
QStringList | extraDictionaries() const
void | setBaseDictionaries(const QStringList &baseDictionaries)
void | setExtraDictionaries(const QStringList &extraDictionaries)

## Signals

void | activeDictionariesChanged()
void | availableDictionariesChanged()
void | baseDictionariesChanged()
void | extraDictionariesChanged()

## Static Public Members

QVirtualKeyboardDictionaryManager * | instance()

## Detailed Description

This class allows you to manage dictionaries for virtual keyboard input methods. Dictionaries are application-defined and can be activated in the desired context.

Note: Dictionaries do not refer to the built-in dictionaries of the input method, but to the application's own dictionaries (for example, a phonebook application).

The following operations are supported by the dictionary manager:

- Create dictionaries using the `createDictionary()` function.
- Add or modify content of the dictionary instance.
- Activate dictionaries by adding them to the list of base dictionaries or extra dictionaries.

To activate dictionaries from QML, use the VirtualKeyboard attached type.

## Property Documentation

### `[read-only]` activeDictionaries : QStringList

This property holds the list of currently active dictionaries.

This property holds the list of active dictionaries, which is a combination of unique names included in baseDictionaries and extraDictionaries.

Access functions:

QStringList | activeDictionaries() const

Notifier signal:

void | activeDictionariesChanged()

### `[read-only]` availableDictionaries : QStringList

This property holds the list of all dictionaries.

This property holds the names of all existing dictionaries.

Access functions:

QStringList | availableDictionaries() const

Notifier signal:

void | availableDictionariesChanged()

### baseDictionaries : QStringList

This property holds the list of currently active base dictionaries.

This property holds the names of base dictionaries. The application manages this property.

Access functions:

QStringList | baseDictionaries() const
void | setBaseDictionaries(const QStringList &baseDictionaries)

Notifier signal:

void | baseDictionariesChanged()

### extraDictionaries : QStringList

This property holds the list of currently active extra dictionaries.

This property holds the names of extra dictionaries. The application manages this property.

Access functions:

QStringList | extraDictionaries() const
void | setExtraDictionaries(const QStringList &extraDictionaries)

Notifier signal:

void | extraDictionariesChanged()

## Member Function Documentation

### QVirtualKeyboardDictionary *QVirtualKeyboardDictionaryManager::createDictionary(const QString &name)

Create a dictionary with the given name or return the dictionary if it already exists.

The dictionary instance is owned by the dictionary manager and must not be destroyed manually. To free memory allocated for the dictionary, the application may reset the contents of the dictionary.

See also dictionary().

### QVirtualKeyboardDictionary *QVirtualKeyboardDictionaryManager::dictionary(const QString &name) const

Returns an existing dictionary with the given name if it exists, otherwise returns `nullptr`.

See also createDictionary().

### `[static]` QVirtualKeyboardDictionaryManager *QVirtualKeyboardDictionaryManager::instance()

Returns the singleton instance of the QVirtualKeyboardDictionaryManager.

All the functionalities must be called from the main thread.