# CEGUIMenuBaseProperties.h

    00001 /************************************************************************
    00002         filename:       CEGUIMenuBaseProperties.h
    00003         created:        5/4/2005
    00004         author:         Tomas Lindquist Olsen (based on code by Paul D Turner)
    00005 *************************************************************************/
    00006 /*************************************************************************
    00007     Crazy Eddie's GUI System (http://www.cegui.org.uk)
    00008     Copyright (C)2004 - 2005 Paul D Turner (paul@cegui.org.uk)
    00009
    00010     This library is free software; you can redistribute it and/or
    00011     modify it under the terms of the GNU Lesser General Public
    00012     License as published by the Free Software Foundation; either
    00013     version 2.1 of the License, or (at your option) any later version.
    00014
    00015     This library is distributed in the hope that it will be useful,
    00016     but WITHOUT ANY WARRANTY; without even the implied warranty of
    00017     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
    00018     Lesser General Public License for more details.
    00019
    00020     You should have received a copy of the GNU Lesser General Public
    00021     License along with this library; if not, write to the Free Software
    00022     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
    00023 *************************************************************************/
    00024 #ifndef _CEGUIMenuBaseProperties_h_
    00025 #define _CEGUIMenuBaseProperties_h_
    00026
    00027 #include "CEGUIProperty.h"
    00028
    00029 // Start of CEGUI namespace section
    00030 namespace CEGUI
    00031 {
    00032 // Start of ItemListBaseProperties namespace section
    00033 namespace MenuBaseProperties
    00034 {
    00035
    00047 class ItemSpacing : public Property
    00048 {
    00049 public:
    00050         ItemSpacing() : Property(
    00051                 "ItemSpacing",
    00052                 "Property to get/set the item spacing of the menu.  Value is a float.",
    00053                 "10.000000")
    00054         {}
    00055
    00056         String  get(const PropertyReceiver* receiver) const;
    00057         void    set(PropertyReceiver* receiver, const String& value);
    00058 };
    00059
    00060
    00072 class HorzPadding : public Property
    00073 {
    00074 public:
    00075         HorzPadding() : Property(
    00076                 "HorzPadding",
    00077                 "Property to get/set the horizontal padding of the menu.  Value is a float.",
    00078                 "3.000000")
    00079         {}
    00080
    00081         String  get(const PropertyReceiver* receiver) const;
    00082         void    set(PropertyReceiver* receiver, const String& value);
    00083 };
    00084
    00085
    00097 class VertPadding : public Property
    00098 {
    00099 public:
    00100         VertPadding() : Property(
    00101                 "VertPadding",
    00102                 "Property to get/set the vertical padding of the menu.  Value is a float.",
    00103                 "3.000000")
    00104         {}
    00105
    00106         String  get(const PropertyReceiver* receiver) const;
    00107         void    set(PropertyReceiver* receiver, const String& value);
    00108 };
    00109
    00110
    00122 class BorderWidth : public Property
    00123 {
    00124 public:
    00125         BorderWidth() : Property(
    00126                 "BorderWidth",
    00127                 "Property to get/set the border width of the menu.  Value is a float.",
    00128                 "5.000000")
    00129         {}
    00130
    00131         String  get(const PropertyReceiver* receiver) const;
    00132         void    set(PropertyReceiver* receiver, const String& value);
    00133 };
    00134
    00135
    00147 class BackgroundColours : public Property
    00148 {
    00149 public:
    00150         BackgroundColours() : Property(
    00151                 "BackgroundColours",
    00152                 "Property to get/set the background colours of the menu.  Value is a ColourRect.",
    00153                 "tl:FFFFFFFF tr:FFFFFFFF bl:FFFFFFFF br:FFFFFFFF")
    00154         {}
    00155
    00156         String  get(const PropertyReceiver* receiver) const;
    00157         void    set(PropertyReceiver* receiver, const String& value);
    00158 };
    00159
    00160
    00173 class AllowMultiplePopups : public Property
    00174 {
    00175 public:
    00176     AllowMultiplePopups() : Property(
    00177             "AllowMultiplePopups",
    00178             "Property to get/set the state of the allow multiple popups setting for the menu.  Value is either \"True\" or \"False\".",
    00179             "False")
    00180     {}
    00181
    00182     String      get(const PropertyReceiver* receiver) const;
    00183     void        set(PropertyReceiver* receiver, const String& value);
    00184 };
    00185
    00186 } // End of  MenuBaseProperties namespace section
    00187 } // End of  CEGUI namespace section
    00188
    00189 #endif  // end of guard _CEGUIMenuBaseProperties_h_