This group contains all script classes related to Graphical User Interfaces (GUIs) in Cafu. More...
Classes | |
class | ComponentBaseT |
This is the base class for the components that a window is composed/aggregated of. More... | |
class | ComponentBasicsT |
This component adds the basics of the window (its name and the "is shown?" flag). More... | |
class | ComponentBorderT |
This components adds a border to its window. More... | |
class | ComponentChoiceT |
This components add the behaviour of a choice field to its window. More... | |
class | ComponentImageT |
This component adds an image to its window. More... | |
class | ComponentListBoxT |
This components turns its window into a list-box control. More... | |
class | ComponentModelT |
This component adds a 3D model to its window. More... | |
class | ComponentTextEditT |
With this component, the user can edit the text in a sibling text component. More... | |
class | ComponentTextT |
This components adds text to its window. More... | |
class | ComponentTransformT |
This component adds information about the position and size of the window. More... | |
class | GuiImplT |
This class holds the hierarchy of windows that together form a GUI. More... | |
class | WindowT |
A window is the basic element of a graphical user interface. More... | |
This group contains all script classes related to Graphical User Interfaces (GUIs) in Cafu.
Cafu GUIs are like computer desktops: They are made of a hierarchy of windows. Each window has graphical attributes and elements, it can contain text and can be interacted with. GUIs can be used both in 2D, e.g. for the game's Main Menu, as well as in 3D, e.g. for the in-game controls of a teleporter station, to call lifts, etc.
GUI scripts are used both to describe the window setup and contents, as well as to react to window events like mouse cursor movement and clicks, keyboard input, etc. In a sense, a GUI is like a mini operating system, and the GUI scripts are the means to program it.
For example GUI scripts, see the files in
GUI scripts have access to our Common libraries as well as to (most of) the Lua standard libraries.