29#ifndef _CEGUISystem_h_
30#define _CEGUISystem_h_
32#include "CEGUI/Base.h"
33#include "CEGUI/String.h"
34#include "CEGUI/Singleton.h"
35#include "CEGUI/EventSet.h"
36#include "CEGUI/Renderer.h"
37#include "CEGUI/InputEvent.h"
38#include "CEGUI/ResourceProvider.h"
41#if defined(__WIN32__) || defined(_WIN32)
42# include "CEGUI/Win32StringTranscoder.h"
44# include "CEGUI/IconvStringTranscoder.h"
49# pragma warning(disable : 4275)
50# pragma warning(disable : 4251)
128 const String& configFile =
"",
129 const String& logFile =
"CEGUI.log",
130 const int abi = CEGUI_VERSION_ABI);
615 bool d_ourResourceProvider;
645 GUIContextCollection d_guiContexts;
647#if defined(__WIN32__) || defined(_WIN32)
Definition: MemoryAllocatedObject.h:110
Defines a clipboard handling class.
Definition: Clipboard.h:84
Class that wraps and gives access to a dynamically linked module (.dll, .so, etc.....
Definition: DynamicModule.h:43
Interface providing event signaling and handling.
Definition: EventSet.h:167
Definition: GUIContext.h:70
Implementation of StringTranscoder that uses iconv.
Definition: IconvStringTranscoder.h:37
Abstract ImageLoader class. An image loader encapsulate the loading of a texture.
Definition: ImageCodec.h:47
Interface for Regex matching support classes.
Definition: RegexMatcher.h:41
Defines interface to some surface that can be rendered to. Concrete instances of objects that impleme...
Definition: RenderTarget.h:60
Specifies interface for classes that parse text into RenderedString objects.
Definition: RenderedStringParser.h:39
Abstract class defining the basic required interface for Renderer objects.
Definition: Renderer.h:84
Abstract class that defines the required interface for all resource provider sub-classes.
Definition: ResourceProvider.h:49
Abstract interface required for all scripting support modules to be used with the CEGUI system.
Definition: ScriptModule.h:47
Definition: Singleton.h:56
Interface for a string transcoding utility. Instances of classes that implement this interface can be...
Definition: StringTranscoder.h:43
String class used within the GUI system.
Definition: String.h:64
The System class is the CEGUI class that provides access to all other elements in this system.
Definition: System.h:69
static const String getDefaultXMLParserName()
Return the name of the currently set default xml parser module.
void setImageCodec(ImageCodec &codec)
Set the image codec to use from an existing image codec.
bool d_ourImageCodec
true when we created the image codec.
Definition: System.h:632
int executeScriptGlobal(const String &function_name) const
Execute a scripted global function if possible. The function should not take any parameters and shoul...
static String d_defaultXMLParserName
pointer to parser module.
Definition: System.h:627
void cleanupImageCodec()
cleanup image codec
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.
void outputLogHeader()
output the standard log header
bool d_ourLogger
true when we created the CEGUI::Logger based object.
Definition: System.h:640
System(Renderer &renderer, ResourceProvider *resourceProvider, XMLParser *xmlParser, ImageCodec *imageCodec, ScriptModule *scriptModule, const String &configFile, const String &logFile)
Construct a new System object.
XMLParser * d_xmlParser
XMLParser object we use to process xml files.
Definition: System.h:623
void invalidateAllWindows()
invalidate all windows and any rendering surfaces they may be using.
void setXMLParser(const String &parserName)
Set a new XML parser module to be used.
Clipboard * d_clipboard
Internal clipboard with optional sync with native clipboard.
Definition: System.h:617
void destroyRegexMatcher(RegexMatcher *rm) const
destroy a RegexMatcher instance returned by System::createRegexMatcher.
static const String EventDisplaySizeChanged
Definition: System.h:82
void setDefaultCustomRenderedStringParser(RenderedStringParser *parser)
Set the global default custom RenderedStringParser object. This change is reflected the next time an ...
static const StringTranscoder & getStringTranscoder()
Return the system StringTranscoder object.
void executeScriptFile(const String &filename, const String &resourceGroup="") const
Execute a script file if possible.
static const IconvStringTranscoder d_stringTranscoder
instance of class that can convert string encodings
Definition: System.h:650
~System(void)
Destructor for System objects.
void notifyDisplaySizeChanged(const Sizef &new_size)
Notification function to be called when the main display changes size. Client code should call this f...
void setImageCodec(const String &codecName)
Set the image codec to be used by the system.
static const String EventNamespace
Namespace for global events.
Definition: System.h:71
static void setDefaultXMLParserName(const String &parserName)
Static member to set the name of the default XML parser module that should be used.
void destroySingletons()
cleanup the core system singleton objects
void invalidateAllCachedRendering()
Invalidate all imagery and geometry caches for CEGUI managed elements.
bool d_ourXmlParser
true when we created the xml parser.
Definition: System.h:624
Renderer * getRenderer(void) const
Return a pointer to the Renderer object being used by the system.
Definition: System.h:192
static const String & getVerboseVersion()
Retrieves CEGUI's "verbose" version, includes info about compiler, platform, etc.....
void setScriptingModule(ScriptModule *scriptModule)
Set the ScriptModule to be used for scripting within the GUI system.
ResourceProvider * d_resourceProvider
Holds the pointer to the ResourceProvider object given to us by the renderer or the System constructo...
Definition: System.h:614
void setupImageCodec(const String &codecName)
setup image codec
static const String & getVersion()
Retrieves CEGUI's "short" version ("1.2.3" for example)
bool injectTimePulse(float timeElapsed)
call this to ensure system-level time based updates occur.
String d_termScriptName
Name of the script to run upon system shutdown.
Definition: System.h:621
static unsigned int getPatchVersion()
Retrieves CEGUI's patch version as an integer.
ResourceProvider * getResourceProvider(void) const
Return a pointer to the ResourceProvider being used within the GUI system.
Renderer * d_renderer
Holds the pointer to the Renderer object given to us in the constructor.
Definition: System.h:613
static const String & getDefaultImageCodecName()
Get the name of the default image codec.
static unsigned int getMinorVersion()
Retrieves CEGUI's minor version as an integer.
XMLParser * getXMLParser(void) const
Return the XMLParser object.
Definition: System.h:338
void addStandardWindowFactories()
adds factories for all the basic window types
Clipboard * getClipboard() const
Retrieves internal CEGUI clipboard, optionally synced with system wide clipboard.
Definition: System.h:218
static String d_defaultImageCodecName
Holds the name of the default codec to use.
Definition: System.h:638
void executeScriptString(const String &str) const
If possible, execute script code contained in the given CEGUI::String object.
static void destroy()
Destroy the System object.
void createSingletons()
create the other core system singleton objects (except the logger)
static System * getSingletonPtr(void)
Return pointer to singleton System object.
ScriptModule * getScriptingModule(void) const
Return a pointer to the ScriptModule being used for scripting within the GUI system.
static void performVersionTest(const int expected, const int received, const String &func)
Internal CEGUI version validation function.
void setupXMLParser()
handle creation and initialisation of the XML parser.
RegexMatcher * createRegexMatcher() const
Create a RegexMatcher instance if support is available.
void setXMLParser(XMLParser *parser)
Sets the XMLParser object to be used by the system.
void cleanupXMLParser()
handle cleanup of the XML parser
ImageCodec & getImageCodec() const
Retrieve the image codec to be used by the system.
RenderedStringParser * getDefaultCustomRenderedStringParser() const
Return pointer to the currently set global default custom RenderedStringParser object.
static const String EventRenderedStringParserChanged
Definition: System.h:86
DynamicModule * d_imageCodecModule
Definition: System.h:636
RenderedStringParser * d_customRenderedStringParser
currently set global RenderedStringParser.
Definition: System.h:642
static unsigned int getMajorVersion()
Retrieves CEGUI's major version as an integer.
void renderAllGUIContexts()
Depending upon the internal state, for each GUIContext this may either re-use cached rendering from l...
ScriptModule * d_scriptModule
Points to the scripting support module.
Definition: System.h:620
ImageCodec * d_imageCodec
Holds a pointer to the image codec to use.
Definition: System.h:630
static System & getSingleton(void)
Return singleton System object.
static void setDefaultImageCodecName(const String &codecName)
Set the name of the default image codec to be used.
Implementation of StringTranscoder that uses Win32.
Definition: Win32StringTranscoder.h:37
This is an abstract class that is used by CEGUI to interface with XML parser libraries.
Definition: XMLParser.h:44
Main namespace for Crazy Eddie's GUI Library.
Definition: arch_overview.dox:1