====== Introduction ====== NGui (pour NyuGui) est un projet de library permettant d'intégrer une interface graphique (fonctionnant sur le principe de widgets) dans une application SDL, OpenGL ou OGRE. Elle est écrite en C++ et se veut multi-lib (utilisant une classe spécifique pour toutes les opérations de rendu). ====== Widgets ====== La hiérarchie des classes est actuellement la suivante : * NWidget : classe de base pour tous les widgets pouvant être affichés par la lib * NFrame : un widget qui peut en contenir d'autres * NWindow : un NFrame disposant éventuellement d'une barre de titre, et déplassable par l'utilisateur * NButton : un widget qui réagit simplement lorsqu'on clique dessus * NEditBox : un widget dans lequel on peut entrer du texte * NComboBox : un widget qui affiche une liste déroulante. Possibilité d'éditer l'item selectionné. ====== Aide ====== J'ai besoin d'aide pour designer le système de style. Je ne sais pas comment l'écrire. Toute idée serait la bienvenue. Mes propres idées, en vrac : * Un style "de base" sera toujours disponible. * Possibilité de charger un ou plusieurs styles (fichier de config + images) qui définit un certain nombre d'apparences pouvant être utilisées pour n'importe quel widget. Une apparence peut être utilisée pour plusieurs widgets différents ? * Widgets extensibles/inextensibles ? - [[Insomniak]] : A priori, il faut d'abord définir les différents attributs que devront définir les codeurs dans les style, pour ensuite savoir comment designer ça. Pourquoi donc ne pas, dans la liste des widgets dispos, marquer les différents attributs d'affichage qu'il y aura à définir ? (Par exemple, le bouton : Hauteur du texte, police, skin relaché/skin appuyé, ect...) Il faudrait commencer par ça, non ?