X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ae3c17b4013e80b99976c750c19fca47729517f6..8ed522d9aa0cc52a760a872860b622134b505e8c:/interface/wx/vscroll.h diff --git a/interface/wx/vscroll.h b/interface/wx/vscroll.h index c5acde34e3..13a13229fb 100644 --- a/interface/wx/vscroll.h +++ b/interface/wx/vscroll.h @@ -8,7 +8,6 @@ /** @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 @@ -97,13 +96,13 @@ public: @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 @@ -113,7 +112,7 @@ public: @see GetNonOrientationTargetSize() */ - virtual int GetOrientationTargetSize() const; + virtual int GetOrientationTargetSize() const = 0; /** This function will return the target window this helper class is @@ -121,7 +120,7 @@ public: @see SetTargetWindow() */ - wxWindow* GetTargetWindow() const; + virtual wxWindow* GetTargetWindow() const; /** Returns the index of the first visible unit based on the scroll @@ -142,12 +141,6 @@ public: */ 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 @@ -178,7 +171,7 @@ public: @see GetTargetWindow() */ - void SetTargetWindow(wxWindow* target); + virtual void SetTargetWindow(wxWindow* target); /** Update the thumb size shown by the scrollbar. @@ -191,13 +184,21 @@ public: 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. @@ -259,12 +260,6 @@ public: */ 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 @@ -326,13 +321,20 @@ public: @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. @@ -395,12 +397,6 @@ public: */ 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 @@ -463,13 +459,20 @@ public: @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. @@ -604,7 +607,6 @@ public: /** @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 @@ -729,7 +731,6 @@ public: /** @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 @@ -806,7 +807,6 @@ public: /** @class wxHVScrolledWindow - @wxheader{vscroll.h} This window inherits all functionality of both vertical and horizontal, variable scrolled windows. It automatically handles everything needed to