27 #ifndef _CEGUIScrollbar_h_ 28 #define _CEGUIScrollbar_h_ 31 #include "../Window.h" 34 # pragma warning(push) 35 # pragma warning(disable : 4251) 42 class CEGUIEXPORT ScrollbarWindowRenderer :
public WindowRenderer
45 ScrollbarWindowRenderer(
const String& name);
52 virtual void updateThumb(
void) = 0;
63 virtual float getValueFromThumb(
void)
const = 0;
78 virtual float getAdjustDirectionFromPoint(
const Vector2f& pt)
const = 0;
89 class CEGUIEXPORT Scrollbar :
public Window
93 static const String WidgetTypeName;
96 static const String EventNamespace;
102 static const String EventScrollPositionChanged;
108 static const String EventThumbTrackStarted;
114 static const String EventThumbTrackEnded;
120 static const String EventScrollConfigChanged;
123 static const String ThumbName;
125 static const String IncreaseButtonName;
127 static const String DecreaseButtonName;
147 return d_documentSize;
166 void setDocumentSize(
float document_size);
207 void setPageSize(
float page_size);
248 void setStepSize(
float step_size);
269 return d_overlapSize;
289 void setOverlapSize(
float overlap_size);
325 void setScrollPosition(
float position);
328 float getUnitIntervalScrollPosition()
const;
330 void setUnitIntervalScrollPosition(
float position);
368 Thumb* getThumb()
const;
404 void setConfig(
const float*
const document_size,
405 const float*
const page_size,
406 const float*
const step_size,
407 const float*
const overlap_size,
408 const float*
const position);
424 void setEndLockEnabled(
const bool enabled);
441 bool isEndLockEnabled()
const;
444 void scrollForwardsByStep();
446 void scrollBackwardsByStep();
449 void scrollForwardsByPage();
451 void scrollBackwardsByPage();
457 void initialiseComponents(
void);
465 void updateThumb(
void);
476 float getValueFromThumb(
void)
const;
491 float getAdjustDirectionFromPoint(
const Vector2f& pt)
const;
496 bool setScrollPosition_impl(
const float position);
499 bool isAtEnd()
const;
502 float getMaxScrollPosition()
const;
505 bool handleThumbMoved(
const EventArgs& e);
508 bool handleIncreaseClicked(
const EventArgs& e);
511 bool handleDecreaseClicked(
const EventArgs& e);
514 bool handleThumbTrackStarted(
const EventArgs& e);
517 bool handleThumbTrackEnded(
const EventArgs& e);
520 virtual bool validateWindowRenderer(
const WindowRenderer* renderer)
const;
540 void banPropertiesForAutoWindow();
544 float d_documentSize;
554 bool d_endLockPosition;
558 void addScrollbarProperties(
void);
563 #if defined(_MSC_VER) 564 # pragma warning(pop) 567 #endif // end of guard _CEGUIScrollbar_h_
Main namespace for Crazy Eddie's GUI Library.
Definition: cegui/include/CEGUI/Affector.h:42
Base class used as the argument to all subscribers Event object.
Definition: cegui/include/CEGUI/EventArgs.h:49
Base class for Thumb widget.
Definition: cegui/include/CEGUI/widgets/Thumb.h:55
Base-class for the assignable WindowRenderer object.
Definition: cegui/include/CEGUI/WindowRenderer.h:50
EventArgs based class that is used for objects passed to handlers triggered for events concerning som...
Definition: cegui/include/CEGUI/InputEvent.h:251
EventArgs based class that is used for objects passed to input event handlers concerning mouse input...
Definition: cegui/include/CEGUI/InputEvent.h:280
String class used within the GUI system.
Definition: cegui/include/CEGUI/String.h:62