source: GTP/trunk/Lib/Geom/OgreStuff/include/CEGUI/elements/CEGUIScrollbarProperties.h @ 1809

Revision 1809, 4.5 KB checked in by gumbau, 18 years ago (diff)
Line 
1/************************************************************************
2        filename:       CEGUIScrollbarProperties.h
3        created:        10/7/2004
4        author:         Paul D Turner
5       
6        purpose:        Interface for Scrollbar 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 _CEGUIScrollbarProperties_h_
27#define _CEGUIScrollbarProperties_h_
28
29#include "CEGUIProperty.h"
30
31
32// Start of CEGUI namespace section
33namespace CEGUI
34{
35
36// Start of ScrollbarProperties namespace section
37/*!
38\brief
39        Namespace containing all classes that make up the properties interface for the Scrollbar class
40*/
41namespace ScrollbarProperties
42{
43/*!
44\brief
45        Property to access the document size for the Scrollbar.
46
47        \par Usage:
48                - Name: DocumentSize
49                - Format: "[float]".
50
51        \par Where:
52                - [float] specifies the size of the document being scrolled (as defined by the client code).
53*/
54class DocumentSize : public Property
55{
56public:
57        DocumentSize() : Property(
58                "DocumentSize",
59                "Property to get/set the document size for the Scrollbar.  Value is a float.",
60                "1.000000")
61        {}
62
63        String  get(const PropertyReceiver* receiver) const;
64        void    set(PropertyReceiver* receiver, const String& value);
65};
66
67
68/*!
69\brief
70        Property to access the page size for the Scrollbar.
71
72        \par Usage:
73                - Name: PageSize
74                - Format: "[float]".
75
76        \par Where:
77                - [float] specifies the size of the visible page (as defined by the client code).
78*/
79class PageSize : public Property
80{
81public:
82        PageSize() : Property(
83                "PageSize",
84                "Property to get/set the page size for the Scrollbar.  Value is a float.",
85                "0.000000")
86        {}
87
88        String  get(const PropertyReceiver* receiver) const;
89        void    set(PropertyReceiver* receiver, const String& value);
90};
91
92
93/*!
94\brief
95        Property to access the step size for the Scrollbar.
96
97        \par Usage:
98                - Name: StepSize
99                - Format: "[float]".
100
101        \par Where:
102                - [float] specifies the size of the increase/decrease button step (as defined by the client code).
103*/
104class StepSize : public Property
105{
106public:
107        StepSize() : Property(
108                "StepSize",
109                "Property to get/set the step size for the Scrollbar.  Value is a float.",
110                "1.000000")
111        {}
112
113        String  get(const PropertyReceiver* receiver) const;
114        void    set(PropertyReceiver* receiver, const String& value);
115};
116
117
118/*!
119\brief
120        Property to access the overlap size for the Scrollbar.
121
122        \par Usage:
123                - Name: OverlapSize
124                - Format: "[float]".
125
126        \par Where:
127                - [float] specifies the size of the per-page overlap (as defined by the client code).
128*/
129class OverlapSize : public Property
130{
131public:
132        OverlapSize() : Property(
133                "OverlapSize",
134                "Property to get/set the overlap size for the Scrollbar.  Value is a float.",
135                "0.000000")
136        {}
137
138        String  get(const PropertyReceiver* receiver) const;
139        void    set(PropertyReceiver* receiver, const String& value);
140};
141
142/*!
143\brief
144        Property to access the scroll position of the Scrollbar.
145
146        \par Usage:
147                - Name: ScrollPosition
148                - Format: "[float]".
149
150        \par Where:
151                - [float] specifies the current scroll position / value of the Scrollbar.
152*/
153class ScrollPosition : public Property
154{
155public:
156        ScrollPosition() : Property(
157                "ScrollPosition",
158                "Property to get/set the scroll position of the Scrollbar.  Value is a float.",
159                "0.000000")
160        {}
161
162        String  get(const PropertyReceiver* receiver) const;
163        void    set(PropertyReceiver* receiver, const String& value);
164};
165
166} // End of  ScrollbarProperties namespace section
167
168} // End of  CEGUI namespace section
169
170
171#endif  // end of guard _CEGUIScrollbarProperties_h_
Note: See TracBrowser for help on using the repository browser.