/**
@class wxVarScrollHelperBase
- @wxheader{vscroll.h}
This class provides all common base functionality for scroll calculations
shared among all variable scrolled window implementations as well as
@see GetOrientationTargetSize()
*/
- virtual int GetNonOrientationTargetSize() const;
+ virtual int GetNonOrientationTargetSize() const = 0;
/**
This function need to be overridden to return the orientation that this
helper is working with, either @c wxHORIZONTAL or @c wxVERTICAL.
*/
- virtual wxOrientation GetOrientation() const;
+ virtual wxOrientation GetOrientation() const = 0;
/**
This function needs to be overridden in the in the derived class to
@see GetNonOrientationTargetSize()
*/
- virtual int GetOrientationTargetSize() const;
+ virtual int GetOrientationTargetSize() const = 0;
/**
This function will return the target window this helper class is
@see SetTargetWindow()
*/
- wxWindow* GetTargetWindow() const;
+ virtual wxWindow* GetTargetWindow() const;
/**
Returns the index of the first visible unit based on the scroll
*/
bool IsVisible(size_t unit) const;
- /**
- This function must be overridden in the derived class, and should
- return the size of the given unit in pixels.
- */
- virtual wxCoord OnGetUnitSize(size_t unit) const;
-
/**
This function doesn't have to be overridden but it may be useful to do
so if calculating the units' sizes is a relatively expensive operation
@see GetTargetWindow()
*/
- void SetTargetWindow(wxWindow* target);
+ virtual void SetTargetWindow(wxWindow* target);
/**
Update the thumb size shown by the scrollbar.
last item).
*/
int VirtualHitTest(wxCoord coord) const;
+
+
+protected:
+
+ /**
+ This function must be overridden in the derived class, and should
+ return the size of the given unit in pixels.
+ */
+ virtual wxCoord OnGetUnitSize(size_t unit) const = 0;
};
/**
@class wxVarVScrollHelper
- @wxheader{vscroll.h}
This class provides functions wrapping the wxVarScrollHelperBase class,
targeted for vertical-specific scrolling.
*/
bool IsRowVisible(size_t row) const;
- /**
- This function must be overridden in the derived class, and should
- return the height of the given row in pixels.
- */
- virtual wxCoord OnGetRowHeight(size_t row) const;
-
/**
This function doesn't have to be overridden but it may be useful to do
so if calculating the rows' sizes is a relatively expensive operation
@see GetRowCount()
*/
void SetRowCount(size_t rowCount);
+
+protected:
+
+ /**
+ This function must be overridden in the derived class, and should
+ return the height of the given row in pixels.
+ */
+ virtual wxCoord OnGetRowHeight(size_t row) const = 0;
};
/**
@class wxVarHScrollHelper
- @wxheader{vscroll.h}
This class provides functions wrapping the wxVarScrollHelperBase class,
targeted for horizontal-specific scrolling.
*/
bool IsColumnVisible(size_t column) const;
- /**
- This function must be overridden in the derived class, and should
- return the width of the given column in pixels.
- */
- virtual wxCoord OnGetColumnWidth(size_t column) const;
-
/**
This function doesn't have to be overridden but it may be useful to do
so if calculating the columns' sizes is a relatively expensive
@see GetColumnCount()
*/
void SetColumnCount(size_t columnCount);
+
+protected:
+
+ /**
+ This function must be overridden in the derived class, and should
+ return the width of the given column in pixels.
+ */
+ virtual wxCoord OnGetColumnWidth(size_t column) const = 0;
};
/**
@class wxVarHVScrollHelper
- @wxheader{vscroll.h}
This class provides functions wrapping the wxVarHScrollHelper and
wxVarVScrollHelper classes, targeted for scrolling a window in both axis.
/**
@class wxVScrolledWindow
- @wxheader{vscroll.h}
In the name of this class, "V" may stand for "variable" because it can be
used for scrolling rows of variable heights; "virtual", because it is not
/**
@class wxHScrolledWindow
- @wxheader{vscroll.h}
In the name of this class, "H" stands for "horizontal" because it can be
used for scrolling columns of variable widths. It is not necessary to know
/**
@class wxHVScrolledWindow
- @wxheader{vscroll.h}
This window inherits all functionality of both vertical and horizontal,
variable scrolled windows. It automatically handles everything needed to