Crazy Eddie's GUI System
0.8.4
|
The System class is the CEGUI class that provides access to all other elements in this system. More...
Public Member Functions | |
Renderer * | getRenderer (void) const |
Return a pointer to the Renderer object being used by the system. More... | |
Clipboard * | getClipboard () const |
Retrieves internal CEGUI clipboard, optionally synced with system wide clipboard. | |
GUIContext & | getDefaultGUIContext () const |
void | renderAllGUIContexts () |
Depending upon the internal state, for each GUIContext this may either re-use cached rendering from last time or trigger a full re-draw of all elements. | |
ScriptModule * | getScriptingModule (void) const |
Return a pointer to the ScriptModule being used for scripting within the GUI system. More... | |
void | setScriptingModule (ScriptModule *scriptModule) |
Set the ScriptModule to be used for scripting within the GUI system. More... | |
ResourceProvider * | getResourceProvider (void) const |
Return a pointer to the ResourceProvider being used within the GUI system. More... | |
void | executeScriptFile (const String &filename, const String &resourceGroup="") const |
Execute a script file if possible. More... | |
int | executeScriptGlobal (const String &function_name) const |
Execute a scripted global function if possible. The function should not take any parameters and should return an integer. More... | |
void | executeScriptString (const String &str) const |
If possible, execute script code contained in the given CEGUI::String object. More... | |
void | setXMLParser (const String &parserName) |
Set a new XML parser module to be used. More... | |
void | setXMLParser (XMLParser *parser) |
Sets the XMLParser object to be used by the system. More... | |
XMLParser * | getXMLParser (void) const |
Return the XMLParser object. | |
ImageCodec & | getImageCodec () const |
Retrieve the image codec to be used by the system. | |
void | setImageCodec (const String &codecName) |
Set the image codec to be used by the system. | |
void | setImageCodec (ImageCodec &codec) |
Set the image codec to use from an existing image codec. More... | |
void | notifyDisplaySizeChanged (const Sizef &new_size) |
Notification function to be called when the main display changes size. Client code should call this function when the host window changes size, or if the display resolution is changed in full-screen mode. More... | |
RenderedStringParser * | getDefaultCustomRenderedStringParser () const |
Return pointer to the currently set global default custom RenderedStringParser object. More... | |
void | setDefaultCustomRenderedStringParser (RenderedStringParser *parser) |
Set the global default custom RenderedStringParser object. This change is reflected the next time an affected window reparses it's text. This may be set to 0 for no system wide custom parser (which is the default). More... | |
void | invalidateAllCachedRendering () |
Invalidate all imagery and geometry caches for CEGUI managed elements. More... | |
RegexMatcher * | createRegexMatcher () const |
Create a RegexMatcher instance if support is available. More... | |
void | destroyRegexMatcher (RegexMatcher *rm) const |
destroy a RegexMatcher instance returned by System::createRegexMatcher. | |
bool | injectTimePulse (float timeElapsed) |
call this to ensure system-level time based updates occur. | |
GUIContext & | createGUIContext (RenderTarget &rt) |
void | destroyGUIContext (GUIContext &context) |
void | addStandardWindowFactories () |
adds factories for all the basic window types More... | |
Public Member Functions inherited from CEGUI::EventSet | |
EventSet () | |
Constructor for EventSet objects. | |
virtual | ~EventSet (void) |
Destructor for EventSet objects. | |
void | addEvent (const String &name) |
Creates a new Event object with the given name and adds it to the EventSet. More... | |
void | addEvent (Event &event) |
Adds the given Event object to the EventSet. Ownership of the object passes to EventSet and it will be deleted when it is removed from the EventSet - whether explicitly via removeEvent or when the EventSet is destroyed. More... | |
void | removeEvent (const String &name) |
Removes the Event with the given name. All connections to the event are disconnected, and the underlying Event object is destroyed. More... | |
void | removeEvent (Event &event) |
Removes the given event from the EventSet. All connections to the event are disconnected, and the event object is destroyed. More... | |
void | removeAllEvents (void) |
Remove all Event objects from the EventSet. Add connections will be disconnected, and all Event objects destroyed. | |
bool | isEventPresent (const String &name) |
Checks to see if an Event with the given name is present in this EventSet. More... | |
virtual Event::Connection | subscribeEvent (const String &name, Event::Subscriber subscriber) |
Subscribes a handler to the named Event. If the named Event is not yet present in the EventSet, it is created and added. More... | |
virtual Event::Connection | subscribeEvent (const String &name, Event::Group group, Event::Subscriber subscriber) |
Subscribes a handler to the specified group of the named Event. If the named Event is not yet present in the EventSet, it is created and added. More... | |
template<typename Arg1 , typename Arg2 > | |
Event::Connection | subscribeEvent (const String &name, Arg1 arg1, Arg2 arg2) |
Subscribes a handler to the named Event. If the named Event is not yet present in the EventSet, it is created and added. More... | |
template<typename Arg1 , typename Arg2 > | |
Event::Connection | subscribeEvent (const String &name, Event::Group group, Arg1 arg1, Arg2 arg2) |
Subscribes a handler to the named Event. If the named Event is not yet present in the EventSet, it is created and added. More... | |
virtual Event::Connection | subscribeScriptedEvent (const String &name, const String &subscriber_name) |
Subscribes the named Event to a scripted funtion. More... | |
virtual Event::Connection | subscribeScriptedEvent (const String &name, Event::Group group, const String &subscriber_name) |
Subscribes the specified group of the named Event to a scripted funtion. More... | |
virtual void | fireEvent (const String &name, EventArgs &args, const String &eventNamespace="") |
Fires the named event passing the given EventArgs object. More... | |
bool | isMuted (void) const |
Return whether the EventSet is muted or not. More... | |
void | setMutedState (bool setting) |
Set the mute state for this EventSet. More... | |
Event * | getEventObject (const String &name, bool autoAdd=false) |
Return a pointer to the Event object with the given name, optionally adding such an Event object to the EventSet if it does not already exist. More... | |
EventIterator | getEventIterator (void) const |
Return a EventSet::EventIterator object to iterate over the events currently added to the EventSet. | |
Static Public Member Functions | |
static System & | create (Renderer &renderer, ResourceProvider *resourceProvider=0, XMLParser *xmlParser=0, ImageCodec *imageCodec=0, ScriptModule *scriptModule=0, const String &configFile="", const String &logFile="CEGUI.log", const int abi=CEGUI_VERSION_ABI) |
Create the System object and return a reference to it. More... | |
static void | destroy () |
Destroy the System object. | |
static unsigned int | getMajorVersion () |
Retrieves CEGUI's major version as an integer. More... | |
static unsigned int | getMinorVersion () |
Retrieves CEGUI's minor version as an integer. More... | |
static unsigned int | getPatchVersion () |
Retrieves CEGUI's patch version as an integer. More... | |
static const String & | getVersion () |
Retrieves CEGUI's "short" version ("1.2.3" for example) More... | |
static const String & | getVerboseVersion () |
Retrieves CEGUI's "verbose" version, includes info about compiler, platform, etc... More... | |
static System & | getSingleton (void) |
Return singleton System object. More... | |
static System * | getSingletonPtr (void) |
Return pointer to singleton System object. More... | |
static void | setDefaultXMLParserName (const String &parserName) |
Static member to set the name of the default XML parser module that should be used. More... | |
static const String | getDefaultXMLParserName () |
Return the name of the currently set default xml parser module. More... | |
static void | setDefaultImageCodecName (const String &codecName) |
Set the name of the default image codec to be used. | |
static const String & | getDefaultImageCodecName () |
Get the name of the default image codec. | |
static const StringTranscoder & | getStringTranscoder () |
Return the system StringTranscoder object. | |
static void | performVersionTest (const int expected, const int received, const String &func) |
Internal CEGUI version validation function. | |
Static Public Member Functions inherited from CEGUI::Singleton< System > | |
static System & | getSingleton (void) |
static System * | getSingletonPtr (void) |
Static Public Attributes | |
static const String | EventNamespace |
Namespace for global events. | |
static const String | EventDisplaySizeChanged |
static const String | EventRenderedStringParserChanged |
Protected Types | |
typedef std::vector < GUIContext *CEGUI_VECTOR_ALLOC(GUIContext *)> | GUIContextCollection |
Protected Types inherited from CEGUI::EventSet | |
typedef std::map< String, Event *, StringFastLessCompare CEGUI_MAP_ALLOC(String, Event *)> | EventMap |
Protected Member Functions | |
System (Renderer &renderer, ResourceProvider *resourceProvider, XMLParser *xmlParser, ImageCodec *imageCodec, ScriptModule *scriptModule, const String &configFile, const String &logFile) | |
Construct a new System object. More... | |
~System (void) | |
Destructor for System objects. | |
void | outputLogHeader () |
output the standard log header | |
void | createSingletons () |
create the other core system singleton objects (except the logger) | |
void | destroySingletons () |
cleanup the core system singleton objects | |
void | setupXMLParser () |
handle creation and initialisation of the XML parser. | |
void | cleanupXMLParser () |
handle cleanup of the XML parser | |
void | setupImageCodec (const String &codecName) |
setup image codec | |
void | cleanupImageCodec () |
cleanup image codec | |
void | invalidateAllWindows () |
invalidate all windows and any rendering surfaces they may be using. | |
Protected Member Functions inherited from CEGUI::EventSet | |
void | fireEvent_impl (const String &name, EventArgs &args) |
Implementation event firing member. | |
ScriptModule * | getScriptModule () const |
Helper to return the script module pointer or throw. | |
EventSet (EventSet &) | |
EventSet & | operator= (EventSet &) |
Protected Attributes | |
Renderer * | d_renderer |
Holds the pointer to the Renderer object given to us in the constructor. | |
ResourceProvider * | d_resourceProvider |
Holds the pointer to the ResourceProvider object given to us by the renderer or the System constructor. | |
bool | d_ourResourceProvider |
Clipboard * | d_clipboard |
Internal clipboard with optional sync with native clipboard. | |
ScriptModule * | d_scriptModule |
Points to the scripting support module. | |
String | d_termScriptName |
Name of the script to run upon system shutdown. | |
XMLParser * | d_xmlParser |
XMLParser object we use to process xml files. | |
bool | d_ourXmlParser |
true when we created the xml parser. | |
DynamicModule * | d_parserModule |
ImageCodec * | d_imageCodec |
Holds a pointer to the image codec to use. | |
bool | d_ourImageCodec |
true when we created the image codec. | |
DynamicModule * | d_imageCodecModule |
bool | d_ourLogger |
true when we created the CEGUI::Logger based object. | |
RenderedStringParser * | d_customRenderedStringParser |
currently set global RenderedStringParser. | |
GUIContextCollection | d_guiContexts |
Protected Attributes inherited from CEGUI::EventSet | |
EventMap | d_events |
bool | d_muted |
true if events for this EventSet have been muted. | |
Static Protected Attributes | |
static String | d_defaultXMLParserName |
pointer to parser module. More... | |
static String | d_defaultImageCodecName |
Holds the name of the default codec to use. | |
static const IconvStringTranscoder | d_stringTranscoder |
instance of class that can convert string encodings | |
Static Protected Attributes inherited from CEGUI::Singleton< System > | |
static System * | ms_Singleton |
Additional Inherited Members | |
Public Types inherited from CEGUI::EventSet | |
typedef ConstMapIterator < EventMap > | EventIterator |
The System class is the CEGUI class that provides access to all other elements in this system.
This object must be created by the client application. The System object requires that you pass it an initialised Renderer object which it can use to interface to whatever rendering system will be used to display the GUI imagery.
|
protected |
Construct a new System object.
renderer | Reference to a valid Renderer object that will be used to render GUI imagery. |
resourceProvider | Pointer to a ResourceProvider object, or NULL to use whichever default the Renderer provides. |
xmlParser | Pointer to a valid XMLParser object to be used when parsing XML files, or NULL to use a default parser. |
imageCodec | Pointer to a valid ImageCodec object to be used when loading image files, or NULL to use a default image codec. |
scriptModule | Pointer to a ScriptModule object. may be NULL for none. |
configFile | String object containing the name of a configuration file to use. |
logFile | String object containing the name to use for the log file. |
void CEGUI::System::addStandardWindowFactories | ( | ) |
adds factories for all the basic window types
You do not need to call this manually! Standard Window factories will be added automatically. One occasion when you will need this is if you remove all window factories from WindowFactoryManager and want to add the standard ones back
|
static |
Create the System object and return a reference to it.
renderer | Reference to a valid Renderer object that will be used to render GUI imagery. |
resourceProvider | Pointer to a ResourceProvider object, or NULL to use whichever default the Renderer provides. |
xmlParser | Pointer to a valid XMLParser object to be used when parsing XML files, or NULL to use a default parser. |
imageCodec | Pointer to a valid ImageCodec object to be used when loading image files, or NULL to use a default image codec. |
scriptModule | Pointer to a ScriptModule object. may be NULL for none. |
configFile | String object containing the name of a configuration file to use. |
logFile | String object containing the name to use for the log file. |
abi | This must be set to CEGUI_VERSION_ABI |
RegexMatcher* CEGUI::System::createRegexMatcher | ( | ) | const |
Create a RegexMatcher instance if support is available.
void CEGUI::System::executeScriptFile | ( | const String & | filename, |
const String & | resourceGroup = "" |
||
) | const |
Execute a script file if possible.
filename | String object holding the filename of the script file that is to be executed |
resourceGroup | Resource group identifier to be passed to the ResourceProvider when loading the script file. |
int CEGUI::System::executeScriptGlobal | ( | const String & | function_name | ) | const |
Execute a scripted global function if possible. The function should not take any parameters and should return an integer.
function_name | String object holding the name of the function, in the global script environment, that is to be executed. |
void CEGUI::System::executeScriptString | ( | const String & | str | ) | const |
If possible, execute script code contained in the given CEGUI::String object.
str | String object holding the valid script code that should be executed. |
RenderedStringParser* CEGUI::System::getDefaultCustomRenderedStringParser | ( | ) | const |
Return pointer to the currently set global default custom RenderedStringParser object.
The returned RenderedStringParser is used for all windows that have parsing enabled and no custom RenderedStringParser set on the window itself.
If this global custom RenderedStringParser is set to 0, then all windows with parsing enabled and no custom RenderedStringParser set on the window itself will use the systems BasicRenderedStringParser.
|
static |
Return the name of the currently set default xml parser module.
|
static |
Retrieves CEGUI's major version as an integer.
|
static |
Retrieves CEGUI's minor version as an integer.
|
static |
Retrieves CEGUI's patch version as an integer.
|
inline |
ResourceProvider* CEGUI::System::getResourceProvider | ( | void | ) | const |
Return a pointer to the ResourceProvider being used within the GUI system.
Referenced by CEGUI::NamedXMLResourceManager< T, U >::createAll().
ScriptModule* CEGUI::System::getScriptingModule | ( | void | ) | const |
Return a pointer to the ScriptModule being used for scripting within the GUI system.
|
static |
Return singleton System object.
Referenced by CEGUI::NamedXMLResourceManager< T, U >::createAll(), and CEGUI::IrrlichtEventPusher::OnMouse().
|
static |
|
static |
Retrieves CEGUI's "verbose" version, includes info about compiler, platform, etc...
|
static |
Retrieves CEGUI's "short" version ("1.2.3" for example)
void CEGUI::System::invalidateAllCachedRendering | ( | ) |
Invalidate all imagery and geometry caches for CEGUI managed elements.
This function will invalidate the caches used for both imagery and geometry for all content that is managed by the core CEGUI manager objects, causing a full and total redraw of that content. This includes Window object's cached geometry, rendering surfaces and rendering windows and the mouse pointer geometry.
void CEGUI::System::notifyDisplaySizeChanged | ( | const Sizef & | new_size | ) |
Notification function to be called when the main display changes size. Client code should call this function when the host window changes size, or if the display resolution is changed in full-screen mode.
Calling this function ensures that any other parts of the system that need to know about display size changes are notified. This affects things such as the MouseCursor default constraint area, and also the auto-scale functioning of Imagesets and Fonts.
new_size | Size object describing the new display size in pixels. |
void CEGUI::System::setDefaultCustomRenderedStringParser | ( | RenderedStringParser * | parser | ) |
Set the global default custom RenderedStringParser object. This change is reflected the next time an affected window reparses it's text. This may be set to 0 for no system wide custom parser (which is the default).
The set RenderedStringParser is used for all windows that have parsing enabled and no custom RenderedStringParser set on the window itself.
If this global custom RenderedStringParser is set to 0, then all windows with parsing enabled and no custom RenderedStringParser set on the window itself will use the systems BasicRenderedStringParser.
|
static |
Static member to set the name of the default XML parser module that should be used.
If you want to modify the default parser from the one compiled in, you need to call this static member prior to instantiating the main CEGUI::System object. Note that calling this member to change the name of the default module after CEGUI::System, and therefore the default xml parser, has been created will have no real effect - the default parser name will be updated, though no actual changes to the xml parser module will occur. The built-in options for this are: - XercesParser - ExpatParser - LibxmlParser - TinyXMLParser Whether these are actually available, depends upon how you built the system. If you have some custom parser, you can provide the name of that here to have it used as the default, though note that the final filename of the parser module should be of the form: [prefix]CEGUI[parserName][suffix] where: - [prefix] is some optional prefix; like 'lib' on linux. - CEGUI is a required prefix. - [parserName] is the name of the parser, as supplied to this function. - [suffix] is the filename suffix, like .dll or .so Final module filenames are, thus, of the form: - CEGUIXercesParser.dll - libCEGUIXercesParser.so
parserName | String describing the name of the xml parser module to be used as the default. |
void CEGUI::System::setImageCodec | ( | ImageCodec & | codec | ) |
Set the image codec to use from an existing image codec.
In this case the renderer does not take the ownership of the image codec object.
codec | The ImageCodec object to be used. |
void CEGUI::System::setScriptingModule | ( | ScriptModule * | scriptModule | ) |
Set the ScriptModule to be used for scripting within the GUI system.
scriptModule | Pointer to a ScriptModule based object, or 0 for none (be careful!) |
void CEGUI::System::setXMLParser | ( | const String & | parserName | ) |
Set a new XML parser module to be used.
The current XMLParser will be cleaned up and, if owned by the system, also deleted, as will any dynamically loaded module associated with the XMLParser object. The newly created XMLParser object, and the associated module will be owned by the system.
parserName | String object describing the name of the XML parser module to be used. |
void CEGUI::System::setXMLParser | ( | XMLParser * | parser | ) |
Sets the XMLParser object to be used by the system.
The current XMLParser will be cleaned up and, if owned by the system, also deleted, as will any dynamically loaded module associated with the XMLParser object. If the argument passed in the \a parser parameter is 0, the system will cleanup any existing parser as described above, and revert to using the parser provided by the default module (see getDefaultXMLParserName and setDefaultXMLParserName).
parser | Pointer to the XMLParser object to be used by the system, or 0 to cause the system to initialise a default parser. |
|
staticprotected |
pointer to parser module.
Holds name of default XMLParser
|
protected |
Holds a pointer to the image codec module. If d_imageCodecModule is 0 we are not owner of the image codec object
|
static |
Event fired for display size changes (as notified by client code). Handlers are passed a const DisplayEventArgs reference with DisplayEventArgs::size set to the pixel size that was notifiied to the system.
|
static |
Event fired when global custom RenderedStringParser is set. Handlers are passed a const reference to a generic EventArgs struct.