00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030 #ifndef _CEGUIWindowProperties_h_
00031 #define _CEGUIWindowProperties_h_
00032
00033 #include "CEGUIProperty.h"
00034 #include "CEGUIXMLSerializer.h"
00035
00036
00037 namespace CEGUI
00038 {
00039
00040
00045 namespace WindowProperties
00046 {
00060 class ID : public Property
00061 {
00062 public:
00063 ID() : Property(
00064 "ID",
00065 "Property to get/set the ID value of the Window. Value is an unsigned integer number.",
00066 "0")
00067 {}
00068
00069 String get(const PropertyReceiver* receiver) const;
00070 void set(PropertyReceiver* receiver, const String& value);
00071 };
00072
00073
00087 class Alpha : public Property
00088 {
00089 public:
00090 Alpha() : Property(
00091 "Alpha",
00092 "Property to get/set the alpha value of the Window. Value is floating point number.",
00093 "1")
00094 {}
00095
00096 String get(const PropertyReceiver* receiver) const;
00097 void set(PropertyReceiver* receiver, const String& value);
00098 };
00099
00100
00114 class Font : public Property
00115 {
00116 public:
00117 Font() : Property(
00118 "Font",
00119 "Property to get/set the font for the Window. Value is the name of the font to use (must be loaded already).",
00120 "")
00121 {}
00122
00123 String get(const PropertyReceiver* receiver) const;
00124 void set(PropertyReceiver* receiver, const String& value);
00125 bool isDefault(const PropertyReceiver* receiver) const;
00126 };
00127
00128
00142 class Text : public Property
00143 {
00144 public:
00145 Text() : Property(
00146 "Text",
00147 "Property to get/set the text / caption for the Window. Value is the text string to use.",
00148 "")
00149 {}
00150
00151 String get(const PropertyReceiver* receiver) const;
00152 void set(PropertyReceiver* receiver, const String& value);
00153 };
00154
00155
00170 class MouseCursorImage : public Property
00171 {
00172 public:
00173 MouseCursorImage() : Property(
00174 "MouseCursorImage",
00175 "Property to get/set the mouse cursor image for the Window. Value should be \"set:<imageset name> image:<image name>\".",
00176 "")
00177 {}
00178
00179 String get(const PropertyReceiver* receiver) const;
00180 void set(PropertyReceiver* receiver, const String& value);
00181 bool isDefault(const PropertyReceiver* receiver) const;
00182 };
00183
00184
00199 class ClippedByParent : public Property
00200 {
00201 public:
00202 ClippedByParent() : Property(
00203 "ClippedByParent",
00204 "Property to get/set the 'clipped by parent' setting for the Window. Value is either \"True\" or \"False\".",
00205 "True")
00206 {}
00207
00208 String get(const PropertyReceiver* receiver) const;
00209 void set(PropertyReceiver* receiver, const String& value);
00210 };
00211
00212
00227 class InheritsAlpha : public Property
00228 {
00229 public:
00230 InheritsAlpha() : Property(
00231 "InheritsAlpha",
00232 "Property to get/set the 'inherits alpha' setting for the Window. Value is either \"True\" or \"False\".",
00233 "True")
00234 {}
00235
00236 String get(const PropertyReceiver* receiver) const;
00237 void set(PropertyReceiver* receiver, const String& value);
00238 };
00239
00240
00255 class AlwaysOnTop : public Property
00256 {
00257 public:
00258 AlwaysOnTop() : Property(
00259 "AlwaysOnTop",
00260 "Property to get/set the 'always on top' setting for the Window. Value is either \"True\" or \"False\".",
00261 "False")
00262 {}
00263
00264 String get(const PropertyReceiver* receiver) const;
00265 void set(PropertyReceiver* receiver, const String& value);
00266 };
00267
00268
00283 class Disabled : public Property
00284 {
00285 public:
00286 Disabled() : Property(
00287 "Disabled",
00288 "Property to get/set the 'disabled state' setting for the Window. Value is either \"True\" or \"False\".",
00289 "False")
00290 {}
00291
00292 String get(const PropertyReceiver* receiver) const;
00293 void set(PropertyReceiver* receiver, const String& value);
00294 bool isDefault(const PropertyReceiver* receiver) const;
00295 };
00296
00297
00312 class Visible : public Property
00313 {
00314 public:
00315 Visible() : Property(
00316 "Visible",
00317 "Property to get/set the 'visible state' setting for the Window. Value is either \"True\" or \"False\".",
00318 "True")
00319 {}
00320
00321 String get(const PropertyReceiver* receiver) const;
00322 void set(PropertyReceiver* receiver, const String& value);
00323 bool isDefault(const PropertyReceiver* receiver) const;
00324 };
00325
00326
00342 class RestoreOldCapture : public Property
00343 {
00344 public:
00345 RestoreOldCapture() : Property(
00346 "RestoreOldCapture",
00347 "Property to get/set the 'restore old capture' setting for the Window. Value is either \"True\" or \"False\".",
00348 "False")
00349 {}
00350
00351 String get(const PropertyReceiver* receiver) const;
00352 void set(PropertyReceiver* receiver, const String& value);
00353 };
00354
00355
00370 class DestroyedByParent : public Property
00371 {
00372 public:
00373 DestroyedByParent() : Property(
00374 "DestroyedByParent",
00375 "Property to get/set the 'destroyed by parent' setting for the Window. Value is either \"True\" or \"False\".",
00376 "True")
00377 {}
00378
00379 String get(const PropertyReceiver* receiver) const;
00380 void set(PropertyReceiver* receiver, const String& value);
00381 };
00382
00383
00398 class ZOrderChangeEnabled : public Property
00399 {
00400 public:
00401 ZOrderChangeEnabled() : Property(
00402 "ZOrderChangeEnabled",
00403 "Property to get/set the 'z-order changing enabled' setting for the Window. Value is either \"True\" or \"False\".",
00404 "True")
00405 {}
00406
00407 String get(const PropertyReceiver* receiver) const;
00408 void set(PropertyReceiver* receiver, const String& value);
00409 };
00410
00411
00427 class WantsMultiClickEvents : public Property
00428 {
00429 public:
00430 WantsMultiClickEvents() : Property(
00431 "WantsMultiClickEvents",
00432 "Property to get/set whether the window will receive double-click and triple-click events. Value is either \"True\" or \"False\".",
00433 "True")
00434 {}
00435
00436 String get(const PropertyReceiver* receiver) const;
00437 void set(PropertyReceiver* receiver, const String& value);
00438 };
00439
00440
00456 class MouseButtonDownAutoRepeat : public Property
00457 {
00458 public:
00459 MouseButtonDownAutoRepeat() : Property(
00460 "MouseButtonDownAutoRepeat",
00461 "Property to get/set whether the window will receive autorepeat mouse button down events. Value is either \"True\" or \"False\".",
00462 "False")
00463 {}
00464
00465 String get(const PropertyReceiver* receiver) const;
00466 void set(PropertyReceiver* receiver, const String& value);
00467 };
00468
00469
00483 class AutoRepeatDelay : public Property
00484 {
00485 public:
00486 AutoRepeatDelay() : Property(
00487 "AutoRepeatDelay",
00488 "Property to get/set the autorepeat delay. Value is a floating point number indicating the delay required in seconds.",
00489 "0.3")
00490 {}
00491
00492 String get(const PropertyReceiver* receiver) const;
00493 void set(PropertyReceiver* receiver, const String& value);
00494 };
00495
00496
00510 class AutoRepeatRate : public Property
00511 {
00512 public:
00513 AutoRepeatRate() : Property(
00514 "AutoRepeatRate",
00515 "Property to get/set the autorepeat rate. Value is a floating point number indicating the rate required in seconds.",
00516 "0.06")
00517 {}
00518
00519 String get(const PropertyReceiver* receiver) const;
00520 void set(PropertyReceiver* receiver, const String& value);
00521 };
00522
00536 class DistributeCapturedInputs : public Property
00537 {
00538 public:
00539 DistributeCapturedInputs() : Property(
00540 "DistributeCapturedInputs",
00541 "Property to get/set whether captured inputs are passed to child windows. Value is either \"True\" or \"False\".",
00542 "False")
00543 {}
00544
00545 String get(const PropertyReceiver* receiver) const;
00546 void set(PropertyReceiver* receiver, const String& value);
00547 };
00548
00560 class CustomTooltipType : public Property
00561 {
00562 public:
00563 CustomTooltipType() : Property(
00564 "CustomTooltipType",
00565 "Property to get/set the custom tooltip for the window. Value is the type name of the custom tooltip.",
00566 "")
00567 {}
00568
00569 String get(const PropertyReceiver* receiver) const;
00570 void set(PropertyReceiver* receiver, const String& value);
00571 };
00572
00584 class Tooltip : public Property
00585 {
00586 public:
00587 Tooltip() : Property(
00588 "Tooltip",
00589 "Property to get/set the tooltip text for the window. Value is the tooltip text for the window.",
00590 "")
00591 {}
00592
00593 String get(const PropertyReceiver* receiver) const;
00594 void set(PropertyReceiver* receiver, const String& value);
00595 };
00596
00611 class InheritsTooltipText : public Property
00612 {
00613 public:
00614 InheritsTooltipText() : Property(
00615 "InheritsTooltipText",
00616 "Property to get/set whether the window inherits its parents tooltip text when it has none of its own. Value is either \"True\" or \"False\".",
00617 "True")
00618 {}
00619
00620 String get(const PropertyReceiver* receiver) const;
00621 void set(PropertyReceiver* receiver, const String& value);
00622 };
00623
00624
00637 class RiseOnClick : public Property
00638 {
00639 public:
00640 RiseOnClick() : Property(
00641 "RiseOnClick",
00642 "Property to get/set whether the window will come tot he top of the z order hwn clicked. Value is either \"True\" or \"False\".",
00643 "True")
00644 {}
00645
00646 String get(const PropertyReceiver* receiver) const;
00647 void set(PropertyReceiver* receiver, const String& value);
00648 };
00649
00650
00664 class VerticalAlignment : public Property
00665 {
00666 public:
00667 VerticalAlignment() : Property(
00668 "VerticalAlignment",
00669 "Property to get/set the windows vertical alignment. Value is one of \"Top\", \"Centre\" or \"Bottom\".",
00670 "Top")
00671 {}
00672
00673 String get(const PropertyReceiver* receiver) const;
00674 void set(PropertyReceiver* receiver, const String& value);
00675 };
00676
00677
00691 class HorizontalAlignment : public Property
00692 {
00693 public:
00694 HorizontalAlignment() : Property(
00695 "HorizontalAlignment",
00696 "Property to get/set the windows horizontal alignment. Value is one of \"Left\", \"Centre\" or \"Right\".",
00697 "Left")
00698 {}
00699
00700 String get(const PropertyReceiver* receiver) const;
00701 void set(PropertyReceiver* receiver, const String& value);
00702 };
00703
00704
00723 class UnifiedAreaRect : public Property
00724 {
00725 public:
00726 UnifiedAreaRect() : Property(
00727 "UnifiedAreaRect",
00728 "Property to get/set the windows unified area rectangle. Value is a \"URect\".",
00729 "{{0,0},{0,0},{0,0},{0,0}}")
00730 {}
00731
00732 String get(const PropertyReceiver* receiver) const;
00733 void set(PropertyReceiver* receiver, const String& value);
00734 };
00735
00736
00751 class UnifiedPosition : public Property
00752 {
00753 public:
00754 UnifiedPosition() : Property(
00755 "UnifiedPosition",
00756 "Property to get/set the windows unified position. Value is a \"UVector2\".",
00757 "{{0,0},{0,0}}", false)
00758 {}
00759
00760 String get(const PropertyReceiver* receiver) const;
00761 void set(PropertyReceiver* receiver, const String& value);
00762 };
00763
00764
00777 class UnifiedXPosition : public Property
00778 {
00779 public:
00780 UnifiedXPosition() : Property(
00781 "UnifiedXPosition",
00782 "Property to get/set the windows unified position x-coordinate. Value is a \"UDim\".",
00783 "{0,0}", false)
00784 {}
00785
00786 String get(const PropertyReceiver* receiver) const;
00787 void set(PropertyReceiver* receiver, const String& value);
00788 };
00789
00790
00803 class UnifiedYPosition : public Property
00804 {
00805 public:
00806 UnifiedYPosition() : Property(
00807 "UnifiedYPosition",
00808 "Property to get/set the windows unified position y-coordinate. Value is a \"UDim\".",
00809 "{0,0}", false)
00810 {}
00811
00812 String get(const PropertyReceiver* receiver) const;
00813 void set(PropertyReceiver* receiver, const String& value);
00814 };
00815
00816
00831 class UnifiedSize : public Property
00832 {
00833 public:
00834 UnifiedSize() : Property(
00835 "UnifiedSize",
00836 "Property to get/set the windows unified size. Value is a \"UVector2\".",
00837 "{{0,0},{0,0}}", false)
00838 {}
00839
00840 String get(const PropertyReceiver* receiver) const;
00841 void set(PropertyReceiver* receiver, const String& value);
00842 };
00843
00844
00857 class UnifiedWidth : public Property
00858 {
00859 public:
00860 UnifiedWidth() : Property(
00861 "UnifiedWidth",
00862 "Property to get/set the windows unified width. Value is a \"UDim\".",
00863 "{0,0}", false)
00864 {}
00865
00866 String get(const PropertyReceiver* receiver) const;
00867 void set(PropertyReceiver* receiver, const String& value);
00868 };
00869
00870
00883 class UnifiedHeight : public Property
00884 {
00885 public:
00886 UnifiedHeight() : Property(
00887 "UnifiedHeight",
00888 "Property to get/set the windows unified height. Value is a \"UDim\".",
00889 "{0,0}", false)
00890 {}
00891
00892 String get(const PropertyReceiver* receiver) const;
00893 void set(PropertyReceiver* receiver, const String& value);
00894 };
00895
00896
00911 class UnifiedMinSize : public Property
00912 {
00913 public:
00914 UnifiedMinSize() : Property(
00915 "UnifiedMinSize",
00916 "Property to get/set the windows unified minimum size. Value is a \"UVector2\".",
00917 "{{0,0},{0,0}}")
00918 {}
00919
00920 String get(const PropertyReceiver* receiver) const;
00921 void set(PropertyReceiver* receiver, const String& value);
00922 };
00923
00924
00939 class UnifiedMaxSize : public Property
00940 {
00941 public:
00942 UnifiedMaxSize() : Property(
00943 "UnifiedMaxSize",
00944 "Property to get/set the windows unified maximum size. Value is a \"UVector2\".",
00945 "{{1,0},{1,0}}")
00946 {}
00947
00948 String get(const PropertyReceiver* receiver) const;
00949 void set(PropertyReceiver* receiver, const String& value);
00950 };
00951
00952
00965 class MousePassThroughEnabled : public Property
00966 {
00967 public:
00968 MousePassThroughEnabled() : Property(
00969 "MousePassThroughEnabled",
00970 "Property to get/set whether the window ignores mouse events and pass them through to any windows behind it. Value is either \"True\" or \"False\".",
00971 "False")
00972 {}
00973
00974 String get(const PropertyReceiver* receiver) const;
00975 void set(PropertyReceiver* receiver, const String& value);
00976 };
00977
00978
00989 class WindowRenderer : public Property
00990 {
00991 public:
00992 WindowRenderer() : Property(
00993 "WindowRenderer",
00994 "Property to get/set the windows assigned window renderer objects name. Value is a string.",
00995 "")
00996 {}
00997
00998 String get(const PropertyReceiver* receiver) const;
00999 void set(PropertyReceiver* receiver, const String& value);
01000
01001 void writeXMLToStream(const PropertyReceiver* receiver, XMLSerializer& xml_stream) const;
01002 };
01003
01004
01015 class LookNFeel : public Property
01016 {
01017 public:
01018 LookNFeel() : Property(
01019 "LookNFeel",
01020 "Property to get/set the windows assigned look'n'feel. Value is a string.",
01021 "")
01022 {}
01023
01024 String get(const PropertyReceiver* receiver) const;
01025 void set(PropertyReceiver* receiver, const String& value);
01026
01027 void writeXMLToStream(const PropertyReceiver* receiver, XMLSerializer& xml_stream) const;
01028 };
01029
01043 class DragDropTarget : public Property
01044 {
01045 public:
01046 DragDropTarget() : Property(
01047 "DragDropTarget",
01048 "Property to get/set whether the Window will receive drag and drop related notifications. Value is either \"True\" or \"False\".",
01049 "True")
01050 {}
01051
01052 String get(const PropertyReceiver* receiver) const;
01053 void set(PropertyReceiver* receiver, const String& value);
01054 };
01055
01073 class AutoRenderingSurface : public Property
01074 {
01075 public:
01076 AutoRenderingSurface() : Property(
01077 "AutoRenderingSurface",
01078 "Property to get/set whether the Window will automatically attempt to "
01079 "use a full imagery caching RenderingSurface (if supported by the "
01080 "renderer). Here, full imagery caching usually will mean caching a "
01081 "window's representation onto a texture (although no such "
01082 "implementation requirement is specified.)"
01083 " Value is either \"True\" or \"False\".",
01084 "False")
01085 {}
01086
01087 String get(const PropertyReceiver* receiver) const;
01088 void set(PropertyReceiver* receiver, const String& value);
01089 };
01090
01107 class Rotation : public Property
01108 {
01109 public:
01110 Rotation() : Property(
01111 "Rotation",
01112 "Property to get/set the windows rotation factors. Value is "
01113 "\"x:[x_float] y:[y_float] z:[z_float]\".",
01114 "x:0 y:0 z:0")
01115 {}
01116
01117 String get(const PropertyReceiver* receiver) const;
01118 void set(PropertyReceiver* receiver, const String& value);
01119 };
01120
01133 class XRotation : public Property
01134 {
01135 public:
01136 XRotation() : Property(
01137 "XRotation",
01138 "Property to get/set the window's x axis rotation factor. Value is "
01139 "\"[float]\".",
01140 "0", false)
01141 {}
01142
01143 String get(const PropertyReceiver* receiver) const;
01144 void set(PropertyReceiver* receiver, const String& value);
01145 };
01146
01159 class YRotation : public Property
01160 {
01161 public:
01162 YRotation() : Property(
01163 "YRotation",
01164 "Property to get/set the window's y axis rotation factor. Value is "
01165 "\"[float]\".",
01166 "0", false)
01167 {}
01168
01169 String get(const PropertyReceiver* receiver) const;
01170 void set(PropertyReceiver* receiver, const String& value);
01171 };
01172
01185 class ZRotation : public Property
01186 {
01187 public:
01188 ZRotation() : Property(
01189 "ZRotation",
01190 "Property to get/set the window's z axis rotation factor. Value is "
01191 "\"[float]\".",
01192 "0", false)
01193 {}
01194
01195 String get(const PropertyReceiver* receiver) const;
01196 void set(PropertyReceiver* receiver, const String& value);
01197 };
01198
01213 class NonClient : public Property
01214 {
01215 public:
01216 NonClient() : Property(
01217 "NonClient",
01218 "Property to get/set the 'non-client' setting for the Window. "
01219 "Value is either \"True\" or \"False\".",
01220 "False")
01221 {}
01222
01223 String get(const PropertyReceiver* receiver) const;
01224 void set(PropertyReceiver* receiver, const String& value);
01225 };
01226
01244 class TextParsingEnabled : public Property
01245 {
01246 public:
01247 TextParsingEnabled() : Property(
01248 "TextParsingEnabled",
01249 "Property to get/set the text parsing setting for the Window. "
01250 "Value is either \"True\" or \"False\".",
01251 "True")
01252 {}
01253
01254 String get(const PropertyReceiver* receiver) const;
01255 void set(PropertyReceiver* receiver, const String& value);
01256 };
01257
01280 class Margin : public Property
01281 {
01282 public:
01283 Margin() : Property(
01284 "Margin",
01285 "Property to get/set margin for the Window. Value format:"
01286 "{top:{[tops],[topo]},left:{[lefts],[lefto]},bottom:{[bottoms],[bottomo]},right:{[rights],[righto]}}.",
01287 "{top:{0,0},left:{0,0},bottom:{0,0},right:{0,0}}")
01288 {}
01289
01290 String get(const PropertyReceiver* receiver) const;
01291 void set(PropertyReceiver* receiver, const String& value);
01292 };
01293
01308 class UpdateMode : public Property
01309 {
01310 public:
01311 UpdateMode() : Property(
01312 "UpdateMode",
01313 "Property to get/set the window update mode setting. "
01314 "Value is one of \"Always\", \"Never\" or \"Visible\".",
01315 "Visible")
01316 {}
01317
01318 String get(const PropertyReceiver* receiver) const;
01319 void set(PropertyReceiver* receiver, const String& value);
01320 };
01321
01337 class MouseInputPropagationEnabled : public Property
01338 {
01339 public:
01340 MouseInputPropagationEnabled() : Property(
01341 "MouseInputPropagationEnabled",
01342 "Property to get/set whether unhandled mouse inputs should be "
01343 "propagated back to the Window's parent. "
01344 "Value is either \"True\" or \"False\".",
01345 "False")
01346 {}
01347
01348 String get(const PropertyReceiver* receiver) const;
01349 void set(PropertyReceiver* receiver, const String& value);
01350 };
01351
01352 }
01353
01354
01355 }
01356
01357 #endif // end of guard _CEGUIWindowProperties_h_