Cafu Engine
GuiSys Namespace Reference

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...
 

Detailed Description

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.