# CEGUIScrollablePaneProperties.h

    00001 /************************************************************************
    00002         filename:       CEGUIScrollablePaneProperties.h
    00003         created:        3/3/2005
    00004         author:         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 _CEGUIScrollablePaneProperties_h_
    00025 #define _CEGUIScrollablePaneProperties_h_
    00026
    00027 #include "CEGUIProperty.h"
    00028
    00029 // Start of CEGUI namespace section
    00030 namespace CEGUI
    00031 {
    00032 // Start of ScrollablePaneProperties namespace section
    00037 namespace ScrollablePaneProperties
    00038 {
    00052     class ContentPaneAutoSized : public Property
    00053     {
    00054     public:
    00055         ContentPaneAutoSized() : Property(
    00056             "ContentPaneAutoSized",
    00057             "Property to get/set the setting which controls whether the content pane will auto-size itself.  Value is either \"True\" or \"False\".",
    00058             "True")
    00059         {}
    00060
    00061         String  get(const PropertyReceiver* receiver) const;
    00062         void    set(PropertyReceiver* receiver, const String& value);
    00063     };
    00064
    00079     class ContentArea : public Property
    00080     {
    00081     public:
    00082         ContentArea() : Property(
    00083             "ContentArea",
    00084             "Property to get/set the current content area rectangle of the content pane.  Value is \"l:[float] t:[float] r:[float] b:[float]\" (where l is left, t is top, r is right, and b is bottom).",
    00085             "l:0.000000 t:0.000000 r:0.000000 b:0.000000")
    00086         {}
    00087
    00088         String  get(const PropertyReceiver* receiver) const;
    00089         void    set(PropertyReceiver* receiver, const String& value);
    00090     };
    00091
    00105     class ForceVertScrollbar : public Property
    00106     {
    00107     public:
    00108         ForceVertScrollbar() : Property(
    00109             "ForceVertScrollbar",
    00110             "Property to get/set the setting which controls whether the vertical scroll bar is aways shown.  Value is either \"True\" or \"False\".",
    00111             "False")
    00112         {}
    00113
    00114         String  get(const PropertyReceiver* receiver) const;
    00115         void    set(PropertyReceiver* receiver, const String& value);
    00116     };
    00117
    00118
    00132     class ForceHorzScrollbar : public Property
    00133     {
    00134     public:
    00135         ForceHorzScrollbar() : Property(
    00136             "ForceHorzScrollbar",
    00137             "Property to get/set the setting which controls whether the horizontal scroll bar is aways shown.  Value is either \"True\" or \"False\".",
    00138             "False")
    00139         {}
    00140
    00141         String  get(const PropertyReceiver* receiver) const;
    00142         void    set(PropertyReceiver* receiver, const String& value);
    00143     };
    00144
    00156     class HorzStepSize : public Property
    00157     {
    00158     public:
    00159         HorzStepSize() : Property(
    00160             "HorzStepSize",
    00161             "Property to get/set the step size for the horizontal Scrollbar.  Value is a float.",
    00162             "0.100000")
    00163         {}
    00164
    00165         String  get(const PropertyReceiver* receiver) const;
    00166         void    set(PropertyReceiver* receiver, const String& value);
    00167     };
    00168
    00180     class HorzOverlapSize : public Property
    00181     {
    00182     public:
    00183         HorzOverlapSize() : Property(
    00184             "HorzOverlapSize",
    00185             "Property to get/set the overlap size for the horizontal Scrollbar.  Value is a float.",
    00186             "0.010000")
    00187         {}
    00188
    00189         String  get(const PropertyReceiver* receiver) const;
    00190         void    set(PropertyReceiver* receiver, const String& value);
    00191     };
    00192
    00204     class HorzScrollPosition : public Property
    00205     {
    00206     public:
    00207         HorzScrollPosition() : Property(
    00208             "HorzScrollPosition",
    00209             "Property to get/set the scroll position of the horizontal Scrollbar as a fraction.  Value is a float.",
    00210             "0.000000")
    00211         {}
    00212
    00213         String  get(const PropertyReceiver* receiver) const;
    00214         void    set(PropertyReceiver* receiver, const String& value);
    00215     };
    00216
    00228     class VertStepSize : public Property
    00229     {
    00230     public:
    00231         VertStepSize() : Property(
    00232             "VertStepSize",
    00233             "Property to get/set the step size for the vertical Scrollbar.  Value is a float.",
    00234             "0.100000")
    00235         {}
    00236
    00237         String  get(const PropertyReceiver* receiver) const;
    00238         void    set(PropertyReceiver* receiver, const String& value);
    00239     };
    00240
    00252     class VertOverlapSize : public Property
    00253     {
    00254     public:
    00255         VertOverlapSize() : Property(
    00256             "VertOverlapSize",
    00257             "Property to get/set the overlap size for the vertical Scrollbar.  Value is a float.",
    00258             "0.010000")
    00259         {}
    00260
    00261         String  get(const PropertyReceiver* receiver) const;
    00262         void    set(PropertyReceiver* receiver, const String& value);
    00263     };
    00264
    00276     class VertScrollPosition : public Property
    00277     {
    00278     public:
    00279         VertScrollPosition() : Property(
    00280             "VertScrollPosition",
    00281             "Property to get/set the scroll position of the vertical Scrollbar as a fraction.  Value is a float.",
    00282             "0.000000")
    00283         {}
    00284
    00285         String  get(const PropertyReceiver* receiver) const;
    00286         void    set(PropertyReceiver* receiver, const String& value);
    00287     };
    00288
    00289 } // End of  ScrollablePaneProperties namespace section
    00290 } // End of  CEGUI namespace section
    00291
    00292
    00293 #endif  // end of guard _CEGUIScrollablePaneProperties_h_