30 #ifndef _CEGUIWindow_h_
31 #define _CEGUIWindow_h_
33 #include "CEGUIBase.h"
34 #include "CEGUIString.h"
35 #include "CEGUIVector.h"
36 #include "CEGUIRect.h"
37 #include "CEGUISize.h"
38 #include "CEGUIEventSet.h"
39 #include "CEGUIPropertySet.h"
40 #include "CEGUISystem.h"
41 #include "CEGUIInputEvent.h"
42 #include "CEGUIWindowProperties.h"
43 #include "CEGUIUDim.h"
44 #include "CEGUIWindowRenderer.h"
45 #include "CEGUITextUtils.h"
46 #include "CEGUIBasicRenderedStringParser.h"
47 #include "CEGUIDefaultRenderedStringParser.h"
53 # pragma warning(push)
54 # pragma warning(disable : 4251)
504 const String& getType(
void)
const;
549 bool isDisabled(
bool localOnly =
false)
const;
567 bool isVisible(
bool localOnly =
false)
const;
583 bool isActive(
void)
const;
603 uint
getID(
void)
const {
return d_ID;}
628 bool isChild(
const String& name)
const;
646 bool isChild(uint ID)
const;
668 bool isChildRecursive(uint ID)
const;
681 bool isChild(
const Window* window)
const;
727 Window* getChild(uint ID)
const;
775 Window* getChildRecursive(uint ID)
const;
804 Window* getActiveChild(
void);
805 const Window* getActiveChild(
void)
const;
820 bool isAncestor(
const String& name)
const;
835 bool isAncestor(uint ID)
const;
849 bool isAncestor(
const Window* window)
const;
864 Font* getFont(
bool useDefault =
true)
const;
876 const String& getTextVisual()
const;
916 float getEffectiveAlpha(
void)
const;
923 Rect getUnclippedOuterRect()
const;
930 Rect getUnclippedInnerRect()
const;
943 Rect getUnclippedRect(
const bool inner)
const;
957 Rect getOuterRectClipper()
const;
971 Rect getInnerRectClipper()
const;
991 Rect getClipRect(
const bool non_client =
false)
const;
1003 Rect getHitTestRect()
const;
1024 Rect getChildWindowContentArea(
const bool non_client =
false)
const;
1042 virtual Rect getUnclippedInnerRect_impl(
void)
const;
1074 {
return isAncestor(getCaptureWindow());}
1102 virtual bool isHit(
const Vector2& position,
1103 const bool allow_disabled =
false)
const;
1137 const bool allow_disabled =
false)
const;
1163 const Image* getMouseCursor(
bool useDefault =
true)
const;
1222 bool isZOrderingEnabled(
void)
const;
1234 bool wantsMultiClickEvents(
void)
const;
1247 bool isMouseAutoRepeatEnabled(
void)
const;
1257 float getAutoRepeatDelay(
void)
const;
1268 float getAutoRepeatRate(
void)
const;
1279 bool distributesCapturedInputs(
void)
const;
1290 bool isUsingDefaultTooltip(
void)
const;
1301 Tooltip* getTooltip(
void)
const;
1311 String getTooltipType(
void)
const;
1320 const String& getTooltipText(
void)
const;
1333 bool inheritsTooltipText(
void)
const;
1369 {
return testClassName_impl(class_name);}
1412 const String& getLookNFeel()
const;
1450 bool isUserStringDefined(
const String& name)
const;
1467 Window* getActiveSibling();
1478 Size getParentPixelSize(
void)
const;
1489 float getParentPixelWidth(
void)
const;
1500 float getParentPixelHeight(
void)
const;
1584 bool isDragDropTarget()
const;
1621 bool isUsingAutoRenderingSurface()
const;
1633 const Window* getRootWindow()
const;
1637 const Vector3& getRotation()
const;
1653 bool isNonClientWindow()
const;
1665 void rename(
const String& new_name);
1693 void setDestroyedByParent(
bool setting);
1707 void setAlwaysOnTop(
bool setting);
1721 void setEnabled(
bool setting);
1758 void setVisible(
bool setting);
1772 void show(
void) {setVisible(
true);}
1784 void hide(
void) {setVisible(
false);}
1794 void activate(
void);
1805 void deactivate(
void);
1819 void setClippedByParent(
bool setting);
1832 void setID(uint ID);
1844 void setText(
const String& text);
1870 void appendText(
const String& text);
1883 void setFont(
Font* font);
1899 void setFont(
const String& name);
1919 void addChildWindow(
const String& name);
1937 void addChildWindow(
Window* window);
1950 void removeChildWindow(
const String& name);
1963 void removeChildWindow(
Window* window);
1978 void removeChildWindow(uint ID);
2024 void moveInFront(
const Window*
const window);
2040 void moveBehind(
const Window*
const window);
2051 bool captureInput(
void);
2061 void releaseInput(
void);
2081 void setRestoreCapture(
bool setting);
2103 void setAlpha(
float alpha);
2116 void setInheritsAlpha(
bool setting);
2129 void invalidate(
void);
2146 void invalidate(
const bool recursive);
2159 void setMouseCursor(
const Image* image);
2192 void setMouseCursor(
const String& imageset,
const String& image_name);
2232 void setZOrderingEnabled(
bool setting);
2247 void setWantsMultiClickEvents(
bool setting);
2261 void setMouseAutoRepeatEnabled(
bool setting);
2274 void setAutoRepeatDelay(
float delay);
2288 void setAutoRepeatRate(
float rate);
2299 void setDistributesCapturedInputs(
bool setting);
2335 virtual void destroy(
void);
2352 void setTooltip(
Tooltip* tooltip);
2372 void setTooltipType(
const String& tooltipType);
2385 void setTooltipText(
const String& tip);
2401 void setInheritsTooltipText(
bool setting);
2474 virtual void setLookNFeel(
const String& look);
2489 void setModalState(
bool state);
2501 virtual void performChildWindowLayout();
2516 void setUserString(
const String& name,
const String& value);
2544 void setArea(
const UDim& xpos,
const UDim& ypos,
const UDim& width,
const UDim& height);
2586 void setArea(
const URect& area);
2606 void setPosition(
const UVector2& pos);
2625 void setXPosition(
const UDim& x);
2644 void setYPosition(
const UDim& y);
2660 void setSize(
const UVector2& size);
2676 void setWidth(
const UDim& width);
2692 void setHeight(
const UDim& height);
2710 void setMaxSize(
const UVector2& size);
2728 void setMinSize(
const UVector2& size);
2747 const URect& getArea()
const;
2766 const UVector2& getPosition()
const;
2785 const UDim& getXPosition()
const;
2804 const UDim& getYPosition()
const;
2836 UDim getWidth()
const;
2852 UDim getHeight()
const;
2870 const UVector2& getMaxSize()
const;
2888 const UVector2& getMinSize()
const;
2918 virtual void update(
float elapsed);
2930 virtual void writeXMLToStream(
XMLSerializer& xml_stream)
const;
2974 void setWindowRenderer(
const String& name);
2995 String getWindowRendererName(
void)
const;
3013 void notifyScreenAreaChanged(
bool recursive =
true);
3026 void setFalagardType(
const String& type,
const String& rendererType =
"");
3037 void setDragDropTarget(
bool setting);
3067 void invalidateRenderingSurface();
3110 void setUsingAutoRenderingSurface(
bool setting);
3113 void setRotation(
const Vector3& rotation);
3129 void setNonClientWindow(
const bool setting);
3140 bool isTextParsingEnabled()
const;
3142 void setTextParsingEnabled(
const bool setting);
3145 virtual void setMargin(
const UBox& margin);
3147 const UBox& getMargin()
const;
3154 {
return d_bidiVisualMapping;}
3157 void banPropertyFromXML(
const String& property_name);
3160 void unbanPropertyFromXML(
const String& property_name);
3163 bool isPropertyBannedFromXML(
const String& property_name)
const;
3166 void banPropertyFromXML(
const Property* property);
3169 void unbanPropertyFromXML(
const Property* property);
3172 bool isPropertyBannedFromXML(
const Property* property)
const;
3222 void setMouseInputPropagationEnabled(
const bool enabled);
3234 bool isMouseInputPropagationEnabled()
const;
3250 Window* clone(
const String& newName,
const bool deepCopy =
true)
const;
3253 virtual void clonePropertiesTo(
Window& target)
const;
3255 virtual void cloneChildWidgetsTo(
Window& target)
const;
3269 size_t getZIndex()
const;
3280 bool isInFront(
const Window& wnd)
const;
3291 bool isBehind(
const Window& wnd)
const;
3870 virtual void updateSelf(
float elapsed);
3930 if (class_name ==
"Window")
return true;
3945 void setParent(
Window* parent);
3947 Size getSize_impl(
const Window* window)
const;
3963 virtual bool validateWindowRenderer(
const String& name)
const;
3971 bool isPropertyAtDefault(
const Property* property)
const;
3978 void notifyClippingChanged(
void);
3981 void allocateRenderingWindow();
3984 void releaseRenderingWindow();
3993 virtual void cleanupChildren(
void);
3999 virtual void addChild_impl(
Window* wnd);
4005 virtual void removeChild_impl(
Window* wnd);
4011 virtual void onZChange_impl(
void);
4017 void addStandardProperties(
void);
4027 virtual bool moveToFront_impl(
bool wasClicked);
4060 bool topLeftSizing =
false,
bool fireEvents =
true);
4081 void addWindowToDrawList(
Window& wnd,
bool at_back =
false);
4094 void removeWindowFromDrawList(
const Window& wnd);
4107 bool isTopOfZOrder()
const;
4114 void updateGeometryRenderSettings();
4117 void transferChildSurfaces();
4120 Rect getParentElementClipIntersection(
const Rect& unclipped_area)
const;
4123 void invalidate_impl(
const bool recursive);
4126 bool isInnerRectSizeChanged()
const;
4134 const Window* getWindowAttachedToCommonAncestor(
const Window& wnd)
const;
4137 virtual Rect getUnclippedOuterRect_impl()
const;
4139 virtual Rect getOuterRectClipper_impl()
const;
4141 virtual Rect getInnerRectClipper_impl()
const;
4143 virtual Rect getHitTestRect_impl()
const;
4145 virtual Rect getNonClientChildWindowContentArea_impl()
const;
4147 virtual Rect getClientChildWindowContentArea_impl()
const;
4149 virtual int writePropertiesXML(
XMLSerializer& xml_stream)
const;
4150 virtual int writeChildWindowsXML(
XMLSerializer& xml_stream)
const;
4151 virtual bool writeAutoChildWindowXML(
XMLSerializer& xml_stream)
const;
4154 bool constrainUVector2ToMinSize(
const Size& base_sz,
UVector2& sz);
4156 bool constrainUVector2ToMaxSize(
const Size& base_sz,
UVector2& sz);
4158 void markAllCachedRectsInvalid();
4160 void calculatePixelSize();
4162 void fireAreaChangeEvents(
const bool moved,
const bool sized);
4387 mutable bool d_outerUnclippedRectValid;
4388 mutable bool d_innerUnclippedRectValid;
4389 mutable bool d_outerRectClipperValid;
4390 mutable bool d_innerRectClipperValid;
4391 mutable bool d_hitTestRectValid;
4410 #if defined(_MSC_VER)
4411 # pragma warning(pop)
4414 #endif // end of guard _CEGUIWindow_h_
static const String EventDisabled
Definition: CEGUIWindow.h:222
Window * getChildAtIdx(size_t idx) const
return a pointer to the child window that is attached to 'this' at the given index.
Definition: CEGUIWindow.h:790
static const String EventDragDropItemEnters
Definition: CEGUIWindow.h:305
bool d_nonClientContent
true if Window is in non-client (outside InnerRect) area of parent.
Definition: CEGUIWindow.h:4257
static const String AutoWidgetNameSuffix
Something that all generated widgets will have in their names.
Definition: CEGUIWindow.h:476
static const String EventDeactivated
Definition: CEGUIWindow.h:201
bool isCapturedByAncestor(void) const
return true if an ancestor window has captured inputs.
Definition: CEGUIWindow.h:1073
Property to access the unified position x-coordinate of the window.
Definition: CEGUIWindowProperties.h:777
bool d_bidiDataValid
whether bidi visual mapping has been updated since last text change.
Definition: CEGUIWindow.h:4296
Property to access the unified position y-coordinate of the window.
Definition: CEGUIWindowProperties.h:803
bool d_riseOnClick
whether window should rise in the z order when left clicked.
Definition: CEGUIWindow.h:4323
virtual void endInitialisation(void)
Sets the internal 'initialising' flag to false. This is called automatically by the layout XML handle...
Definition: CEGUIWindow.h:2949
Property to access window Visible setting.
Definition: CEGUIWindowProperties.h:312
RenderingSurface * d_surface
RenderingSurface owned by this window (may be 0)
Definition: CEGUIWindow.h:4266
static const String EventVerticalAlignmentChanged
Definition: CEGUIWindow.h:326
static const String EventAlphaChanged
Definition: CEGUIWindow.h:182
Class used as a two dimensional vector (aka a Point)
Definition: CEGUIVector.h:45
static const String EventAlwaysOnTopChanged
Definition: CEGUIWindow.h:246
static const String EventTextChanged
Definition: CEGUIWindow.h:172
String d_falagardType
Type name of the window as defined in a Falagard mapping.
Definition: CEGUIWindow.h:4230
bool d_dragDropTarget
true if window will receive drag and drop related notifications
Definition: CEGUIWindow.h:4345
static const String EventMarginChanged
Definition: CEGUIWindow.h:368
static const String EventCharacterKey
Definition: CEGUIWindow.h:468
Property to access window Font setting.
Definition: CEGUIWindowProperties.h:114
Vector3 d_rotation
Rotation angles for this window.
Definition: CEGUIWindow.h:4374
std::set< String, String::FastLessCompare > BannedXMLPropertySet
definition of type used to track properties banned from writing XML.
Definition: CEGUIWindow.h:4223
static const String EventNamespace
Namespace for global events.
Definition: CEGUIWindow.h:145
Property to access the unified minimum size of the window.
Definition: CEGUIWindowProperties.h:911
void hide(void)
hide the Window.
Definition: CEGUIWindow.h:1784
static const String EventInputCaptureLost
Definition: CEGUIWindow.h:260
const String d_type
type of Window (also the name of the WindowFactory that created us)
Definition: CEGUIWindow.h:4226
static const String EventMouseButtonDown
Definition: CEGUIWindow.h:418
MouseButton d_repeatButton
button we're tracking for auto-repeat purposes.
Definition: CEGUIWindow.h:4338
Generic drag & drop enabled window class.
Definition: CEGUIDragContainer.h:48
static const String EventKeyDown
Definition: CEGUIWindow.h:451
bool d_inheritsTipText
whether tooltip text may be inherited from parent.
Definition: CEGUIWindow.h:4354
Class used as a three dimensional vector.
Definition: CEGUIVector.h:130
bool isMousePassThroughEnabled(void) const
Returns whether this window should ignore mouse event and pass them through to and other windows behi...
Definition: CEGUIWindow.h:1512
static const String EventRenderingStarted
Definition: CEGUIWindow.h:268
virtual void beginInitialisation(void)
Sets the internal 'initialising' flag to true. This can be use to optimize initialisation of some wid...
Definition: CEGUIWindow.h:2940
static const String EventMouseButtonUp
Definition: CEGUIWindow.h:423
Font * d_font
Holds pointer to the Window objects current Font.
Definition: CEGUIWindow.h:4290
bool d_allowWriteXML
true if this window is allowed to write XML, false if not
Definition: CEGUIWindow.h:4357
BannedXMLPropertySet d_bannedXMLProperties
collection of properties not to be written to XML for this window.
Definition: CEGUIWindow.h:4359
Area rectangle class built using unified dimensions (UDims).
Definition: CEGUIUDim.h:245
Property to access window Z-Order changing enabled setting.
Definition: CEGUIWindowProperties.h:398
static const String EventWindowUpdated
Definition: CEGUIWindow.h:151
bool d_visible
is window visible (i.e. it will be rendered, but may still be obscured)
Definition: CEGUIWindow.h:4241
Class that represents a single Image of an Imageset.
Definition: CEGUIImage.h:57
const BiDiVisualMapping * getBiDiVisualMapping() const
return the pointer to the BiDiVisualMapping for this window, if any.
Definition: CEGUIWindow.h:3153
String d_name
The name of the window (GUI system unique).
Definition: CEGUIWindow.h:4228
static System & getSingleton(void)
Return singleton System object.
static const String EventChildRemoved
Definition: CEGUIWindow.h:286
EventArgs based class used for certain drag/drop notifications.
Definition: CEGUIInputEvent.h:335
static const String EventMouseMove
Definition: CEGUIWindow.h:407
static BasicRenderedStringParser d_basicStringParser
Shared instance of a parser to be used in most instances.
Definition: CEGUIWindow.h:4302
static const String EventMouseLeaves
Definition: CEGUIWindow.h:402
String d_lookName
Name of the Look assigned to this window (if any).
Definition: CEGUIWindow.h:4260
Effectively a 'null' parser that returns a RenderedString representation that will draw the input tex...
Definition: CEGUIDefaultRenderedStringParser.h:41
static const String EventInheritsAlphaChanged
Definition: CEGUIWindow.h:240
size_t size_type
Unsigned type used for size values and indices.
Definition: CEGUIString.h:64
uint d_ID
User ID assigned to this Window.
Definition: CEGUIWindow.h:4314
Definition: CEGUIWindow.h:81
float getAlpha(void) const
return the current alpha value set for this Window
Definition: CEGUIWindow.h:905
String d_textLogical
Holds the text / label / caption for this Window.
Definition: CEGUIWindow.h:4292
void * getUserData(void) const
Return the user data set for this Window.
Definition: CEGUIWindow.h:1185
UBox d_margin
Margin, only used when the Window is inside LayoutContainer class.
Definition: CEGUIWindow.h:4311
static const String EventClippedByParentChanged
Definition: CEGUIWindow.h:228
Rect d_innerRectClipper
inner area clipping rect in screen pixels
Definition: CEGUIWindow.h:4383
Property to access window Restore Old Capture setting.
Definition: CEGUIWindowProperties.h:342
Property to access the unified width of the window.
Definition: CEGUIWindowProperties.h:857
bool d_destructionStarted
true when this window is being destroyed.
Definition: CEGUIWindow.h:4237
bool isCapturedByChild(void) const
return true if a child window has captured inputs.
Definition: CEGUIWindow.h:1084
bool d_weOwnTip
true if this Window created the custom Tooltip.
Definition: CEGUIWindow.h:4352
String d_tooltipText
Text string used as tip for this window.
Definition: CEGUIWindow.h:4348
std::vector< Window * > ChildList
definition of type used for the list of attached child windows.
Definition: CEGUIWindow.h:4219
Property to access the unified height of the window.
Definition: CEGUIWindowProperties.h:883
bool isClippedByParent(void) const
return true if this Window is clipped so that its rendering will not pass outside of its parent Windo...
Definition: CEGUIWindow.h:594
Abstract class defining the interface for objects that buffer geometry for later rendering.
Definition: CEGUIGeometryBuffer.h:42
struct that holds some context relating to a RenderingSurface object.
Definition: CEGUIRenderingContext.h:40
bool restoresOldCapture(void) const
Return whether this window is set to restore old input capture when it loses input capture...
Definition: CEGUIWindow.h:1201
static const String EventMouseTripleClick
Definition: CEGUIWindow.h:442
Class that holds the size (width & height) of something.
Definition: CEGUISize.h:43
virtual bool testClassName_impl(const String &class_name) const
Return whether this window was inherited from the given class name at some point in the inheritance h...
Definition: CEGUIWindow.h:3928
static const String EventActivated
Definition: CEGUIWindow.h:194
static const String EventRenderingEnded
Definition: CEGUIWindow.h:276
Property to control whether the window will receive double/triple-click events.
Definition: CEGUIWindowProperties.h:427
static const String EventWindowRendererAttached
Definition: CEGUIWindow.h:338
MouseButton
Enumeration of mouse buttons.
Definition: CEGUIInputEvent.h:204
void disable(void)
disable the Window to prevent interaction.
Definition: CEGUIWindow.h:1739
BiDiVisualMapping * d_bidiVisualMapping
pointer to bidirection support object
Definition: CEGUIWindow.h:4294
Property to access window autorepeat rate value.
Definition: CEGUIWindowProperties.h:510
bool testClassName(const String &class_name) const
Return whether this window was inherited from the given class name at some point in the inheritance h...
Definition: CEGUIWindow.h:1368
static const String EventHorizontalAlignmentChanged
Definition: CEGUIWindow.h:332
Only call the Window::update function for this window if it is visible.
Definition: CEGUIWindow.h:122
bool d_autoRepeat
whether pressed mouse button will auto-repeat the down event.
Definition: CEGUIWindow.h:4332
The WindowManager class describes an object that manages creation and lifetime of Window objects...
Definition: CEGUIWindowManager.h:61
Class that contains a collection of Property objects.
Definition: CEGUIPropertySet.h:52
static const String EventDragDropItemDropped
Definition: CEGUIWindow.h:320
Window * d_parent
Holds pointer to the parent window.
Definition: CEGUIWindow.h:4250
bool d_needsRedraw
true if window geometry cache needs to be regenerated.
Definition: CEGUIWindow.h:4268
Base class constant iterator used to offer iteration over various collections within the system...
Definition: CEGUIIteratorBase.h:47
bool isAlwaysOnTop(void) const
returns whether or not this Window is an always on top Window. Also known as a top-most window...
Definition: CEGUIWindow.h:535
bool d_distCapturedInputs
Whether to distribute captured inputs to child windows.
Definition: CEGUIWindow.h:4287
ChildList d_children
The list of child Window objects attached to this.
Definition: CEGUIWindow.h:4246
Always call the Window::update function for this window.
Definition: CEGUIWindow.h:118
static const String EventHidden
Definition: CEGUIWindow.h:211
static const String EventShown
Definition: CEGUIWindow.h:206
Property to access whether the window rises to the top of the z order when clicked.
Definition: CEGUIWindowProperties.h:637
bool d_mousePassThroughEnabled
whether (most) mouse events pass through this window
Definition: CEGUIWindow.h:4330
Property to access the unified position of the window.
Definition: CEGUIWindowProperties.h:831
bool d_zOrderingEnabled
true if the Window responds to z-order change requests.
Definition: CEGUIWindow.h:4325
Class representing a rendered string of entities.
Definition: CEGUIRenderedString.h:50
UVector2 d_minSize
current minimum size for the window.
Definition: CEGUIWindow.h:4366
static const String EventMouseEntersArea
Definition: CEGUIWindow.h:375
static const String EventInputCaptureGained
Definition: CEGUIWindow.h:251
uint getID(void) const
return the ID code currently assigned to this Window by client code.
Definition: CEGUIWindow.h:603
Base-class for the assignable WindowRenderer object.
Definition: CEGUIWindowRenderer.h:51
Definition: CEGUIWindow.h:104
static const String EventIDChanged
Definition: CEGUIWindow.h:187
Property to access the rotation factors of the window.
Definition: CEGUIWindowProperties.h:1107
void show(void)
show the Window.
Definition: CEGUIWindow.h:1772
Property to access window autorepeat delay value.
Definition: CEGUIWindowProperties.h:483
virtual void initialiseComponents(void)
Initialises the Window based object ready for use.
Definition: CEGUIWindow.h:1678
Property to access the vertical alignment setting for the window.
Definition: CEGUIWindowProperties.h:664
Property to access window text setting.
Definition: CEGUIWindowProperties.h:142
static const String EventSized
Definition: CEGUIWindow.h:162
Abstract class to wrap a BiDi visual mapping of a text string.
Definition: CEGUIBiDiVisualMapping.h:51
bool isAutoWindow(void) const
Returns whether this window is an auto-child window. All auto-child windows have "__auto_" in their n...
Definition: CEGUIWindow.h:1519
Property to access window margin.
Definition: CEGUIWindowProperties.h:1280
Definition: CEGUIWindow.h:71
Property to access window "Inherits Alpha" setting.
Definition: CEGUIWindowProperties.h:227
EventArgs based class that is used for objects passed to input event handlers concerning keyboard inp...
Definition: CEGUIInputEvent.h:308
Property to access window Destroyed by Parent setting.
Definition: CEGUIWindowProperties.h:370
VerticalAlignment d_vertAlign
Specifies the base for vertical alignment.
Definition: CEGUIWindow.h:4372
RenderedStringParser * d_customStringParser
Pointer to a custom (user assigned) RenderedStringParser object.
Definition: CEGUIWindow.h:4306
float d_repeatDelay
seconds before first repeat event is fired
Definition: CEGUIWindow.h:4334
size_t getChildCount(void) const
return the number of child Window objects currently attached to this Window.
Definition: CEGUIWindow.h:614
Property to access the y axis rotation factor of the window.
Definition: CEGUIWindowProperties.h:1159
Property to access the x axis rotation factor of the window.
Definition: CEGUIWindowProperties.h:1133
bool d_active
true when Window is the active Window (receiving inputs).
Definition: CEGUIWindow.h:4243
static const String EventZOrderChanged
Definition: CEGUIWindow.h:297
static const String EventMouseEnters
Definition: CEGUIWindow.h:391
Property to access the z axis rotation factor of the window.
Definition: CEGUIWindowProperties.h:1185
bool isWritingXMLAllowed(void) const
Returns whether this window is allowed to write XML.
Definition: CEGUIWindow.h:1525
Class encapsulating the 'Unified Box' - this is usually used for margin.
Definition: CEGUIUDim.h:351
static const String EventTextParsingChanged
Definition: CEGUIWindow.h:362
Property to access the unified area rectangle of the window.
Definition: CEGUIWindowProperties.h:723
Class that encapsulates a typeface.
Definition: CEGUIFont.h:58
static DefaultRenderedStringParser d_defaultStringParser
Shared instance of a parser to be used when rendering text verbatim.
Definition: CEGUIWindow.h:4304
UVector2 d_maxSize
current maximum size for the window.
Definition: CEGUIWindow.h:4368
static const String EventDestructionStarted
Definition: CEGUIWindow.h:291
static const String EventDragDropItemLeaves
Definition: CEGUIWindow.h:313
void setWritingXMLAllowed(bool allow)
Sets whether this window is allowed to write XML.
Definition: CEGUIWindow.h:3001
VerticalAlignment getVerticalAlignment() const
Get the vertical alignment.
Definition: CEGUIWindow.h:1381
bool d_propagateMouseInputs
specifies whether mouse inputs should be propagated to parent(s)
Definition: CEGUIWindow.h:4396
void * d_userData
Holds pointer to some user assigned data.
Definition: CEGUIWindow.h:4316
MouseCursorImage
Enumeration of special values used for mouse cursor settings in Window objects.
Definition: CEGUIMouseCursor.h:57
bool d_autoWindow
true when this window is an auto-window (it's name contains __auto_)
Definition: CEGUIWindow.h:4232
Property to access/change the assigned window renderer object.
Definition: CEGUIWindowProperties.h:989
void enable(void)
enable the Window to allow interaction.
Definition: CEGUIWindow.h:1730
static const String EventMouseWheel
Definition: CEGUIWindow.h:413
An abstract base class providing common functionality and specifying the required interface for deriv...
Definition: CEGUIWindow.h:138
bool d_restoreOldCapture
Restore capture to the previous capture window when releasing capture.
Definition: CEGUIWindow.h:4285
const String & getText(void) const
return the current text for the Window
Definition: CEGUIWindow.h:873
Property to access window text parsing enabled setting.
Definition: CEGUIWindowProperties.h:1244
Property to access window ID field.
Definition: CEGUIWindowProperties.h:60
void setUserData(void *user_data)
Set the user data set for this Window.
Definition: CEGUIWindow.h:2208
static const String EventMouseClick
Definition: CEGUIWindow.h:430
static const String EventParentSized
Definition: CEGUIWindow.h:157
bool d_wantsMultiClicks
true if the Window wishes to hear about multi-click mouse events.
Definition: CEGUIWindow.h:4328
Rect d_outerUnclippedRect
outer area rect in screen pixels
Definition: CEGUIWindow.h:4377
Property to access whether the window ignores mouse events and pass them through to any windows behin...
Definition: CEGUIWindowProperties.h:965
bool inheritsAlpha(void) const
return true if the Window inherits alpha from its parent(s).
Definition: CEGUIWindow.h:886
Property to get/set whether the Window will automatically attempt to use a full imagery caching Rende...
Definition: CEGUIWindowProperties.h:1073
Class that represents a surface that can have geometry based imagery drawn to it. ...
Definition: CEGUIRenderingSurface.h:109
const String & getName(void) const
return a String object holding the name of this Window.
Definition: CEGUIWindow.h:513
Basic RenderedStringParser class that offers support for the following tags:
Definition: CEGUIBasicRenderedStringParser.h:65
Size getPixelSize(void) const
Return the window size in pixels.
Definition: CEGUIWindow.h:1172
void setMousePassThroughEnabled(bool setting)
Sets whether this window should ignore mouse events and pass them through to any windows behind it...
Definition: CEGUIWindow.h:2961
Definition: CEGUIWindow.h:76
void setRiseOnClickEnabled(bool setting)
Set whether this window will rise to the top of the z-order when clicked with the left mouse button...
Definition: CEGUIWindow.h:2426
Class that collects together a set of Event objects.
Definition: CEGUIEventSet.h:66
Property to access the unified position of the window.
Definition: CEGUIWindowProperties.h:751
Property to access window "clipped by parent" setting.
Definition: CEGUIWindowProperties.h:199
static const String EventFontChanged
Definition: CEGUIWindow.h:177
bool d_enabled
true when Window is enabled
Definition: CEGUIWindow.h:4239
RenderedString d_renderedString
RenderedString representation of text string as ouput from a parser.
Definition: CEGUIWindow.h:4298
static const String TooltipNameSuffix
Widget name suffix for automatically created tooltip widgets.
Definition: CEGUIWindow.h:474
bool d_inheritsAlpha
true if the Window inherits alpha from the parent Window
Definition: CEGUIWindow.h:4278
bool d_autoRenderingWindow
holds setting for automatic creation of of surface (RenderingWindow)
Definition: CEGUIWindow.h:4270
static Window * d_captureWindow
Window that has captured inputs.
Definition: CEGUIWindow.h:4281
std::map< String, String, String::FastLessCompare > UserStringMap
definition of type used for the UserString dictionary.
Definition: CEGUIWindow.h:4221
ChildList d_drawList
Child window objects arranged in rendering order.
Definition: CEGUIWindow.h:4248
Specifies interface for classes that parse text into RenderedString objects.
Definition: CEGUIRenderedStringParser.h:37
Property to access window mouse cursor setting.
Definition: CEGUIWindowProperties.h:170
GeometryBuffer * d_geometry
Object which acts as a cache of geometry drawn by this Window.
Definition: CEGUIWindow.h:4264
Definition: CEGUIWindow.h:99
Property to access the horizontal alignment setting for the window.
Definition: CEGUIWindowProperties.h:691
static const String EventMouseLeavesArea
Definition: CEGUIWindow.h:380
URect d_area
This Window objects area as defined by a URect.
Definition: CEGUIWindow.h:4362
static const String EventWindowRendererDetached
Definition: CEGUIWindow.h:344
static const String EventKeyUp
Definition: CEGUIWindow.h:460
Tooltip * d_customTip
Possible custom Tooltip for this window.
Definition: CEGUIWindow.h:4350
bool d_clippedByParent
true when Window will be clipped by parent Window area Rect.
Definition: CEGUIWindow.h:4255
EventArgs based class that is used for objects passed to handlers triggered for events concerning som...
Definition: CEGUIInputEvent.h:245
Property to access window Disabled setting.
Definition: CEGUIWindowProperties.h:283
UserStringMap d_userStrings
Holds a collection of named user string values.
Definition: CEGUIWindow.h:4318
Property to access window non-client setting.
Definition: CEGUIWindowProperties.h:1213
static const String EventChildAdded
Definition: CEGUIWindow.h:281
Property to access the update mode setting for the window.
Definition: CEGUIWindowProperties.h:1308
Class representing a unified dimension; that is a dimension that has both a relative 'scale' portion ...
Definition: CEGUIUDim.h:47
EventArgs based class that is used for objects passed to input event handlers concerning mouse input...
Definition: CEGUIInputEvent.h:274
Property to access the unified maximum size of the window.
Definition: CEGUIWindowProperties.h:939
Rect d_hitTestRect
area rect used for hit-testing agains this window
Definition: CEGUIWindow.h:4385
An abstract class that defines the interface to access object properties by name. ...
Definition: CEGUIProperty.h:61
static const String EventMoved
Definition: CEGUIWindow.h:167
Size d_pixelSize
Current constrained pixel size of the window.
Definition: CEGUIWindow.h:4364
Rect d_innerUnclippedRect
inner area rect in screen pixels
Definition: CEGUIWindow.h:4379
Definition: CEGUIWindow.h:94
bool isRiseOnClickEnabled(void) const
Return whether this window will rise to the top of the z-order when clicked with the left mouse butto...
Definition: CEGUIWindow.h:1355
bool isCapturedByThis(void) const
return true if this Window has input captured.
Definition: CEGUIWindow.h:1062
WindowUpdateMode
Enumerated type used for specifying Window::update mode to be used. Note that the setting specified w...
Definition: CEGUIWindow.h:115
WindowUpdateMode d_updateMode
The mode to use for calling Window::update.
Definition: CEGUIWindow.h:4394
The System class is the CEGUI class that provides access to all other elements in this system...
Definition: CEGUISystem.h:64
bool d_destroyedByParent
true when Window will be auto-destroyed by parent.
Definition: CEGUIWindow.h:4252
bool getModalState(void) const
Get whether or not this Window is the modal target.
Definition: CEGUIWindow.h:1421
bool d_textParsingEnabled
true if use of parser other than d_defaultStringParser is enabled
Definition: CEGUIWindow.h:4308
static const String EventMouseDoubleClick
Definition: CEGUIWindow.h:436
HorizontalAlignment d_horzAlign
Specifies the base for horizontal alignment.
Definition: CEGUIWindow.h:4370
bool d_alwaysOnTop
true if Window will be drawn on top of all other Windows
Definition: CEGUIWindow.h:4321
Rect d_outerRectClipper
outer area clipping rect in screen pixels
Definition: CEGUIWindow.h:4381
bool d_initialising
true when this window is currently being initialised (creating children etc)
Definition: CEGUIWindow.h:4235
HorizontalAlignment getHorizontalAlignment() const
Get the horizontal alignment.
Definition: CEGUIWindow.h:1393
float d_repeatRate
secons between further repeats after delay has expired.
Definition: CEGUIWindow.h:4336
static Window * getCaptureWindow(void)
return the Window that currently has inputs captured.
Definition: CEGUIWindow.h:1052
Property to access window alpha setting.
Definition: CEGUIWindowProperties.h:87
Class used to create XML Document.
Definition: CEGUIXMLSerializer.h:86
Property to access/change the assigned look'n'feel.
Definition: CEGUIWindowProperties.h:1015
VerticalAlignment
Enumerated type used when specifying vertical alignments.
Definition: CEGUIWindow.h:65
Never call the Window::update function for this window.
Definition: CEGUIWindow.h:120
WindowRenderer * d_windowRenderer
The WindowRenderer module that implements the Look'N'Feel specification.
Definition: CEGUIWindow.h:4262
static const String EventDestroyedByParentChanged
Definition: CEGUIWindow.h:234
bool d_renderedStringValid
true if d_renderedString is valid, false if needs re-parse.
Definition: CEGUIWindow.h:4300
Window * getParent(void) const
return the parent of this Window.
Definition: CEGUIWindow.h:1147
bool d_repeating
implements repeating - is true after delay has elapsed,
Definition: CEGUIWindow.h:4340
static const String EventNonClientChanged
Definition: CEGUIWindow.h:355
float d_repeatElapsed
implements repeating - tracks time elapsed.
Definition: CEGUIWindow.h:4342
virtual void populateGeometryBuffer()
Update the rendering cache.
Definition: CEGUIWindow.h:3915
Window * d_oldCapture
The Window that previously had capture (used for restoreOldCapture mode)
Definition: CEGUIWindow.h:4283
float d_alpha
Alpha transparency setting for the Window.
Definition: CEGUIWindow.h:4276
Property to get/set whether the Window will receive drag and drop related notifications.
Definition: CEGUIWindowProperties.h:1043
Property to access whether the window inherits its tooltip text from its parent when it has no toolti...
Definition: CEGUIWindowProperties.h:611
EventArgs based class that is used for Activated and Deactivated window events.
Definition: CEGUIInputEvent.h:323
Property to access window "Always-On-Top" setting.
Definition: CEGUIWindowProperties.h:255
HorizontalAlignment
Enumerated type used when specifying horizontal alignments.
Definition: CEGUIWindow.h:88
Class encapsulating operations on a Rectangle.
Definition: CEGUIRect.h:44
static const String EventEnabled
Definition: CEGUIWindow.h:216
const Image * d_mouseCursor
Holds pointer to the Window objects current mouse cursor image.
Definition: CEGUIWindow.h:4273
String class used within the GUI system.
Definition: CEGUIString.h:57
bool isDestroyedByParent(void) const
returns whether or not this Window is set to be destroyed when its parent window is destroyed...
Definition: CEGUIWindow.h:524
static const String EventRotated
Definition: CEGUIWindow.h:349
Two dimensional vector class built using unified dimensions (UDims). The UVector2 class is used for r...
Definition: CEGUIUDim.h:128