GUI

aus ZFXCE, der freien Wissensdatenbank

Inhaltsverzeichnis

Grundlegendes

Das GUI-Modul (Graphical User Interface) stellt grafische Bedienelemente über die ZFXCE dar. So kann man Ingame-GUI-Steuerelemente mittels des ZFXCE-Renderers darstellen lassen.

Grundlegende Ideen

Idee

Das GUI System benötigt zum Darstellen eigener Elemente einen SceneGraphen als Parent-System. Der Scenegraph kapselt dabei die Darstellung der GUI-Elemente. Hierfür gibt es einen speziellen Scenenode: ceGUISceneNode.

Struktur

Jedes GUI-Element kann beliebig viele Child-GUI-Elemente zugewiesen bekommen, so dass man komplexere Controls und Dialoga aus den vorhandenen GUI-Elementen aufbauen kann. Das GUI-System hängt dise ähnlich dem Scenegraph in einen Rootnode ein. So lassen sich beliebig komplexe GUI-Controls relativ einfach zusammenbauen:

- GUI-Root

 - GUI-Window
   - GUI-Textedit
   - GUI-Button1
   - GUI-Button2

Um die GUI-Controls korrekt darstellen zu können, muss man den Root des eigens definierten Controles einem GUINode im Scenegraphen zuweisen, dieser kümmert sich dann um die korrekte Darstellung der ganzen Elemente.

Interaktionen

Um Interaktionen mit der User zu ermöglichen, benutzt das GUI-System Controller. Mausinteraktionen werden durch den Cursor-Controller abgesteuert. Hier werden auch alle Funktoren zur Eventberarbeitung der Maus-Events registriert (ToDo: Schnittstelle zu Registrieren benutzerdefinierter bzw. skriptbasierter Controller).

Umgang mit Layouts

Um GUI-Elementen ein einheitliches Aussehen zu geben, kann man Layouts definieren. Diese beschreiben Farbgebung, Skins, benutze Texturen sowie alles erdenkbare, um das Verhalten der GUI-Elemente beschreiben zu können. Der Layoutmanager verwaltet eigegebene Layouts un kann sie ggf. auch wieder entfernen.

ToDo

Feature Status About
Picking 40% Picking von eigenen GUI-Elementen
GUI-Window Element 0% Erstellung eines Windows
GUI-Button Element 0% Erstellung eines Buttons
Layout-Element 0% Layout-Definition

Andere Sprachen

'Persönliche Werkzeuge
ZFXC-Engine