|
| CGUI () |
|
| ~CGUI () |
|
void | Initialize () |
| Initializes the GUI, needs to be called before the GUI is used. More...
|
|
void | TickObjects () |
| Performs processing that should happen every frame (including sending the "Tick" event to scripts) More...
|
|
void | SendEventToAll (const CStr &EventName) |
| Sends a specified script event to every object. More...
|
|
void | Draw () |
| Displays the whole GUI. More...
|
|
void | DrawSprite (const CGUISpriteInstance &Sprite, int CellID, const float &Z, const CRect &Rect, const CRect &Clipping=CRect()) |
| Draw GUI Sprite. More...
|
|
void | DrawText (SGUIText &Text, const CColor &DefaultColor, const CPos &pos, const float &z, const CRect &clipping) |
| Draw a SGUIText object. More...
|
|
void | Destroy () |
| Clean up, call this to clean up all memory allocated within the GUI. More...
|
|
InReaction | HandleEvent (const SDL_Event_ *ev) |
| The replacement of Process(), handles an SDL_Event_. More...
|
|
void | LoadXmlFile (const VfsPath &Filename, boost::unordered_set< VfsPath > &Paths) |
| Load a GUI XML file into the GUI. More...
|
|
bool | ObjectExists (const CStr &Name) const |
| Checks if object exists and return true or false accordingly. More...
|
|
IGUIObject * | FindObjectByName (const CStr &Name) const |
| Returns the GUI object with the desired name, or NULL if no match is found,. More...
|
|
IGUIObject * | FindObjectUnderMouse () const |
| Returns the GUI object under the mouse, or NULL if none. More...
|
|
void | AddObjectType (const CStr &str, ConstructObjectFunction pFunc) |
| The GUI needs to have all object types inputted and their constructors. More...
|
|
void | UpdateResolution () |
| Update Resolution, should be called every time the resolution of the OpenGL screen has been changed, this is because it needs to re-cache all its actual sizes. More...
|
|
SGUIText | GenerateText (const CGUIString &Text, const CStrW &Font, const float &Width, const float &BufferZone, const IGUIObject *pObject=NULL) |
| Generate a SGUIText object from the inputted string. More...
|
|
JSObject * | GetScriptObject () |
| Returns the JSObject* associated with the GUI. More...
|
|
bool | IconExists (const CStr &str) const |
| Check if an icon exists. More...
|
|
SGUIIcon | GetIcon (const CStr &str) const |
| Get Icon (a copy, can never be changed) More...
|
|
bool | GetPreDefinedColor (const CStr &name, CColor &Output) |
| Get pre-defined color (if it exists) Returns false if it fails. More...
|
|
void | SetFocusedObject (IGUIObject *pObject) |
| Change focus to new object. More...
|
|
|
| NONCOPYABLE (CGUI) |
|
void | UpdateObjects () |
| Updates the object pointers, needs to be called each time an object has been added or removed. More...
|
|
void | AddObject (IGUIObject *pObject) |
| Adds an object to the GUI's object database Private, since you can only add objects through XML files. More...
|
|
IGUIObject * | ConstructObject (const CStr &str) |
| You input the name of the object type, and let's say you input "button", then it will construct a CGUIObjet* as a CButton. More...
|
|
IGUIObject * | GetFocusedObject () |
| Get Focused Object. More...
|
|
|
These does not throw! Because when reading in XML files, it won't be fatal if an error occurs, perhaps one particular object fails, but it'll still continue reading in the next.
All Error are reported with ReportParseError
|
void | Xeromyces_ReadRootObjects (XMBElement Element, CXeromyces *pFile, boost::unordered_set< VfsPath > &Paths) |
| Reads in the root element <objects> (the DOMElement). More...
|
|
void | Xeromyces_ReadRootSprites (XMBElement Element, CXeromyces *pFile) |
| Reads in the root element <sprites> (the DOMElement). More...
|
|
void | Xeromyces_ReadRootStyles (XMBElement Element, CXeromyces *pFile) |
| Reads in the root element <styles> (the DOMElement). More...
|
|
void | Xeromyces_ReadRootSetup (XMBElement Element, CXeromyces *pFile) |
| Reads in the root element <setup> (the DOMElement). More...
|
|
void | Xeromyces_ReadObject (XMBElement Element, CXeromyces *pFile, IGUIObject *pParent, const std::vector< std::pair< CStr, CStr > > &NameSubst, boost::unordered_set< VfsPath > &Paths) |
| Notice! Recursive function! More...
|
|
void | Xeromyces_ReadRepeat (XMBElement Element, CXeromyces *pFile, IGUIObject *pParent, boost::unordered_set< VfsPath > &Paths) |
| Reads in the element <repeat>, which repeats its child <object>s 'count' times, replacing the string "[n]" in its descendants' names with "[0]", "[1]", etc. More...
|
|
void | Xeromyces_ReadScript (XMBElement Element, CXeromyces *pFile, boost::unordered_set< VfsPath > &Paths) |
| Reads in the element <script> (the XMBElement) and executes the script's code. More...
|
|
void | Xeromyces_ReadSprite (XMBElement Element, CXeromyces *pFile) |
| Reads in the element <sprite> (the XMBElement) and stores the result in a new CGUISprite. More...
|
|
void | Xeromyces_ReadImage (XMBElement Element, CXeromyces *pFile, CGUISprite &parent) |
| Reads in the element <image> (the XMBElement) and stores the result within the CGUISprite. More...
|
|
void | Xeromyces_ReadEffects (XMBElement Element, CXeromyces *pFile, SGUIImageEffects &effects) |
| Reads in the element <effect> (the XMBElement) and stores the result within the SGUIImageEffects. More...
|
|
void | Xeromyces_ReadStyle (XMBElement Element, CXeromyces *pFile) |
| Reads in the element <style> (the XMBElement) and stores the result in m_Styles. More...
|
|
void | Xeromyces_ReadScrollBarStyle (XMBElement Element, CXeromyces *pFile) |
| Reads in the element <scrollbar> (the XMBElement) and stores the result in m_ScrollBarStyles. More...
|
|
void | Xeromyces_ReadIcon (XMBElement Element, CXeromyces *pFile) |
| Reads in the element <icon> (the XMBElement) and stores the result in m_Icons. More...
|
|
void | Xeromyces_ReadTooltip (XMBElement Element, CXeromyces *pFile) |
| Reads in the element <tooltip> (the XMBElement) and stores the result as an object with the name __tooltip_#. More...
|
|
void | Xeromyces_ReadColor (XMBElement Element, CXeromyces *pFile) |
| Reads in the element <color> (the XMBElement) and stores the result in m_PreDefinedColors. More...
|
|
|
|
JSObject * | m_ScriptObject |
| An JSObject* under which all GUI JavaScript things will be created, so that they can be garbage-collected when the GUI shuts down. More...
|
|
CPos | m_MousePos |
| don't want to pass this around with the ChooseMouseOverAndClosest broadcast - we'd need to pack this and pNearest in a struct More...
|
|
unsigned int | m_MouseButtons |
| Indicates which buttons are pressed (bit 0 = LMB, bit 1 = RMB, bit 2 = MMB) More...
|
|
GUITooltip | m_Tooltip |
|
std::map< CStr, CColor > | m_PreDefinedColors |
| This is a bank of custom colors, it is simply a look up table that will return a color object when someone inputs the name of that color. More...
|
|
|
IGUIObject * | m_BaseObject |
| Base Object, all its children are considered parentless because this is not a real object per se. More...
|
|
IGUIObject * | m_FocusedObject |
| Focused object! Say an input box that is selected. More...
|
|
map_pObjects | m_pAllObjects |
| Just pointers for fast name access, each object is really constructed within its parent for easy recursive management. More...
|
|
int | m_InternalNameNumber |
| Number of object that has been given name automatically. More...
|
|
std::map< CStr,
ConstructObjectFunction > | m_ObjectTypes |
| Function pointers to functions that constructs IGUIObjects by name... More...
|
|
std::map< CStr, std::vector
< IGUIObject * > > | m_HotkeyObjects |
| Map from hotkey names to objects that listen to the hotkey. More...
|
|
std::map< CStr, CGUISprite > | m_Sprites |
|
std::map< CStr, SGUIStyle > | m_Styles |
|
std::map< CStr,
SGUIScrollBarStyle > | m_ScrollBarStyles |
|
std::map< CStr, SGUIIcon > | m_Icons |
|
The main object that represents a whole GUI page.
No interfacial functions throws.
Definition at line 97 of file CGUI.h.
SGUIText CGUI::GenerateText |
( |
const CGUIString & |
Text, |
|
|
const CStrW & |
Font, |
|
|
const float & |
Width, |
|
|
const float & |
BufferZone, |
|
|
const IGUIObject * |
pObject = NULL |
|
) |
| |
Generate a SGUIText object from the inputted string.
The function will break down the string and its tags to calculate exactly which rendering queries will be sent to the Renderer. Also, horizontal alignment is taken into acount in this method but NOT vertical alignment.
Done through the CGUI since it can communicate with
- Parameters
-
Text | Text to generate SGUIText object from |
Font | Default font, notice both Default color and default font can be changed by tags. |
Width | Width, 0 if no word-wrapping. |
BufferZone | space between text and edge, and space between text and images. |
pObject | Optional parameter for error output. Used only if error parsing fails, and we need to be able to output which object the error occured in to aid the user. |
Definition at line 644 of file CGUI.cpp.
void CGUI::Xeromyces_ReadObject |
( |
XMBElement |
Element, |
|
|
CXeromyces * |
pFile, |
|
|
IGUIObject * |
pParent, |
|
|
const std::vector< std::pair< CStr, CStr > > & |
NameSubst, |
|
|
boost::unordered_set< VfsPath > & |
Paths |
|
) |
| |
|
private |
Notice! Recursive function!
Read in an <object> (the XMBElement) and stores it as a child in the pParent.
It will also check the object's children and call this function on them too. Also it will call all other functions that reads in other stuff that can be found within an object. Check the tree in the beginning of this class' Xeromyces_* section.
- Parameters
-
Element | The Xeromyces object that represents the object-tag. |
pFile | The Xeromyces object for the file being read |
pParent | Parent to add this object as child in. |
NameSubst | A set of substitution strings that will be applied to all object names within this object. |
Paths | Output set of file paths that this GUI object relies on. |
- See Also
- LoadXmlFile()
Definition at line 1150 of file CGUI.cpp.