CEGUIMultiColumnListProperties.h

00001 /***********************************************************************
00002         filename:       CEGUIMultiColumnListProperties.h
00003         created:        11/7/2004
00004         author:         Paul D Turner
00005         
00006         purpose:        Interface to multi-column list 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 _CEGUIMultiColumnListProperties_h_
00031 #define _CEGUIMultiColumnListProperties_h_
00032 
00033 #include "CEGUIProperty.h"
00034 
00035 
00036 // Start of CEGUI namespace section
00037 namespace CEGUI
00038 {
00039 
00040 // Start of MultiColumnListProperties namespace section
00045 namespace MultiColumnListProperties
00046 {
00059 class ColumnsSizable : public Property
00060 {
00061 public:
00062         ColumnsSizable() : Property(
00063                 "ColumnsSizable",
00064                 "Property to get/set the setting for user sizing of the column headers.  Value is either \"True\" or \"False\".",
00065                 "True")
00066         {}
00067 
00068         String  get(const PropertyReceiver* receiver) const;
00069         void    set(PropertyReceiver* receiver, const String& value);
00070 };
00071 
00072 
00085 class ColumnsMovable : public Property
00086 {
00087 public:
00088         ColumnsMovable() : Property(
00089                 "ColumnsMovable",
00090                 "Property to get/set the setting for user moving of the column headers.  Value is either \"True\" or \"False\".",
00091                 "True")
00092         {}
00093 
00094         String  get(const PropertyReceiver* receiver) const;
00095         void    set(PropertyReceiver* receiver, const String& value);
00096 };
00097 
00098 
00111 class SortSettingEnabled : public Property
00112 {
00113 public:
00114         SortSettingEnabled() : Property(
00115                 "SortSettingEnabled",
00116                 "Property to get/set the setting for for user modification of the sort column & direction.  Value is either \"True\" or \"False\".",
00117                 "True")
00118         {}
00119 
00120         String  get(const PropertyReceiver* receiver) const;
00121         void    set(PropertyReceiver* receiver, const String& value);
00122 };
00123 
00124 
00138 class SortDirection : public Property
00139 {
00140 public:
00141         SortDirection() : Property(
00142                 "SortDirection",
00143                 "Property to get/set the sort direction setting of the list.  Value is the text of one of the SortDirection enumerated value names.",
00144                 "None")
00145         {}
00146 
00147         String  get(const PropertyReceiver* receiver) const;
00148         void    set(PropertyReceiver* receiver, const String& value);
00149 };
00150 
00151 
00163 class SortColumnID : public Property
00164 {
00165 public:
00166         SortColumnID() : Property(
00167                 "SortColumnID",
00168                 "Property to get/set the current sort column (via ID code).  Value is an unsigned integer number.",
00169                 "0", false)
00170         {}
00171 
00172         String  get(const PropertyReceiver* receiver) const;
00173         void    set(PropertyReceiver* receiver, const String& value);
00174 };
00175 
00176 
00188 class NominatedSelectionColumnID : public Property
00189 {
00190 public:
00191         NominatedSelectionColumnID() : Property(
00192                 "NominatedSelectionColumnID",
00193                 "Property to get/set the nominated selection column (via ID).  Value is an unsigned integer number.",
00194                 "0")
00195         {}
00196 
00197         String  get(const PropertyReceiver* receiver) const;
00198         void    set(PropertyReceiver* receiver, const String& value);
00199 };
00200 
00201 
00213 class NominatedSelectionRow : public Property
00214 {
00215 public:
00216         NominatedSelectionRow() : Property(
00217                 "NominatedSelectionRow",
00218                 "Property to get/set the nominated selection row.  Value is an unsigned integer number.",
00219                 "0")
00220         {}
00221 
00222         String  get(const PropertyReceiver* receiver) const;
00223         void    set(PropertyReceiver* receiver, const String& value);
00224 };
00225 
00226 
00239 class ForceVertScrollbar : public Property
00240 {
00241 public:
00242         ForceVertScrollbar() : Property(
00243                 "ForceVertScrollbar",
00244                 "Property to get/set the 'always show' setting for the vertical scroll bar of the list box.  Value is either \"True\" or \"False\".",
00245                 "False")
00246         {}
00247 
00248         String  get(const PropertyReceiver* receiver) const;
00249         void    set(PropertyReceiver* receiver, const String& value);
00250 };
00251 
00252 
00265 class ForceHorzScrollbar : public Property
00266 {
00267 public:
00268         ForceHorzScrollbar() : Property(
00269                 "ForceHorzScrollbar",
00270                 "Property to get/set the 'always show' setting for the horizontal scroll bar of the list box.  Value is either \"True\" or \"False\".",
00271                 "False")
00272         {}
00273 
00274         String  get(const PropertyReceiver* receiver) const;
00275         void    set(PropertyReceiver* receiver, const String& value);
00276 };
00277 
00278 
00299 class SelectionMode : public Property
00300 {
00301 public:
00302         SelectionMode() : Property(
00303                 "SelectionMode",
00304                 "Property to get/set the selection mode setting of the list.  Value is the text of one of the SelectionMode enumerated value names.",
00305                 "RowSingle")
00306         {}
00307 
00308         String  get(const PropertyReceiver* receiver) const;
00309         void    set(PropertyReceiver* receiver, const String& value);
00310 };
00311 
00312 
00326 class ColumnHeader : public Property
00327 {
00328 public:
00329         ColumnHeader() : Property(
00330                 "ColumnHeader",
00331                 "Property to set up a column (there is no getter for this property)",
00332                 "", false)
00333         {}
00334 
00335         String  get(const PropertyReceiver* receiver) const;
00336         void    set(PropertyReceiver* receiver, const String& value);
00337 };
00338 
00347 class RowCount : public Property
00348 {
00349 public:
00350         RowCount() : Property(
00351                 "RowCount",
00352                 "Property to access the number of rows in the list (read only)",
00353                 "", false)
00354         {}
00355 
00356         String  get(const PropertyReceiver* receiver) const;
00357         void    set(PropertyReceiver* receiver, const String& value);
00358 };
00359 
00360 
00361 } // End of  MultiColumnListProperties namespace section
00362 
00363 } // End of  CEGUI namespace section
00364 
00365 
00366 #endif  // end of guard _CEGUIMultiColumnListProperties_h_

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