CEGUIWindowProperties.h

00001 /***********************************************************************
00002         filename:       CEGUIWindowProperties.h
00003         created:        5/7/2004
00004         author:         Paul D Turner
00005         
00006         purpose:        Interface to available window base class properties
00007 *************************************************************************/
00008 /***************************************************************************
00009  *   Copyright (C) 2004 - 2006 Paul D Turner & The CEGUI Development Team
00010  *
00011  *   Permission is hereby granted, free of charge, to any person obtaining
00012  *   a copy of this software and associated documentation files (the
00013  *   "Software"), to deal in the Software without restriction, including
00014  *   without limitation the rights to use, copy, modify, merge, publish,
00015  *   distribute, sublicense, and/or sell copies of the Software, and to
00016  *   permit persons to whom the Software is furnished to do so, subject to
00017  *   the following conditions:
00018  *
00019  *   The above copyright notice and this permission notice shall be
00020  *   included in all copies or substantial portions of the Software.
00021  *
00022  *   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
00023  *   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
00024  *   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
00025  *   IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
00026  *   OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
00027  *   ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
00028  *   OTHER DEALINGS IN THE SOFTWARE.
00029  ***************************************************************************/
00030 #ifndef _CEGUIWindowProperties_h_
00031 #define _CEGUIWindowProperties_h_
00032 
00033 #include "CEGUIProperty.h"
00034 #include "CEGUIXMLSerializer.h" 
00035 
00036 // Start of CEGUI namespace section
00037 namespace CEGUI
00038 {
00039 
00040 // Start of WindowProperties namespace section
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 
00609 class InheritsTooltipText : public Property
00610 {
00611 public:
00612     InheritsTooltipText() : Property(
00613         "InheritsTooltipText",
00614         "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\".",
00615         "False")
00616     {}
00617 
00618     String  get(const PropertyReceiver* receiver) const;
00619     void    set(PropertyReceiver* receiver, const String& value);
00620 };
00621 
00622 
00635 class RiseOnClick : public Property
00636 {
00637 public:
00638     RiseOnClick() : Property(
00639                 "RiseOnClick",
00640                 "Property to get/set whether the window will come tot he top of the z order hwn clicked.  Value is either \"True\" or \"False\".",
00641                 "True")
00642         {}
00643 
00644         String  get(const PropertyReceiver* receiver) const;
00645         void    set(PropertyReceiver* receiver, const String& value);
00646 };
00647 
00648 
00662 class VerticalAlignment : public Property
00663 {
00664     public:
00665         VerticalAlignment() : Property(
00666         "VerticalAlignment",
00667         "Property to get/set the windows vertical alignment.  Value is one of \"Top\", \"Centre\" or \"Bottom\".",
00668         "Top")
00669         {}
00670 
00671         String  get(const PropertyReceiver* receiver) const;
00672         void    set(PropertyReceiver* receiver, const String& value);
00673 };
00674 
00675 
00689 class HorizontalAlignment : public Property
00690 {
00691     public:
00692         HorizontalAlignment() : Property(
00693         "HorizontalAlignment",
00694         "Property to get/set the windows horizontal alignment.  Value is one of \"Left\", \"Centre\" or \"Right\".",
00695         "Left")
00696         {}
00697 
00698         String  get(const PropertyReceiver* receiver) const;
00699         void    set(PropertyReceiver* receiver, const String& value);
00700 };
00701 
00702 
00721 class UnifiedAreaRect : public Property
00722 {
00723         public:
00724                 UnifiedAreaRect() : Property(
00725                 "UnifiedAreaRect",
00726                 "Property to get/set the windows unified area rectangle.  Value is a \"URect\".",
00727                 "{{0,0},{0,0},{0,0},{0,0}}")
00728                 {}
00729 
00730                 String  get(const PropertyReceiver* receiver) const;
00731                 void    set(PropertyReceiver* receiver, const String& value);
00732 };
00733 
00734 
00749 class UnifiedPosition : public Property
00750 {
00751         public:
00752                 UnifiedPosition() : Property(
00753                 "UnifiedPosition",
00754                 "Property to get/set the windows unified position.  Value is a \"UVector2\".",
00755                 "{{0,0},{0,0}}", false)
00756                 {}
00757 
00758                 String  get(const PropertyReceiver* receiver) const;
00759                 void    set(PropertyReceiver* receiver, const String& value);
00760 };
00761 
00762 
00775 class UnifiedXPosition : public Property
00776 {
00777         public:
00778                 UnifiedXPosition() : Property(
00779                 "UnifiedXPosition",
00780                 "Property to get/set the windows unified position x-coordinate.  Value is a \"UDim\".",
00781                 "{0,0}", false)
00782                 {}
00783 
00784                 String  get(const PropertyReceiver* receiver) const;
00785                 void    set(PropertyReceiver* receiver, const String& value);
00786 };
00787 
00788 
00801 class UnifiedYPosition : public Property
00802 {
00803         public:
00804                 UnifiedYPosition() : Property(
00805                 "UnifiedYPosition",
00806                 "Property to get/set the windows unified position y-coordinate.  Value is a \"UDim\".",
00807                 "{0,0}", false)
00808                 {}
00809 
00810                 String  get(const PropertyReceiver* receiver) const;
00811                 void    set(PropertyReceiver* receiver, const String& value);
00812 };
00813 
00814 
00829 class UnifiedSize : public Property
00830 {
00831         public:
00832                 UnifiedSize() : Property(
00833                 "UnifiedSize",
00834                 "Property to get/set the windows unified size.  Value is a \"UVector2\".",
00835                 "{{0,0},{0,0}}", false)
00836                 {}
00837 
00838                 String  get(const PropertyReceiver* receiver) const;
00839                 void    set(PropertyReceiver* receiver, const String& value);
00840 };
00841 
00842 
00855 class UnifiedWidth : public Property
00856 {
00857         public:
00858                 UnifiedWidth() : Property(
00859                 "UnifiedWidth",
00860                 "Property to get/set the windows unified width.  Value is a \"UDim\".",
00861                 "{0,0}", false)
00862                 {}
00863 
00864                 String  get(const PropertyReceiver* receiver) const;
00865                 void    set(PropertyReceiver* receiver, const String& value);
00866 };
00867 
00868 
00881 class UnifiedHeight : public Property
00882 {
00883         public:
00884                 UnifiedHeight() : Property(
00885                 "UnifiedHeight",
00886                 "Property to get/set the windows unified height.  Value is a \"UDim\".",
00887                 "{0,0}", false)
00888                 {}
00889 
00890                 String  get(const PropertyReceiver* receiver) const;
00891                 void    set(PropertyReceiver* receiver, const String& value);
00892 };
00893 
00894 
00909 class UnifiedMinSize : public Property
00910 {
00911         public:
00912                 UnifiedMinSize() : Property(
00913                 "UnifiedMinSize",
00914                 "Property to get/set the windows unified minimum size.  Value is a \"UVector2\".",
00915                 "{{0,0},{0,0}}")
00916                 {}
00917 
00918                 String  get(const PropertyReceiver* receiver) const;
00919                 void    set(PropertyReceiver* receiver, const String& value);
00920 };
00921 
00922 
00937 class UnifiedMaxSize : public Property
00938 {
00939         public:
00940                 UnifiedMaxSize() : Property(
00941                 "UnifiedMaxSize",
00942                 "Property to get/set the windows unified maximum size.  Value is a \"UVector2\".",
00943                 "{{0,0},{0,0}}")
00944                 {}
00945 
00946                 String  get(const PropertyReceiver* receiver) const;
00947                 void    set(PropertyReceiver* receiver, const String& value);
00948 };
00949 
00950 
00963 class MousePassThroughEnabled : public Property
00964 {
00965     public:
00966         MousePassThroughEnabled() : Property(
00967         "MousePassThroughEnabled",
00968         "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\".",
00969         "False")
00970         {}
00971 
00972         String  get(const PropertyReceiver* receiver) const;
00973         void    set(PropertyReceiver* receiver, const String& value);
00974 };
00975 
00976 
00987 class WindowRenderer : public Property
00988 {
00989     public:
00990         WindowRenderer() : Property(
00991         "WindowRenderer",
00992         "Property to get/set the windows assigned window renderer objects name.  Value is a string.",
00993         "")
00994         {}
00995 
00996         String  get(const PropertyReceiver* receiver) const;
00997         void    set(PropertyReceiver* receiver, const String& value);
00998 
00999         void writeXMLToStream(const PropertyReceiver* receiver, XMLSerializer& xml_stream) const;
01000 };
01001 
01002 
01013 class LookNFeel : public Property
01014 {
01015     public:
01016         LookNFeel() : Property(
01017         "LookNFeel",
01018         "Property to get/set the windows assigned look'n'feel.  Value is a string.",
01019         "")
01020         {}
01021 
01022         String  get(const PropertyReceiver* receiver) const;
01023         void    set(PropertyReceiver* receiver, const String& value);
01024 
01025         void writeXMLToStream(const PropertyReceiver* receiver, XMLSerializer& xml_stream) const;
01026 };
01027 
01041 class DragDropTarget : public Property
01042 {
01043 public:
01044     DragDropTarget() : Property(
01045         "DragDropTarget",
01046         "Property to get/set whether the Window will receive drag and drop related notifications.  Value is either \"True\" or \"False\".",
01047         "True")
01048     {}
01049 
01050     String get(const PropertyReceiver* receiver) const;
01051     void set(PropertyReceiver* receiver, const String& value);
01052 };
01053 
01054 
01055 } // End of  WindowProperties namespace section
01056 
01057 
01058 } // End of  CEGUI namespace section
01059 
01060 #endif  // end of guard _CEGUIWindowProperties_h_

Generated on Sat Jun 28 14:35:44 2008 for Crazy Eddies GUI System by  doxygen 1.5.4