QTreeWidget Class
Die Klasse QTreeWidget bietet eine Baumansicht, die ein vordefiniertes Baummodell verwendet. Mehr...
Kopfzeile: | #include <QTreeWidget> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
Vererbungen: | QTreeView |
Eigenschaften
- columnCount : int
- topLevelItemCount : const int
Öffentliche Funktionen
QTreeWidget(QWidget *parent = nullptr) | |
virtual | ~QTreeWidget() |
void | addTopLevelItem(QTreeWidgetItem *item) |
void | addTopLevelItems(const QList<QTreeWidgetItem *> &items) |
void | closePersistentEditor(QTreeWidgetItem *item, int column = 0) |
int | columnCount() const |
int | currentColumn() const |
QTreeWidgetItem * | currentItem() const |
void | editItem(QTreeWidgetItem *item, int column = 0) |
QList<QTreeWidgetItem *> | findItems(const QString &text, Qt::MatchFlags flags, int column = 0) const |
QTreeWidgetItem * | headerItem() const |
QModelIndex | indexFromItem(const QTreeWidgetItem *item, int column = 0) const |
int | indexOfTopLevelItem(QTreeWidgetItem *item) const |
void | insertTopLevelItem(int index, QTreeWidgetItem *item) |
void | insertTopLevelItems(int index, const QList<QTreeWidgetItem *> &items) |
QTreeWidgetItem * | invisibleRootItem() const |
bool | isPersistentEditorOpen(QTreeWidgetItem *item, int column = 0) const |
QTreeWidgetItem * | itemAbove(const QTreeWidgetItem *item) const |
QTreeWidgetItem * | itemAt(const QPoint &p) const |
QTreeWidgetItem * | itemAt(int x, int y) const |
QTreeWidgetItem * | itemBelow(const QTreeWidgetItem *item) const |
QTreeWidgetItem * | itemFromIndex(const QModelIndex &index) const |
QWidget * | itemWidget(QTreeWidgetItem *item, int column) const |
void | openPersistentEditor(QTreeWidgetItem *item, int column = 0) |
void | removeItemWidget(QTreeWidgetItem *item, int column) |
QList<QTreeWidgetItem *> | selectedItems() const |
void | setColumnCount(int columns) |
void | setCurrentItem(QTreeWidgetItem *item) |
void | setCurrentItem(QTreeWidgetItem *item, int column) |
void | setCurrentItem(QTreeWidgetItem *item, int column, QItemSelectionModel::SelectionFlags command) |
void | setHeaderItem(QTreeWidgetItem *item) |
void | setHeaderLabel(const QString &label) |
void | setHeaderLabels(const QStringList &labels) |
void | setItemWidget(QTreeWidgetItem *item, int column, QWidget *widget) |
int | sortColumn() const |
void | sortItems(int column, Qt::SortOrder order) |
QTreeWidgetItem * | takeTopLevelItem(int index) |
QTreeWidgetItem * | topLevelItem(int index) const |
int | topLevelItemCount() const |
QRect | visualItemRect(const QTreeWidgetItem *item) const |
Reimplementierte öffentliche Funktionen
virtual void | setSelectionModel(QItemSelectionModel *selectionModel) override |
Öffentliche Slots
void | clear() |
void | collapseItem(const QTreeWidgetItem *item) |
void | expandItem(const QTreeWidgetItem *item) |
void | scrollToItem(const QTreeWidgetItem *item, QAbstractItemView::ScrollHint hint = EnsureVisible) |
Signale
void | currentItemChanged(QTreeWidgetItem *current, QTreeWidgetItem *previous) |
void | itemActivated(QTreeWidgetItem *item, int column) |
void | itemChanged(QTreeWidgetItem *item, int column) |
void | itemClicked(QTreeWidgetItem *item, int column) |
void | itemCollapsed(QTreeWidgetItem *item) |
void | itemDoubleClicked(QTreeWidgetItem *item, int column) |
void | itemEntered(QTreeWidgetItem *item, int column) |
void | itemExpanded(QTreeWidgetItem *item) |
void | itemPressed(QTreeWidgetItem *item, int column) |
void | itemSelectionChanged() |
Geschützte Funktionen
virtual bool | dropMimeData(QTreeWidgetItem *parent, int index, const QMimeData *data, Qt::DropAction action) |
virtual QMimeData * | mimeData(const QList<QTreeWidgetItem *> &items) const |
virtual QStringList | mimeTypes() const |
virtual Qt::DropActions | supportedDropActions() const |
Reimplementierte geschützte Funktionen
Detaillierte Beschreibung
Die Klasse QTreeWidget ist eine Komfortklasse, die ein Standard-Baum-Widget mit einer klassischen, auf Elementen basierenden Schnittstelle bereitstellt, ähnlich der von der Klasse QListView in Qt 3 verwendeten. Diese Klasse basiert auf der Model/View-Architektur von Qt und verwendet ein Standardmodell zur Aufnahme von Elementen, von denen jedes ein QTreeWidgetItem ist.
Entwickler, die die Flexibilität des Model/View-Frameworks nicht benötigen, können mit dieser Klasse sehr leicht einfache hierarchische Listen erstellen. Ein flexiblerer Ansatz besteht darin, ein QTreeView mit einem Standard-Elementmodell zu kombinieren. Dadurch kann die Speicherung von Daten von ihrer Darstellung getrennt werden.
In seiner einfachsten Form kann ein Baum-Widget folgendermaßen aufgebaut werden:
QTreeWidget *treeWidget = new QTreeWidget(); treeWidget->setColumnCount(1); QList<QTreeWidgetItem *> items; for (int i = 0; i < 10; ++i) items.append(new QTreeWidgetItem(static_cast<QTreeWidget *>(nullptr), QStringList(QString("item: %1").arg(i)))); treeWidget->insertTopLevelItems(0, items);
Bevor Elemente zum Tree-Widget hinzugefügt werden können, muss die Anzahl der Spalten mit setColumnCount() festgelegt werden. Dies ermöglicht es jedem Element, eine oder mehrere Beschriftungen oder andere Dekorationen zu haben. Die Anzahl der verwendeten Spalten kann mit der Funktion columnCount() ermittelt werden.
Der Baum kann eine Kopfzeile haben, die einen Abschnitt für jede Spalte des Widgets enthält. Es ist am einfachsten, die Beschriftungen für jeden Abschnitt zu erstellen, indem man eine Liste von Strings mit setHeaderLabels() angibt, aber eine benutzerdefinierte Kopfzeile kann mit QTreeWidgetItem erstellt und mit der Funktion setHeaderItem() in den Baum eingefügt werden.
Die Elemente im Baum können nach Spalten gemäß einer vordefinierten Sortierreihenfolge sortiert werden. Wenn die Sortierung aktiviert ist, kann der Benutzer die Elemente sortieren, indem er auf eine Spaltenüberschrift klickt. Die Sortierung kann durch den Aufruf von setSortingEnabled() aktiviert oder deaktiviert werden. Die Funktion isSortingEnabled() zeigt an, ob die Sortierung aktiviert ist.
Siehe auch QTreeWidgetItem, QTreeWidgetItemIterator, QTreeView und Model/View Programming.
Dokumentation der Eigenschaften
columnCount : int
Diese Eigenschaft gibt die Anzahl der im Baum-Widget angezeigten Spalten an
Standardmäßig hat diese Eigenschaft einen Wert von 1.
Zugriffsfunktionen:
int | columnCount() const |
void | setColumnCount(int columns) |
[read-only]
topLevelItemCount : const int
Diese Eigenschaft enthält die Anzahl der Elemente der obersten Ebene
Standardmäßig hat diese Eigenschaft einen Wert von 0.
Zugriffsfunktionen:
int | topLevelItemCount() const |
Siehe auch columnCount() und currentItem().
Dokumentation der Mitgliedsfunktionen
[explicit]
QTreeWidget::QTreeWidget(QWidget *parent = nullptr)
Konstruiert ein Baum-Widget mit dem angegebenen parent.
[virtual noexcept]
QTreeWidget::~QTreeWidget()
Zerstört das Baum-Widget und alle seine Elemente.
void QTreeWidget::addTopLevelItem(QTreeWidgetItem *item)
Fügt das item als oberstes Element im Widget ein.
Siehe auch insertTopLevelItem().
void QTreeWidget::addTopLevelItems(const QList<QTreeWidgetItem *> &items)
Fügt die Liste items als Top-Level-Element im Widget ein.
Siehe auch insertTopLevelItems().
[slot]
void QTreeWidget::clear()
Löscht das Tree-Widget, indem es alle seine Elemente und Auswahlen entfernt.
Hinweis: Da jedes Element aus dem Tree-Widget entfernt wird, bevor es gelöscht wird, ist der Rückgabewert von QTreeWidgetItem::treeWidget() ungültig, wenn er aus dem Destruktor eines Elements aufgerufen wird.
Siehe auch takeTopLevelItem(), topLevelItemCount(), und columnCount().
void QTreeWidget::closePersistentEditor(QTreeWidgetItem *item, int column = 0)
Schließt den persistenten Editor für den item in der angegebenen column.
Diese Funktion hat keine Auswirkung, wenn kein persistenter Editor für diese Kombination von Element und Spalte geöffnet ist.
Siehe auch openPersistentEditor() und isPersistentEditorOpen().
[slot]
void QTreeWidget::collapseItem(const QTreeWidgetItem *item)
Schließt item. Dies bewirkt, dass der Baum, der die Kinder des Elements enthält, zusammengeklappt wird.
Siehe auch expandItem(), currentItem(), itemAt(), und topLevelItem().
int QTreeWidget::currentColumn() const
Gibt die aktuelle Spalte im Tree-Widget zurück.
Siehe auch setCurrentItem() und columnCount().
QTreeWidgetItem *QTreeWidget::currentItem() const
Gibt das aktuelle Element im Tree-Widget zurück.
Siehe auch setCurrentItem() und currentItemChanged().
[signal]
void QTreeWidget::currentItemChanged(QTreeWidgetItem *current, QTreeWidgetItem *previous)
Dieses Signal wird ausgegeben, wenn sich das aktuelle Element ändert. Das aktuelle Element wird durch current angegeben, und dies ersetzt das previous aktuelle Element.
Siehe auch setCurrentItem().
[override virtual protected]
void QTreeWidget::dropEvent(QDropEvent *event)
Reimplements: QAbstractItemView::dropEvent(QDropEvent *event).
[virtual protected]
bool QTreeWidget::dropMimeData(QTreeWidgetItem *parent, int index, const QMimeData *data, Qt::DropAction action)
Verarbeitet die data, die von einer Drag&Drop-Operation geliefert wurde, die mit dem angegebenen action in dem index in dem angegebenen parent Element endete.
Die Standardimplementierung gibt true
zurück, wenn die Ablage durch Dekodierung der Mime-Daten und Einfügen in das Modell erfolgreich durchgeführt wurde; andernfalls wird false
zurückgegeben.
Siehe auch supportedDropActions().
void QTreeWidget::editItem(QTreeWidgetItem *item, int column = 0)
Beginnt mit der Bearbeitung von item in der angegebenen column, sofern sie bearbeitbar ist.
[override virtual protected]
bool QTreeWidget::event(QEvent *e)
Reimplements: QAbstractItemView::event(QEvent *Event).
[slot]
void QTreeWidget::expandItem(const QTreeWidgetItem *item)
Erweitert item. Dadurch wird der Baum, der die Kinder des Elements enthält, erweitert.
Siehe auch collapseItem(), currentItem(), itemAt(), topLevelItem(), und itemExpanded().
QList<QTreeWidgetItem *> QTreeWidget::findItems(const QString &text, Qt::MatchFlags flags, int column = 0) const
Gibt eine Liste von Elementen zurück, die mit dem angegebenen text übereinstimmen, unter Verwendung des angegebenen flags, im angegebenen column.
QTreeWidgetItem *QTreeWidget::headerItem() const
Gibt das Element zurück, das für die Kopfzeile des Tree-Widgets verwendet wird.
Siehe auch setHeaderItem().
QModelIndex QTreeWidget::indexFromItem(const QTreeWidgetItem *item, int column = 0) const
Gibt die QModelIndex zurück, die mit dem angegebenen item im angegebenen column verbunden ist.
Hinweis: In Qt-Versionen vor 5.7 nahm diese Funktion ein nichtconst
item .
Siehe auch itemFromIndex() und topLevelItem().
int QTreeWidget::indexOfTopLevelItem(QTreeWidgetItem *item) const
Gibt den Index der angegebenen obersten Ebene item zurück, oder -1, wenn das Element nicht gefunden werden kann.
Siehe auch sortItems() und topLevelItemCount().
void QTreeWidget::insertTopLevelItem(int index, QTreeWidgetItem *item)
Fügt das Element item unter index auf der obersten Ebene in der Ansicht ein.
Wenn das Element bereits an anderer Stelle eingefügt wurde, wird es nicht eingefügt.
Siehe auch addTopLevelItem() und columnCount().
void QTreeWidget::insertTopLevelItems(int index, const QList<QTreeWidgetItem *> &items)
Fügt die Liste items unter index auf der obersten Ebene in die Ansicht ein.
Elemente, die bereits an anderer Stelle eingefügt wurden, werden nicht eingefügt.
Siehe auch addTopLevelItems().
QTreeWidgetItem *QTreeWidget::invisibleRootItem() const
Gibt das unsichtbare Wurzelelement des Tree-Widgets zurück.
Das unsichtbare Wurzelelement ermöglicht den Zugriff auf die Top-Level-Elemente des Tree-Widgets über die API QTreeWidgetItem, so dass es möglich ist, Funktionen zu schreiben, die Top-Level-Elemente und ihre Kinder auf einheitliche Weise behandeln können, zum Beispiel rekursive Funktionen.
bool QTreeWidget::isPersistentEditorOpen(QTreeWidgetItem *item, int column = 0) const
Gibt zurück, ob für das Element item in der Spalte column ein persistenter Editor geöffnet ist.
Siehe auch openPersistentEditor() und closePersistentEditor().
QTreeWidgetItem *QTreeWidget::itemAbove(const QTreeWidgetItem *item) const
Gibt das Element oberhalb des angegebenen item zurück.
[signal]
void QTreeWidget::itemActivated(QTreeWidgetItem *item, int column)
Dieses Signal wird ausgegeben, wenn der Benutzer ein Element durch Einfach- oder Doppelklick (je nach Plattform, d.h. auf den QStyle::SH_ItemView_ActivateItemOnSingleClick style hint) oder durch Drücken einer speziellen Taste (z.B. Enter) aktiviert.
Das angegebene item ist das angeklickte Element, oder nullptr
, wenn kein Element angeklickt wurde. column ist die Spalte des Elements, das angeklickt wurde, oder -1, wenn kein Element angeklickt wurde.
QTreeWidgetItem *QTreeWidget::itemAt(const QPoint &p) const
Gibt einen Zeiger auf das Element an den Koordinaten p zurück. Die Koordinaten sind relativ zu viewport() des Tree Widgets.
Siehe auch visualItemRect().
QTreeWidgetItem *QTreeWidget::itemAt(int x, int y) const
Dies ist eine überladene Funktion.
Gibt einen Zeiger auf das Element an den Koordinaten (x, y) zurück. Die Koordinaten sind relativ zu viewport() des Baum-Widgets.
QTreeWidgetItem *QTreeWidget::itemBelow(const QTreeWidgetItem *item) const
Gibt das Element zurück, das sich visuell unterhalb des angegebenen item befindet.
[signal]
void QTreeWidget::itemChanged(QTreeWidgetItem *item, int column)
Dieses Signal wird ausgegeben, wenn sich der Inhalt von column im angegebenen item ändert.
[signal]
void QTreeWidget::itemClicked(QTreeWidgetItem *item, int column)
Dieses Signal wird ausgesendet, wenn der Benutzer innerhalb des Widgets klickt.
Der angegebene item ist das Element, das angeklickt wurde. column ist die Spalte des Elements, auf das geklickt wurde. Wenn kein Element angeklickt wurde, wird kein Signal ausgegeben.
[signal]
void QTreeWidget::itemCollapsed(QTreeWidgetItem *item)
Dieses Signal wird ausgegeben, wenn das angegebene item zusammengeklappt wird, so dass keines seiner Kinder mehr angezeigt wird.
Hinweis: Dieses Signal wird nicht ausgegeben, wenn ein Element seinen Zustand ändert, wenn collapseAll() aufgerufen wird.
Siehe auch QTreeWidgetItem::isExpanded(), itemExpanded(), und collapseItem().
[signal]
void QTreeWidget::itemDoubleClicked(QTreeWidgetItem *item, int column)
Dieses Signal wird ausgegeben, wenn der Benutzer innerhalb des Widgets einen Doppelklick ausführt.
Der angegebene item ist das Element, das angeklickt wurde, oder nullptr
, wenn kein Element angeklickt wurde. column ist die Spalte des Elements, auf das geklickt wurde. Wenn kein Element doppelt angeklickt wurde, wird kein Signal ausgegeben.
[signal]
void QTreeWidget::itemEntered(QTreeWidgetItem *item, int column)
Dieses Signal wird ausgegeben, wenn der Mauszeiger eine item über der angegebenen column betritt. QTreeWidget Mausverfolgung muss aktiviert sein, damit diese Funktion funktioniert.
[signal]
void QTreeWidget::itemExpanded(QTreeWidgetItem *item)
Dieses Signal wird ausgegeben, wenn das angegebene item so erweitert wird, dass alle seine Kinder angezeigt werden.
Siehe auch QTreeWidgetItem::isExpanded(), itemCollapsed(), und expandItem().
QTreeWidgetItem *QTreeWidget::itemFromIndex(const QModelIndex &index) const
Gibt einen Zeiger auf den QTreeWidgetItem zurück, der mit dem angegebenen index verbunden ist.
Siehe auch indexFromItem().
[signal]
void QTreeWidget::itemPressed(QTreeWidgetItem *item, int column)
Dieses Signal wird ausgegeben, wenn der Benutzer eine Maustaste innerhalb des Widgets drückt.
Der angegebene item ist das Element, das angeklickt wurde, oder nullptr
, wenn kein Element angeklickt wurde. column ist die Spalte des Elements, das angeklickt wurde, oder -1, wenn kein Element angeklickt wurde.
[signal]
void QTreeWidget::itemSelectionChanged()
Dieses Signal wird ausgegeben, wenn sich die Auswahl im Tree Widget ändert. Die aktuelle Auswahl kann mit selectedItems() ermittelt werden.
QWidget *QTreeWidget::itemWidget(QTreeWidgetItem *item, int column) const
Gibt das Widget zurück, das in der durch item und die angegebene column angegebenen Zelle angezeigt wird.
Siehe auch setItemWidget() und removeItemWidget().
[virtual protected]
QMimeData *QTreeWidget::mimeData(const QList<QTreeWidgetItem *> &items) const
Gibt ein Objekt zurück, das eine serialisierte Beschreibung des angegebenen items enthält. Das zur Beschreibung der Elemente verwendete Format wird von der Funktion mimeTypes() bezogen.
Wenn die Liste der Elemente leer ist, wird nullptr
anstelle einer serialisierten leeren Liste zurückgegeben.
[virtual protected]
QStringList QTreeWidget::mimeTypes() const
Gibt eine Liste von MIME-Typen zurück, die zur Beschreibung einer Liste von Treewidget-Elementen verwendet werden können.
Siehe auch mimeData().
void QTreeWidget::openPersistentEditor(QTreeWidgetItem *item, int column = 0)
Öffnet einen persistenten Editor für die item in der angegebenen column.
Siehe auch closePersistentEditor() und isPersistentEditorOpen().
void QTreeWidget::removeItemWidget(QTreeWidgetItem *item, int column)
Entfernt das im angegebenen item eingestellte Widget im angegebenen column.
Siehe auch itemWidget() und setItemWidget().
[slot]
void QTreeWidget::scrollToItem(const QTreeWidgetItem *item, QAbstractItemView::ScrollHint hint = EnsureVisible)
Stellt sicher, dass item sichtbar ist und scrollt die Ansicht, wenn nötig, mit Hilfe des angegebenen hint.
Siehe auch currentItem(), itemAt(), und topLevelItem().
QList<QTreeWidgetItem *> QTreeWidget::selectedItems() const
Gibt eine Liste aller ausgewählten, nicht ausgeblendeten Elemente zurück.
Siehe auch itemSelectionChanged().
void QTreeWidget::setCurrentItem(QTreeWidgetItem *item)
Legt das aktuelle item im Baum-Widget fest.
Wenn der Auswahlmodus nicht NoSelection ist, wird das Element auch ausgewählt.
Siehe auch currentItem() und currentItemChanged().
void QTreeWidget::setCurrentItem(QTreeWidgetItem *item, int column)
Setzt die aktuelle item im Tree Widget und die aktuelle Spalte auf column.
Siehe auch currentItem().
void QTreeWidget::setCurrentItem(QTreeWidgetItem *item, int column, QItemSelectionModel::SelectionFlags command)
Setzt die aktuelle item im Tree-Widget und die aktuelle Spalte auf column, unter Verwendung der angegebenen command.
Siehe auch currentItem().
void QTreeWidget::setHeaderItem(QTreeWidgetItem *item)
Setzt die Kopfzeile item für das Tree-Widget. Die Bezeichnung für jede Spalte in der Kopfzeile wird von der entsprechenden Bezeichnung im Eintrag geliefert.
Das Tree-Widget übernimmt das Eigentum an dem Eintrag.
Siehe auch headerItem() und setHeaderLabels().
void QTreeWidget::setHeaderLabel(const QString &label)
Dasselbe wie setHeaderLabels(QStringList(label)).
void QTreeWidget::setHeaderLabels(const QStringList &labels)
Fügt für jeden Eintrag in der Liste labels eine Spalte in der Kopfzeile hinzu und setzt die Beschriftung für jede Spalte.
Beachten Sie, dass setHeaderLabels() vorhandene Spalten nicht entfernt.
Siehe auch setHeaderItem() und setHeaderLabel().
void QTreeWidget::setItemWidget(QTreeWidgetItem *item, int column, QWidget *widget)
Legt fest, dass das angegebene widget in der Zelle angezeigt wird, die durch die angegebenen item und column angegeben ist.
Die Eigenschaft autoFillBackground des angegebenen widget muss auf true gesetzt werden, andernfalls wird der Hintergrund des Widgets transparent sein und sowohl die Modelldaten als auch das Tree-Widget-Element zeigen.
Diese Funktion sollte nur verwendet werden, um statische Inhalte anstelle eines Tree-Widget-Elements anzuzeigen. Wenn Sie benutzerdefinierte dynamische Inhalte anzeigen oder ein benutzerdefiniertes Editor-Widget implementieren möchten, verwenden Sie stattdessen QTreeView und die Unterklasse QStyledItemDelegate.
Diese Funktion kann nicht aufgerufen werden, bevor die Elementhierarchie eingerichtet wurde, d.h. QTreeWidgetItem, das widget enthalten wird, muss der Ansicht hinzugefügt worden sein, bevor widget gesetzt wird.
Hinweis: Der Baum übernimmt das Eigentum an widget.
Siehe auch itemWidget(), removeItemWidget(), und Delegate Classes.
[override virtual]
void QTreeWidget::setSelectionModel(QItemSelectionModel *selectionModel)
Reimplements: QTreeView::setSelectionModel(QItemSelectionModel *selectionModel).
int QTreeWidget::sortColumn() const
Gibt die Spalte zurück, die zum Sortieren des Inhalts des Widgets verwendet wird.
Siehe auch sortItems().
void QTreeWidget::sortItems(int column, Qt::SortOrder order)
Sortiert die Elemente im Widget im angegebenen order nach den Werten im angegebenen column.
Siehe auch sortColumn().
[virtual protected]
Qt::DropActions QTreeWidget::supportedDropActions() const
Gibt die von dieser Ansicht unterstützten Drop-Aktionen zurück.
Siehe auch Qt::DropActions.
QTreeWidgetItem *QTreeWidget::takeTopLevelItem(int index)
Entfernt das oberste Element an der angegebenen index im Baum und gibt es zurück, andernfalls gibt es nullptr
zurück;
Siehe auch insertTopLevelItem(), topLevelItem(), und topLevelItemCount().
QTreeWidgetItem *QTreeWidget::topLevelItem(int index) const
Gibt den Eintrag der obersten Ebene unter dem angegebenen index zurück, oder nullptr
, wenn der Eintrag nicht existiert.
Siehe auch topLevelItemCount() und insertTopLevelItem().
QRect QTreeWidget::visualItemRect(const QTreeWidgetItem *item) const
Gibt das Rechteck im Ansichtsfenster zurück, das von dem Element auf item eingenommen wird.
Siehe auch itemAt().
© 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.