Logo image Accueil Graphiques Arbres
Attention : site en construction.
Ce site a été mis en ligne avant d'être achevé afin de permetttre aux utilisateurs pressés de pouvoir utiliser la bibliothèque Clint.
Les informations présentes ici ne sont pas obligatoirement exhaustives et des éléments sont suceptibles d'être supprimés ou modifiés.

Les arbres

Clint est capable d'afficher un arbre quelconque en se basant sur un QStandardItemModel en utilisant le même principe que la vue QTreeView.
La racine correspond au premier item du modèle (i.e. l'item à l'index 0,0). Les autres noeuds correspondent aux enfants de ce noeud.

Voici un exemple de QStandardItemModel rempli de manière à être compatible avec les arbres de Clint :

Les arbres peuvent être de trois types :

Arbre vertical

Un arbre vertical est un arbre dont la racine se situe tout en haut et au milieu de la vue.  Les autres noeuds se positionnent en-dessous.
Un exemple d'abre vertical :

Vertical tree
Représentation d'un arbre vertical

Comme nous pouvons le voir, un arbre peut être quelconque et n'est pas forcément binaire ou équilibré.

Voici le code source permettant de générer ce type d'arbre :


Arbre horizontal

La strucuture d'un arbre horizontal est relativement semblable à celle d'un QTreeView à la dfférence que les enfants d'un noeud sont représentés sur le même niveau.

image of a horizontal tree
Représentation d'un arbre horisontal


Le rendu des items

Clint utilise un QStyledItemDelegate personnalisé afin d'afficher les items d'un arbre. Ce delegate, appelé TreeDelegate, possède six rendus prédéfinis ainsi que plusieurs méthodes permettant de définir la taille, les couleurs et les polices d'écriture.
Vous pouvez également appliquer votre propre delegate si celui-ci ne vous convient pas.

Forme des items

La forme des items est définie avec la méthode TreeDelegate::setItemShape. Voici la liste des valeurs possibles et un aperçu.

image of the Rectangle shape image of the Rounded Rectangle shape image of the Ellipse shape image of the Diamond shape
Tree::Rectangle Tree::RoundedRectangle Tree::Ellipse Tree::Diamond

Couleurs des items

Vous pouvez modifier la couleurs des items (fond, bordure et police d'écriture) ainsi que celle des liens entre les items grâce aux fonctions associées.
Clint met à disposition quelques couleurs prédéfinies en plus des couleurs prédéfinies de Qt.







Tree::Blue Tree::DarkBlue Tree::Green Tree::DarkGreen Tree::Purple Tree::DarkPruple






Tree::Orange Tree::DarkOrange Tree::Yellow Tree::DarkYellow Tree::Gray Tree::DarkGray