En dépit de mon idée première de dériver de la classe gtk.Widget, ne maîtrisant pas toutes les subtilités de GTK+, je me suis rabattu sur la solution de spécialiser la classe gtk.DrawingArea.
La classe GenTree du projet Maegen illustre comment il est aisé de fabriquer ses propres widgets ! Dans cette exemple le widget n’est pas interactif et il se contente de se dessiner. C’est déjà un début.
L’interaction avec l’utilisateur se fera simplement en s’abonant aux événements et ne devrait pas poser de difficultés. Ma seule inquiètude se situe dans la capacité à s’interfacer avec les autres conteneurs GTK tels que les Aligment etc. Un widget bien élevé doit être capable d’adapter sa taille en fonction de son conteneur. Peut-on le faire avec un DrawingArea ?
Tags: gtk PyGTK+ Python