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);
330 void setScrollPosition(
float position);
333 float getUnitIntervalScrollPosition()
const;
335 void setUnitIntervalScrollPosition(
float position);
373 Thumb* getThumb()
const;
409 void setConfig(
const float*
const document_size,
410 const float*
const page_size,
411 const float*
const step_size,
412 const float*
const overlap_size,
413 const float*
const position);
429 void setEndLockEnabled(
const bool enabled);
446 bool isEndLockEnabled()
const;
449 void scrollForwardsByStep();
451 void scrollBackwardsByStep();
454 void scrollForwardsByPage();
456 void scrollBackwardsByPage();
462 void initialiseComponents(
void);
470 void updateThumb(
void);
481 float getValueFromThumb(
void)
const;
496 float getAdjustDirectionFromPoint(
const Vector2f& pt)
const;
501 bool setScrollPosition_impl(
const float position);
504 bool isAtEnd()
const;
507 float getMaxScrollPosition()
const;
510 bool handleThumbMoved(
const EventArgs& e);
513 bool handleIncreaseClicked(
const EventArgs& e);
516 bool handleDecreaseClicked(
const EventArgs& e);
519 bool handleThumbTrackStarted(
const EventArgs& e);
522 bool handleThumbTrackEnded(
const EventArgs& e);
525 virtual bool validateWindowRenderer(
const WindowRenderer* renderer)
const;
545 void banPropertiesForAutoWindow();
549 float d_documentSize;
559 bool d_endLockPosition;
563 void addScrollbarProperties(
void);
568 #if defined(_MSC_VER) 569 # pragma warning(pop) 572 #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