30 #ifndef _CEGUISystem_h_
31 #define _CEGUISystem_h_
33 #include "CEGUIBase.h"
34 #include "CEGUIString.h"
35 #include "CEGUISingleton.h"
36 #include "CEGUIRenderer.h"
37 #include "CEGUIMouseCursor.h"
38 #include "CEGUIInputEvent.h"
39 #include "CEGUIResourceProvider.h"
43 # pragma warning(push)
44 # pragma warning(disable : 4275)
45 # pragma warning(disable : 4251)
53 struct MouseClickTrackerImpl;
124 const String& configFile =
"",
125 const String& logFile =
"CEGUI.log");
128 static void destroy();
147 static System& getSingleton(
void);
157 static System* getSingletonPtr(
void);
170 void setDefaultFont(
const String& name);
183 void setDefaultFont(
Font* font);
225 void renderGUI(
void);
309 void setSingleClickTimeout(
double timeout);
332 void setMultiClickTimeout(
double timeout);
348 void setMultiClickToleranceAreaSize(
const Size& sz);
373 void setDefaultMouseCursor(
const Image* image);
404 void setDefaultMouseCursor(
const String& imageset,
const String& image_name);
457 void executeScriptFile(
const String& filename,
const String& resourceGroup =
"")
const;
471 int executeScriptGlobal(
const String& function_name)
const;
484 void executeScriptString(
const String& str)
const;
494 float getMouseMoveScaling(
void)
const;
507 void setMouseMoveScaling(
float scaling);
518 void notifyWindowDestroyed(
const Window* window);
542 void setXMLParser(
const String& parserName);
583 void setDefaultTooltip(
Tooltip* tooltip);
600 void setDefaultTooltip(
const String& tooltipType);
676 static void setDefaultXMLParserName(
const String& parserName);
687 static const String getDefaultXMLParserName();
703 bool updateWindowContainingMouse();
715 void setImageCodec(
const String& codecName);
733 static void setDefaultImageCodecName(
const String& codecName);
739 static const String& getDefaultImageCodecName();
758 void notifyDisplaySizeChanged(
const Size& new_size);
777 bool injectMouseMove(
float delta_x,
float delta_y);
788 bool injectMouseLeaves(
void);
830 bool injectKeyDown(uint key_code);
844 bool injectKeyUp(uint key_code);
858 bool injectChar(utf32 code_point);
872 bool injectMouseWheelChange(
float delta);
889 bool injectMousePosition(
float x_pos,
float y_pos);
902 bool injectTimePulse(
float timeElapsed);
966 Window* getTargetWindow(
const Point& pt,
const bool allow_disabled)
const;
976 Window* getKeyboardTargetWindow(
void)
const;
1020 SystemKey keyCodeToSyskey(Key::Scan key,
bool direction);
1023 void outputLogHeader();
1026 void addStandardWindowFactories();
1029 void createSingletons();
1032 void destroySingletons();
1035 void setupXMLParser();
1038 void cleanupXMLParser();
1044 void setupImageCodec(
const String& codecName);
1047 void cleanupImageCodec();
1050 void initialiseVersionString();
1068 void onSingleClickTimeoutChanged(
EventArgs& e);
1075 void onMultiClickTimeoutChanged(
EventArgs& e);
1082 void onMultiClickAreaSizeChanged(
EventArgs& e);
1089 void onDefaultFontChanged(
EventArgs& e);
1096 void onDefaultMouseCursorChanged(
EventArgs& e);
1103 void onMouseMoveScalingChanged(
EventArgs& e);
1111 bool d_ourResourceProvider;
1112 Font* d_defaultFont;
1129 double d_click_timeout;
1130 double d_dblclick_timeout;
1131 Size d_dblclick_size;
1133 MouseClickTrackerImpl*
const d_clickTrackerPimpl;
1136 const Image* d_defaultMouseCursor;
1142 float d_mouseScalingFactor;
1145 bool d_ourXmlParser;
1149 bool d_weOwnTooltip;
1151 static String d_defaultXMLParserName;
1160 static String d_defaultImageCodecName;
1168 #if defined(_MSC_VER)
1169 # pragma warning(pop)
1172 #endif // end of guard _CEGUISystem_h_