Palette d'outils

L'objet ToolPalette est semblable à un objet Toolbar, mais il peut comporter un quadrillage d'éléments classés en groupements. L'utilisateur peut masquer ou développer chaque groupement. Comme dans une barre d'outils, les éléments sont affichés sous forme d'icônes uniquement, texte uniquement ou icônes avec texte.

Il est possible de faire glisser, ou simplement activer, les éléments d'un objet ToolPalette. Par exemple, l'utilisateur peut faire glisser des objets sur un canevas pour y créer de nouveaux éléments, ou bien, il peut cliquer sur un élément pour activer une taille de plume donnée dans une application de tracé.

Ajoutez un ToolItemGroup à une palette d'outils par l'intermédiaire de la fonction membre Gtk::Container::add() de la classe de base. Comme ceci :

Gtk::ToolItemGroup* group_brushes =
  Gtk::manage(new Gtk::ToolItemGroup("Brosses"));
m_ToolPalette.add(*group_brushes);

Les éléments Gtk::ToolItem sont ensuite ajoutés au groupement. Ainsi :

Gtk::ToolButton* button = Gtk::manage(new Gtk::ToolButton(icon, "Grande"));
button->set_tooltip_text("Grande brosse);
group_brushes->insert(*button);

Vous pouvez après cela gérer le signal clicked sur l'objet ToolButton. Autre possibilité, vous pouvez autoriser le glisser-déposer de l'élément sur un autre élément graphique avec Gtk::ToolPalette::add_drag_dest(), puis en faisant appel à Gtk::ToolPalette::get_drag_item() dans le gestionnaire du signal drag_data_received de l'autre élément graphique.

Référence de ToolPalette

Référence de ToolItemGroup

Référence de ToolItem