[1812] | 1 | /************************************************************************
|
---|
| 2 | filename: CEGUIThumbProperties.h
|
---|
| 3 | created: 10/7/2004
|
---|
| 4 | author: Paul D Turner
|
---|
| 5 |
|
---|
| 6 | purpose: Interface for Thumb properties
|
---|
| 7 | *************************************************************************/
|
---|
| 8 | /*************************************************************************
|
---|
| 9 | Crazy Eddie's GUI System (http://www.cegui.org.uk)
|
---|
| 10 | Copyright (C)2004 - 2005 Paul D Turner (paul@cegui.org.uk)
|
---|
| 11 |
|
---|
| 12 | This library is free software; you can redistribute it and/or
|
---|
| 13 | modify it under the terms of the GNU Lesser General Public
|
---|
| 14 | License as published by the Free Software Foundation; either
|
---|
| 15 | version 2.1 of the License, or (at your option) any later version.
|
---|
| 16 |
|
---|
| 17 | This library is distributed in the hope that it will be useful,
|
---|
| 18 | but WITHOUT ANY WARRANTY; without even the implied warranty of
|
---|
| 19 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
---|
| 20 | Lesser General Public License for more details.
|
---|
| 21 |
|
---|
| 22 | You should have received a copy of the GNU Lesser General Public
|
---|
| 23 | License along with this library; if not, write to the Free Software
|
---|
| 24 | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
---|
| 25 | *************************************************************************/
|
---|
| 26 | #ifndef _CEGUIThumbProperties_h_
|
---|
| 27 | #define _CEGUIThumbProperties_h_
|
---|
| 28 |
|
---|
| 29 | #include "CEGUIProperty.h"
|
---|
| 30 |
|
---|
| 31 |
|
---|
| 32 | // Start of CEGUI namespace section
|
---|
| 33 | namespace CEGUI
|
---|
| 34 | {
|
---|
| 35 |
|
---|
| 36 | // Start of ThumbProperties namespace section
|
---|
| 37 | /*!
|
---|
| 38 | \brief
|
---|
| 39 | Namespace containing all classes that make up the properties interface for the Thumb class
|
---|
| 40 | */
|
---|
| 41 | namespace ThumbProperties
|
---|
| 42 | {
|
---|
| 43 | /*!
|
---|
| 44 | \brief
|
---|
| 45 | Property to access the state of the "hot-tracked" setting for the thumb.
|
---|
| 46 |
|
---|
| 47 | \par Usage:
|
---|
| 48 | - Name: HotTracked
|
---|
| 49 | - Format: "[text]".
|
---|
| 50 |
|
---|
| 51 | \par Where [Text] is:
|
---|
| 52 | - "True" to indicate the thumb will send notifications as it is dragged.
|
---|
| 53 | - "False" to indicate the thumb will only notify once, when it is released.
|
---|
| 54 | */
|
---|
| 55 | class HotTracked : public Property
|
---|
| 56 | {
|
---|
| 57 | public:
|
---|
| 58 | HotTracked() : Property(
|
---|
| 59 | "HotTracked",
|
---|
| 60 | "Property to get/set the state of the state of the 'hot-tracked' setting for the thumb. Value is either \"True\" or \"False\".",
|
---|
| 61 | "True")
|
---|
| 62 | {}
|
---|
| 63 |
|
---|
| 64 | String get(const PropertyReceiver* receiver) const;
|
---|
| 65 | void set(PropertyReceiver* receiver, const String& value);
|
---|
| 66 | };
|
---|
| 67 |
|
---|
| 68 |
|
---|
| 69 | /*!
|
---|
| 70 | \brief
|
---|
| 71 | Property to access the state the setting to free the thumb vertically.
|
---|
| 72 |
|
---|
| 73 | \par Usage:
|
---|
| 74 | - Name: VertFree
|
---|
| 75 | - Format: "[text]".
|
---|
| 76 |
|
---|
| 77 | \par Where [Text] is:
|
---|
| 78 | - "True" to indicate the thumb will be free (movable) vertically.
|
---|
| 79 | - "False" to indicate the thumb will be fixed vertically.
|
---|
| 80 | */
|
---|
| 81 | class VertFree : public Property
|
---|
| 82 | {
|
---|
| 83 | public:
|
---|
| 84 | VertFree() : Property(
|
---|
| 85 | "VertFree",
|
---|
| 86 | "Property to get/set the state the setting to free the thumb vertically. Value is either \"True\" or \"False\".",
|
---|
| 87 | "False")
|
---|
| 88 | {}
|
---|
| 89 |
|
---|
| 90 | String get(const PropertyReceiver* receiver) const;
|
---|
| 91 | void set(PropertyReceiver* receiver, const String& value);
|
---|
| 92 | };
|
---|
| 93 |
|
---|
| 94 |
|
---|
| 95 | /*!
|
---|
| 96 | \brief
|
---|
| 97 | Property to access the state the setting to free the thumb horizontally.
|
---|
| 98 |
|
---|
| 99 | \par Usage:
|
---|
| 100 | - Name: HorzFree
|
---|
| 101 | - Format: "[text]".
|
---|
| 102 |
|
---|
| 103 | \par Where [Text] is:
|
---|
| 104 | - "True" to indicate the thumb will be free (movable) horizontally.
|
---|
| 105 | - "False" to indicate the thumb will be fixed horizontally.
|
---|
| 106 | */
|
---|
| 107 | class HorzFree : public Property
|
---|
| 108 | {
|
---|
| 109 | public:
|
---|
| 110 | HorzFree() : Property(
|
---|
| 111 | "HorzFree",
|
---|
| 112 | "Property to get/set the state the setting to free the thumb horizontally. Value is either \"True\" or \"False\".",
|
---|
| 113 | "False")
|
---|
| 114 | {}
|
---|
| 115 |
|
---|
| 116 | String get(const PropertyReceiver* receiver) const;
|
---|
| 117 | void set(PropertyReceiver* receiver, const String& value);
|
---|
| 118 | };
|
---|
| 119 |
|
---|
| 120 |
|
---|
| 121 | /*!
|
---|
| 122 | \brief
|
---|
| 123 | Property to access the vertical movement range for the thumb.
|
---|
| 124 |
|
---|
| 125 | \par Usage:
|
---|
| 126 | - Name: VertRange
|
---|
| 127 | - Format: "min:[float] max:[float]".
|
---|
| 128 |
|
---|
| 129 | \par Where:
|
---|
| 130 | - min:[float] specifies the minimum vertical setting (position) for the thumb, specified using the active metrics system for the window.
|
---|
| 131 | - max:[float] specifies the maximum vertical setting (position) for the thumb, specified using the active metrics system for the window.
|
---|
| 132 | */
|
---|
| 133 | class VertRange : public Property
|
---|
| 134 | {
|
---|
| 135 | public:
|
---|
| 136 | VertRange() : Property(
|
---|
| 137 | "VertRange",
|
---|
| 138 | "Property to get/set the vertical movement range for the thumb. Value is \"min:[float] max:[float]\".",
|
---|
| 139 | "min:0.000000 max:1.000000")
|
---|
| 140 | {}
|
---|
| 141 |
|
---|
| 142 | String get(const PropertyReceiver* receiver) const;
|
---|
| 143 | void set(PropertyReceiver* receiver, const String& value);
|
---|
| 144 | };
|
---|
| 145 |
|
---|
| 146 |
|
---|
| 147 | /*!
|
---|
| 148 | \brief
|
---|
| 149 | Property to access the horizontal movement range for the thumb.
|
---|
| 150 |
|
---|
| 151 | \par Usage:
|
---|
| 152 | - Name: HorzRange
|
---|
| 153 | - Format: "min:[float] max:[float]".
|
---|
| 154 |
|
---|
| 155 | \par Where:
|
---|
| 156 | - min:[float] specifies the minimum horizontal setting (position) for the thumb, specified using the active metrics system for the window.
|
---|
| 157 | - max:[float] specifies the maximum horizontal setting (position) for the thumb, specified using the active metrics system for the window.
|
---|
| 158 | */
|
---|
| 159 | class HorzRange : public Property
|
---|
| 160 | {
|
---|
| 161 | public:
|
---|
| 162 | HorzRange() : Property(
|
---|
| 163 | "HorzRange",
|
---|
| 164 | "Property to get/set the horizontal movement range for the thumb. Value is \"min:[float] max:[float]\".",
|
---|
| 165 | "min:0.000000 max:1.000000")
|
---|
| 166 | {}
|
---|
| 167 |
|
---|
| 168 | String get(const PropertyReceiver* receiver) const;
|
---|
| 169 | void set(PropertyReceiver* receiver, const String& value);
|
---|
| 170 | };
|
---|
| 171 |
|
---|
| 172 |
|
---|
| 173 | } // End of ThumbProperties namespace section
|
---|
| 174 |
|
---|
| 175 | } // End of CEGUI namespace section
|
---|
| 176 |
|
---|
| 177 |
|
---|
| 178 | #endif // end of guard _CEGUIThumbProperties_h_
|
---|