Crazy Eddies GUI System 0.7.5
CEGUIItemListBaseProperties.h
00001 /***********************************************************************
00002         filename:       CEGUIItemListBaseProperties.h
00003         created:        5/4/2005
00004         author:         Tomas Lindquist Olsen (based on code by Paul D Turner)
00005 *************************************************************************/
00006 /***************************************************************************
00007  *   Copyright (C) 2004 - 2006 Paul D Turner & The CEGUI Development Team
00008  *
00009  *   Permission is hereby granted, free of charge, to any person obtaining
00010  *   a copy of this software and associated documentation files (the
00011  *   "Software"), to deal in the Software without restriction, including
00012  *   without limitation the rights to use, copy, modify, merge, publish,
00013  *   distribute, sublicense, and/or sell copies of the Software, and to
00014  *   permit persons to whom the Software is furnished to do so, subject to
00015  *   the following conditions:
00016  *
00017  *   The above copyright notice and this permission notice shall be
00018  *   included in all copies or substantial portions of the Software.
00019  *
00020  *   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
00021  *   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
00022  *   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
00023  *   IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
00024  *   OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
00025  *   ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
00026  *   OTHER DEALINGS IN THE SOFTWARE.
00027  ***************************************************************************/
00028 #ifndef _CEGUIItemListBaseProperties_h_
00029 #define _CEGUIItemListBaseProperties_h_
00030 
00031 #include "../CEGUIProperty.h"
00032 
00033 // Start of CEGUI namespace section
00034 namespace CEGUI
00035 {
00036 // Start of ItemListBaseProperties namespace section
00041 namespace ItemListBaseProperties
00042 {
00055     class AutoResizeEnabled : public Property
00056     {
00057     public:
00058             AutoResizeEnabled() : Property(
00059                     "AutoResizeEnabled",
00060                     "Property to get/set the state of the auto resizing enabled setting for the ItemListBase.  Value is either \"True\" or \"False\".",
00061                     "False")
00062             {}
00063 
00064             String      get(const PropertyReceiver* receiver) const;
00065             void        set(PropertyReceiver* receiver, const String& value);
00066     };
00067 
00080     class SortEnabled : public Property
00081     {
00082     public:
00083         SortEnabled() : Property(
00084             "SortEnabled",
00085             "Property to get/set the state of the sorting enabled setting for the ItemListBase.  Value is either \"True\" or \"False\".",
00086             "False")
00087         {}
00088 
00089         String  get(const PropertyReceiver* receiver) const;
00090         void    set(PropertyReceiver* receiver, const String& value);
00091     };
00092 
00108     class SortMode : public Property
00109     {
00110     public:
00111         SortMode() : Property(
00112             "SortMode",
00113             "Property to get/set the sorting mode for the ItemListBase.  Value is either \"Ascending\", \"Descending\" or \"UserSort\".",
00114             "Ascending")
00115         {}
00116 
00117         String  get(const PropertyReceiver* receiver) const;
00118         void    set(PropertyReceiver* receiver, const String& value);
00119     };
00120 
00121 } // End of  ItemListBaseProperties namespace section
00122 } // End of  CEGUI namespace section
00123 
00124 #endif  // end of guard _CEGUIItemListBaseProperties_h_