]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/vscroll.h
use wxWANTS_CHARS to allow arrows to work inside the control
[wxWidgets.git] / interface / vscroll.h
index f7d554e6d7d96e5db5418127f066761eebda1658..484472a9f10437feaab9003be5d6a250089472e5 100644 (file)
@@ -1,6 +1,6 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        vscroll.h
 /////////////////////////////////////////////////////////////////////////////
 // Name:        vscroll.h
-// Purpose:     documentation for wxVarHScrollHelper class
+// Purpose:     interface of wxVarHScrollHelper
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
 // Licence:     wxWindows license
 // Author:      wxWidgets team
 // RCS-ID:      $Id$
 // Licence:     wxWindows license
@@ -9,21 +9,20 @@
 /**
     @class wxVarHScrollHelper
     @wxheader{vscroll.h}
 /**
     @class wxVarHScrollHelper
     @wxheader{vscroll.h}
-    
-    This class provides functions wrapping the 
+
+    This class provides functions wrapping the
     wxVarScrollHelperBase class, targeted for
     horizontal-specific scrolling using wxHScrolledWindow.
     wxVarScrollHelperBase class, targeted for
     horizontal-specific scrolling using wxHScrolledWindow.
-    
+
     Like wxVarScrollHelperBase, this class is mostly only useful to those classes
     built into wxWidgets deriving from here, and this documentation is mostly
     only provided for referencing those functions provided. You will likely want
     to derive your window from wxHScrolledWindow rather than from here directly.
     Like wxVarScrollHelperBase, this class is mostly only useful to those classes
     built into wxWidgets deriving from here, and this documentation is mostly
     only provided for referencing those functions provided. You will likely want
     to derive your window from wxHScrolledWindow rather than from here directly.
-    
+
     @library{wxcore}
     @category{FIXME}
     @library{wxcore}
     @category{FIXME}
-    
-    @seealso
-    wxHScrolledWindow, wxHVScrolledWindow, wxVScrolledWindow
+
+    @see wxHScrolledWindow, wxHVScrolledWindow, wxVScrolledWindow
 */
 class wxVarHScrollHelper : public wxVarScrollHelperBase
 {
 */
 class wxVarHScrollHelper : public wxVarScrollHelperBase
 {
@@ -41,58 +40,55 @@ public:
         to this function so derived classes can override either just the height or
         the width estimation, or just estimate both differently if desired in any
         wxHVScrolledWindow derived class.
         to this function so derived classes can override either just the height or
         the width estimation, or just estimate both differently if desired in any
         wxHVScrolledWindow derived class.
-        
         Please note that this function will not be called if @c EstimateTotalSize()
         is overridden in your derived class.
     */
         Please note that this function will not be called if @c EstimateTotalSize()
         is overridden in your derived class.
     */
-    virtual wxCoord EstimateTotalWidth();
+    virtual wxCoord EstimateTotalWidth() const;
 
     /**
         Returns the number of columns the target window contains.
 
     /**
         Returns the number of columns the target window contains.
-        
-        @sa SetColumnCount()
+
+        @see SetColumnCount()
     */
     */
-    size_t GetColumnCount();
+    size_t GetColumnCount() const;
 
     /**
         Returns the index of the first visible column based on the scroll position.
     */
 
     /**
         Returns the index of the first visible column based on the scroll position.
     */
-    size_t GetVisibleColumnsBegin();
+    size_t GetVisibleColumnsBegin() const;
 
     /**
         Returns the index of the last visible column based on the scroll position. This
         includes the last column even if it is only partially visible.
     */
 
     /**
         Returns the index of the last visible column based on the scroll position. This
         includes the last column even if it is only partially visible.
     */
-    size_t GetVisibleColumnsEnd();
+    size_t GetVisibleColumnsEnd() const;
 
     /**
         Returns @true if the given column is currently visible (even if only
         partially visible) or @false otherwise.
     */
 
     /**
         Returns @true if the given column is currently visible (even if only
         partially visible) or @false otherwise.
     */
-    bool IsColumnVisible(size_t column);
+    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.
     */
 
     /**
         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);
+    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 operation as it gives
         your code a chance to calculate several of them at once and cache the result
         if necessary.
 
     /**
         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 operation as it gives
         your code a chance to calculate several of them at once and cache the result
         if necessary.
-        
         @c OnGetColumnsWidthHint() is normally called just before
         OnGetColumnWidth() but you
         shouldn't rely on the latter being called for all columns in the interval
         specified here. It is also possible that OnGetColumnWidth() will be called for
         units outside of this interval, so this is really just a hint, not a promise.
         @c OnGetColumnsWidthHint() is normally called just before
         OnGetColumnWidth() but you
         shouldn't rely on the latter being called for all columns in the interval
         specified here. It is also possible that OnGetColumnWidth() will be called for
         units outside of this interval, so this is really just a hint, not a promise.
-        
         Finally, note that columnMin is inclusive, while columnMax is exclusive.
     */
     virtual void OnGetColumnsWidthHint(size_t columnMin,
         Finally, note that columnMin is inclusive, while columnMax is exclusive.
     */
     virtual void OnGetColumnsWidthHint(size_t columnMin,
-                                       size_t columnMax);
+                                       size_t columnMax) const;
 
     /**
         Triggers a refresh for just the given column's area of the window if it's
 
     /**
         Triggers a refresh for just the given column's area of the window if it's
@@ -116,7 +112,6 @@ public:
         Scroll by the specified number of columns which may be positive (to scroll
         right)
         or negative (to scroll left).
         Scroll by the specified number of columns which may be positive (to scroll
         right)
         or negative (to scroll left).
-        
         Returns @true if the window was scrolled, @false otherwise (for
         example, if we're trying to scroll right but we are already showing the last
         column).
         Returns @true if the window was scrolled, @false otherwise (for
         example, if we're trying to scroll right but we are already showing the last
         column).
@@ -126,7 +121,6 @@ public:
     /**
         Scroll to the specified column. It will become the first visible column in the
         window.
     /**
         Scroll to the specified column. It will become the first visible column in the
         window.
-        
         Returns @true if we scrolled the window, @false if nothing was done.
     */
     bool ScrollToColumn(size_t column);
         Returns @true if we scrolled the window, @false if nothing was done.
     */
     bool ScrollToColumn(size_t column);
@@ -140,24 +134,24 @@ public:
 };
 
 
 };
 
 
+
 /**
     @class wxVarVScrollHelper
     @wxheader{vscroll.h}
 /**
     @class wxVarVScrollHelper
     @wxheader{vscroll.h}
-    
-    This class provides functions wrapping the 
+
+    This class provides functions wrapping the
     wxVarScrollHelperBase class, targeted for
     vertical-specific scrolling using wxVScrolledWindow.
     wxVarScrollHelperBase class, targeted for
     vertical-specific scrolling using wxVScrolledWindow.
-    
+
     Like wxVarScrollHelperBase, this class is mostly only useful to those classes
     built into wxWidgets deriving from here, and this documentation is mostly
     only provided for referencing those functions provided. You will likely want
     to derive your window from wxVScrolledWindow rather than from here directly.
     Like wxVarScrollHelperBase, this class is mostly only useful to those classes
     built into wxWidgets deriving from here, and this documentation is mostly
     only provided for referencing those functions provided. You will likely want
     to derive your window from wxVScrolledWindow rather than from here directly.
-    
+
     @library{wxcore}
     @category{FIXME}
     @library{wxcore}
     @category{FIXME}
-    
-    @seealso
-    wxHScrolledWindow, wxHVScrolledWindow, wxVScrolledWindow
+
+    @see wxHScrolledWindow, wxHVScrolledWindow, wxVScrolledWindow
 */
 class wxVarVScrollHelper : public wxVarScrollHelperBase
 {
 */
 class wxVarVScrollHelper : public wxVarScrollHelperBase
 {
@@ -175,57 +169,54 @@ public:
         to this function so derived classes can override either just the height or
         the width estimation, or just estimate both differently if desired in any
         wxHVScrolledWindow derived class.
         to this function so derived classes can override either just the height or
         the width estimation, or just estimate both differently if desired in any
         wxHVScrolledWindow derived class.
-        
         Please note that this function will not be called if @c EstimateTotalSize()
         is overridden in your derived class.
     */
         Please note that this function will not be called if @c EstimateTotalSize()
         is overridden in your derived class.
     */
-    virtual wxCoord EstimateTotalHeight();
+    virtual wxCoord EstimateTotalHeight() const;
 
     /**
         Returns the number of rows the target window contains.
 
     /**
         Returns the number of rows the target window contains.
-        
-        @sa SetRowCount()
+
+        @see SetRowCount()
     */
     */
-    size_t GetRowCount();
+    size_t GetRowCount() const;
 
     /**
         Returns the index of the first visible row based on the scroll position.
     */
 
     /**
         Returns the index of the first visible row based on the scroll position.
     */
-    size_t GetVisibleRowsBegin();
+    size_t GetVisibleRowsBegin() const;
 
     /**
         Returns the index of the last visible row based on the scroll position. This
         includes the last row even if it is only partially visible.
     */
 
     /**
         Returns the index of the last visible row based on the scroll position. This
         includes the last row even if it is only partially visible.
     */
-    size_t GetVisibleRowsEnd();
+    size_t GetVisibleRowsEnd() const;
 
     /**
         Returns @true if the given row is currently visible (even if only
         partially visible) or @false otherwise.
     */
 
     /**
         Returns @true if the given row is currently visible (even if only
         partially visible) or @false otherwise.
     */
-    bool IsRowVisible(size_t row);
+    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.
     */
 
     /**
         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);
+    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 as it gives
         your code a chance to calculate several of them at once and cache the result
         if necessary.
 
     /**
         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 as it gives
         your code a chance to calculate several of them at once and cache the result
         if necessary.
-        
         @c OnGetRowsHeightHint() is normally called just before
         OnGetRowHeight() but you
         shouldn't rely on the latter being called for all rows in the interval
         specified here. It is also possible that OnGetRowHeight() will be called for
         units outside of this interval, so this is really just a hint, not a promise.
         @c OnGetRowsHeightHint() is normally called just before
         OnGetRowHeight() but you
         shouldn't rely on the latter being called for all rows in the interval
         specified here. It is also possible that OnGetRowHeight() will be called for
         units outside of this interval, so this is really just a hint, not a promise.
-        
         Finally, note that rowMin is inclusive, while rowMax is exclusive.
     */
         Finally, note that rowMin is inclusive, while rowMax is exclusive.
     */
-    virtual void OnGetRowsHeightHint(size_t rowMin, size_t rowMax);
+    virtual void OnGetRowsHeightHint(size_t rowMin, size_t rowMax) const;
 
     /**
         Triggers a refresh for just the given row's area of the window if it's visible.
 
     /**
         Triggers a refresh for just the given row's area of the window if it's visible.
@@ -247,7 +238,6 @@ public:
     /**
         Scroll by the specified number of rows which may be positive (to scroll down)
         or negative (to scroll up).
     /**
         Scroll by the specified number of rows which may be positive (to scroll down)
         or negative (to scroll up).
-        
         Returns @true if the window was scrolled, @false otherwise (for
         example, if we're trying to scroll down but we are already showing the last
         row).
         Returns @true if the window was scrolled, @false otherwise (for
         example, if we're trying to scroll down but we are already showing the last
         row).
@@ -256,7 +246,6 @@ public:
 
     /**
         Scroll to the specified row. It will become the first visible row in the window.
 
     /**
         Scroll to the specified row. It will become the first visible row in the window.
-        
         Returns @true if we scrolled the window, @false if nothing was done.
     */
     bool ScrollToRow(size_t row);
         Returns @true if we scrolled the window, @false if nothing was done.
     */
     bool ScrollToRow(size_t row);
@@ -270,29 +259,29 @@ public:
 };
 
 
 };
 
 
+
 /**
     @class wxVarScrollHelperBase
     @wxheader{vscroll.h}
 /**
     @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
     automatic scrollbar functionality, saved scroll positions, controlling
     target windows to be scrolled, as well as defining all required virtual
     functions that need to be implemented for any orientation specific work.
     This class provides all common base functionality for scroll calculations
     shared among all variable scrolled window implementations as well as
     automatic scrollbar functionality, saved scroll positions, controlling
     target windows to be scrolled, as well as defining all required virtual
     functions that need to be implemented for any orientation specific work.
-    
+
     Documentation of this class is provided specifically for referencing use
     of the functions provided by this class for use with the variable scrolled
     windows that derive from here. You will likely want to derive your window
     from one of the already implemented variable scrolled windows rather than
     from wxVarScrollHelperBase directly.
     Documentation of this class is provided specifically for referencing use
     of the functions provided by this class for use with the variable scrolled
     windows that derive from here. You will likely want to derive your window
     from one of the already implemented variable scrolled windows rather than
     from wxVarScrollHelperBase directly.
-    
+
     @library{wxcore}
     @category{FIXME}
     @library{wxcore}
     @category{FIXME}
-    
-    @seealso
-    wxHScrolledWindow, wxHVScrolledWindow, wxVScrolledWindow
+
+    @see wxHScrolledWindow, wxHVScrolledWindow, wxVScrolledWindow
 */
 */
-class wxVarScrollHelperBase 
+class wxVarScrollHelperBase
 {
 public:
     /**
 {
 public:
     /**
@@ -314,10 +303,10 @@ public:
         represents 10 device units (which may not be the case since this class allows
         for variable scroll unit sizes), a call to this function with a coordinate of
         15 will return -85.
         represents 10 device units (which may not be the case since this class allows
         for variable scroll unit sizes), a call to this function with a coordinate of
         15 will return -85.
-        
-        @sa CalcUnscrolledPosition()
+
+        @see CalcUnscrolledPosition()
     */
     */
-    int CalcScrolledPosition(int coord);
+    int CalcScrolledPosition(int coord) const;
 
     /**
         Translates the device coordinate given to the corresponding logical
 
     /**
         Translates the device coordinate given to the corresponding logical
@@ -325,10 +314,10 @@ public:
         unit represents 10 device units (which may not be the case since this class
         allows for variable scroll unit sizes), a call to this function with a
         coordinate of 15 will return 115.
         unit represents 10 device units (which may not be the case since this class
         allows for variable scroll unit sizes), a call to this function with a
         coordinate of 15 will return 115.
-        
-        @sa CalcScrolledPosition()
+
+        @see CalcScrolledPosition()
     */
     */
-    int CalcUnscrolledPosition(int coord);
+    int CalcUnscrolledPosition(int coord) const;
 
     /**
         With physical scrolling on (when this is @true), the device origin is
 
     /**
         With physical scrolling on (when this is @true), the device origin is
@@ -338,7 +327,7 @@ public:
         responsible for repainting any invalidated areas of the window yourself to
         account for the new scroll position.
     */
         responsible for repainting any invalidated areas of the window yourself to
         account for the new scroll position.
     */
-    void EnablePhysicalScrolling(bool scrolling = @true);
+    void EnablePhysicalScrolling(bool scrolling = true);
 
     /**
         When the number of scroll units change, we try to estimate the total size of
 
     /**
         When the number of scroll units change, we try to estimate the total size of
@@ -347,83 +336,80 @@ public:
         if the user code may estimate the average size better or faster than we do, it
         should override this function to implement its own logic. This function should
         return the best guess for the total virtual window size.
         if the user code may estimate the average size better or faster than we do, it
         should override this function to implement its own logic. This function should
         return the best guess for the total virtual window size.
-        
         Note that although returning a totally wrong value would still work, it risks
         resulting in very strange scrollbar behaviour so this function should really
         try to make the best guess possible.
     */
         Note that although returning a totally wrong value would still work, it risks
         resulting in very strange scrollbar behaviour so this function should really
         try to make the best guess possible.
     */
-    virtual wxCoord EstimateTotalSize();
+    virtual wxCoord EstimateTotalSize() const;
 
     /**
         This function needs to be overridden in the in the derived class to return the
         window size with respect to the opposing orientation. If this is a vertical
         scrolled window, it should return the height.
 
     /**
         This function needs to be overridden in the in the derived class to return the
         window size with respect to the opposing orientation. If this is a vertical
         scrolled window, it should return the height.
-        
-        @sa GetOrientationTargetSize()
+
+        @see GetOrientationTargetSize()
     */
     */
-    virtual int GetNonOrientationTargetSize();
+    virtual int GetNonOrientationTargetSize() const;
 
     /**
         This function need to be overridden to return the orientation that this helper
         is working with, either @c wxHORIZONTAL or @c wxVERTICAL.
     */
 
     /**
         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();
+    virtual wxOrientation GetOrientation() const;
 
     /**
         This function needs to be overridden in the in the derived class to return the
         window size with respect to the orientation this helper is working with. If
         this is a vertical scrolled window, it should return the width.
 
     /**
         This function needs to be overridden in the in the derived class to return the
         window size with respect to the orientation this helper is working with. If
         this is a vertical scrolled window, it should return the width.
-        
-        @sa GetNonOrientationTargetSize()
+
+        @see GetNonOrientationTargetSize()
     */
     */
-    virtual int GetOrientationTargetSize();
+    virtual int GetOrientationTargetSize() const;
 
     /**
         This function will return the target window this helper class is currently
         scrolling.
 
     /**
         This function will return the target window this helper class is currently
         scrolling.
-        
-        @sa SetTargetWindow()
+
+        @see SetTargetWindow()
     */
     */
-    wxWindow* GetTargetWindow();
+    wxWindow* GetTargetWindow() const;
 
     /**
         Returns the index of the first visible unit based on the scroll position.
     */
 
     /**
         Returns the index of the first visible unit based on the scroll position.
     */
-    size_t GetVisibleBegin();
+    size_t GetVisibleBegin() const;
 
     /**
         Returns the index of the last visible unit based on the scroll position. This
         includes the last unit even if it is only partially visible.
     */
 
     /**
         Returns the index of the last visible unit based on the scroll position. This
         includes the last unit even if it is only partially visible.
     */
-    size_t GetVisibleEnd();
+    size_t GetVisibleEnd() const;
 
     /**
         Returns @true if the given scroll unit is currently visible (even if only
         partially visible) or @false otherwise.
     */
 
     /**
         Returns @true if the given scroll unit is currently visible (even if only
         partially visible) or @false otherwise.
     */
-    bool IsVisible(size_t unit);
+    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.
     */
 
     /**
         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);
+    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 as it gives
         your code a chance to calculate several of them at once and cache the result
         if necessary.
 
     /**
         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 as it gives
         your code a chance to calculate several of them at once and cache the result
         if necessary.
-        
         @c OnGetUnitsSizeHint() is normally called just before
         OnGetUnitSize() but you
         shouldn't rely on the latter being called for all units in the interval
         specified here. It is also possible that OnGetUnitSize() will be called for
         units outside of this interval, so this is really just a hint, not a promise.
         @c OnGetUnitsSizeHint() is normally called just before
         OnGetUnitSize() but you
         shouldn't rely on the latter being called for all units in the interval
         specified here. It is also possible that OnGetUnitSize() will be called for
         units outside of this interval, so this is really just a hint, not a promise.
-        
         Finally, note that unitMin is inclusive, while unitMax is exclusive.
     */
         Finally, note that unitMin is inclusive, while unitMax is exclusive.
     */
-    virtual void OnGetUnitsSizeHint(size_t unitMin, size_t unitMax);
+    virtual void OnGetUnitsSizeHint(size_t unitMin, size_t unitMax) const;
 
     /**
         Recalculate all parameters and repaint all units.
 
     /**
         Recalculate all parameters and repaint all units.
@@ -435,8 +421,8 @@ public:
         want it to scroll (part of) another window (e.g. a child of it in order to
         scroll only a portion the area between the scrollbars like a spreadsheet where
         only the cell area will move).
         want it to scroll (part of) another window (e.g. a child of it in order to
         scroll only a portion the area between the scrollbars like a spreadsheet where
         only the cell area will move).
-        
-        @sa GetTargetWindow()
+
+        @see GetTargetWindow()
     */
     void SetTargetWindow(wxWindow* target);
 
     */
     void SetTargetWindow(wxWindow* target);
 
@@ -450,26 +436,27 @@ public:
         scroll position or @c wxNOT_FOUND if none (i.e. if it is below the last
         item).
     */
         scroll position or @c wxNOT_FOUND if none (i.e. if it is below the last
         item).
     */
-    int VirtualHitTest(wxCoord coord);
+    int VirtualHitTest(wxCoord coord) const;
 };
 
 
 };
 
 
+
 /**
     @class wxVScrolledWindow
     @wxheader{vscroll.h}
 /**
     @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
     necessary to know the heights of all rows in advance -- only those which
     are shown on the screen need to be measured; or even "vertical", because
     this class only supports scrolling vertically.
     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
     necessary to know the heights of all rows in advance -- only those which
     are shown on the screen need to be measured; or even "vertical", because
     this class only supports scrolling vertically.
-    
+
     In any case, this is a generalization of the
     wxScrolledWindow class which can be only used when
     all rows have the same heights. It lacks some other wxScrolledWindow features
     however, notably it can't scroll only a rectangle of the window and not its
     entire client area.
     In any case, this is a generalization of the
     wxScrolledWindow class which can be only used when
     all rows have the same heights. It lacks some other wxScrolledWindow features
     however, notably it can't scroll only a rectangle of the window and not its
     entire client area.
-    
+
     To use this class, you need to derive from it and implement the
     wxVarVScrollHelper::OnGetRowHeight pure virtual
     method. You also must call wxVarVScrollHelper::SetRowCount
     To use this class, you need to derive from it and implement the
     wxVarVScrollHelper::OnGetRowHeight pure virtual
     method. You also must call wxVarVScrollHelper::SetRowCount
@@ -481,12 +468,11 @@ public:
     select the lines to display. Note that the device context origin is not shifted
     so the first visible row always appears at the point (0, 0) in physical as
     well as logical coordinates.
     select the lines to display. Note that the device context origin is not shifted
     so the first visible row always appears at the point (0, 0) in physical as
     well as logical coordinates.
-    
+
     @library{wxcore}
     @category{miscwnd}
     @library{wxcore}
     @category{miscwnd}
-    
-    @seealso
-    wxHScrolledWindow, wxHVScrolledWindow
+
+    @see wxHScrolledWindow, wxHVScrolledWindow
 */
 class wxVScrolledWindow : public wxPanel
 {
 */
 class wxVScrolledWindow : public wxPanel
 {
@@ -495,42 +481,35 @@ public:
     /**
         This is the normal constructor, no need to call @c Create() after using this
         one.
     /**
         This is the normal constructor, no need to call @c Create() after using this
         one.
-        
         Note that @c wxVSCROLL is always automatically added to our style, there is
         no need to specify it explicitly.
         Note that @c wxVSCROLL is always automatically added to our style, there is
         no need to specify it explicitly.
-        
-        @param parent 
-        The parent window, must not be @NULL
-        
-        @param id 
-        The identifier of this window, wxID_ANY by default
-        
-        @param pos 
-        The initial window position
-        
-        @param size 
-        The initial window size
-        
-        @param style 
-        The window style. There are no special style bits defined for
-        this class.
-        
-        @param name 
-        The name for this window; usually not used
+
+        @param parent
+            The parent window, must not be @NULL
+        @param id
+            The identifier of this window, wxID_ANY by default
+        @param pos
+            The initial window position
+        @param size
+            The initial window size
+        @param style
+            The window style. There are no special style bits defined for
+            this class.
+        @param name
+            The name for this window; usually not used
     */
     wxVScrolledWindow();
     */
     wxVScrolledWindow();
-        wxVScrolledWindow(wxWindow* parent, wxWindowID id = wxID_ANY,
-                          const wxPoint& pos = wxDefaultPosition,
-                          const wxSize& size = wxDefaultSize,
-                          long style = 0,
-                          const wxString& name = wxPanelNameStr);
+    wxVScrolledWindow(wxWindow* parent, wxWindowID id = wxID_ANY,
+                      const wxPoint& pos = wxDefaultPosition,
+                      const wxSize& size = wxDefaultSize,
+                      long style = 0,
+                      const wxString& name = wxPanelNameStr);
     //@}
 
     /**
         Same as the @ref wxvscrolledwindow() "non-default constuctor"
         but returns status code: @true if ok, @false if the window couldn't
         be created.
     //@}
 
     /**
         Same as the @ref wxvscrolledwindow() "non-default constuctor"
         but returns status code: @true if ok, @false if the window couldn't
         be created.
-        
         Just as with the constructor above, the @c wxVSCROLL style is always used,
         there is no need to specify it explicitly.
     */
         Just as with the constructor above, the @c wxVSCROLL style is always used,
         there is no need to specify it explicitly.
     */
@@ -551,44 +530,45 @@ public:
         as "rows" and "columns", respectively. This is to help clear some confusion
         in not only those classes, but also in wxHVScrolledWindow where functions
         are inherited from both.
         as "rows" and "columns", respectively. This is to help clear some confusion
         in not only those classes, but also in wxHVScrolledWindow where functions
         are inherited from both.
-        
         You are encouraged to update any existing code using these function to use
         the new replacements mentioned below, and avoid using these functions for
         any new code as they are deprecated.
         You are encouraged to update any existing code using these function to use
         the new replacements mentioned below, and avoid using these functions for
         any new code as they are deprecated.
-        
+
         Deprecated for wxVarVScrollHelper::SetRowCount.
     */
     size_t GetFirstVisibleLine();
         Deprecated for wxVarVScrollHelper::SetRowCount.
     */
     size_t GetFirstVisibleLine();
-        size_t GetLastVisibleLine();
-        size_t GetLineCount();
-        int HitTest(wxCoord x, wxCoord y);
-        int HitTest(const wxPoint& pt);
-        virtual wxCoord OnGetLineHeight(size_t line);
-        virtual void OnGetLinesHint(size_t lineMin, size_t lineMax);
-        virtual void RefreshLine(size_t line);
-        virtual void RefreshLines(size_t from, size_t to);
-        virtual bool ScrollLines(int lines);
-        virtual bool ScrollPages(int pages);
-        bool ScrollToLine(size_t line);
-        void SetLineCount(size_t count);
+    const size_t GetLastVisibleLine();
+    const size_t GetLineCount();
+    const int HitTest(wxCoord x, wxCoord y);
+    const int HitTest(const wxPoint& pt);
+    const virtual wxCoord OnGetLineHeight(size_t line);
+    const virtual void OnGetLinesHint(size_t lineMin,
+                                      size_t lineMax);
+    const virtual void RefreshLine(size_t line);
+    virtual void RefreshLines(size_t from, size_t to);
+    virtual bool ScrollLines(int lines);
+    virtual bool ScrollPages(int pages);
+    bool ScrollToLine(size_t line);
+    void SetLineCount(size_t count);
     //@}
 };
 
 
     //@}
 };
 
 
+
 /**
     @class wxHVScrolledWindow
     @wxheader{vscroll.h}
 /**
     @class wxHVScrolledWindow
     @wxheader{vscroll.h}
-    
+
     This window inherits all functionality of both vertical and horizontal,
     variable scrolled windows. It automatically handles everything needed to
     scroll both axis simultaneously with both variable row heights and variable
     column widths.
     This window inherits all functionality of both vertical and horizontal,
     variable scrolled windows. It automatically handles everything needed to
     scroll both axis simultaneously with both variable row heights and variable
     column widths.
-    
+
     This is a generalization of the wxScrolledWindow
     class which can be only used when all rows and columns are the same size. It
     lacks some other wxScrolledWindow features however, notably it can't scroll
     only a rectangle of the window and not its entire client area.
     This is a generalization of the wxScrolledWindow
     class which can be only used when all rows and columns are the same size. It
     lacks some other wxScrolledWindow features however, notably it can't scroll
     only a rectangle of the window and not its entire client area.
-    
+
     To use this class, you must derive from it and implement both the
     wxVarVScrollHelper::OnGetRowHeight and
     wxVarHScrollHelper::OnGetColumnWidth pure virtual
     To use this class, you must derive from it and implement both the
     wxVarVScrollHelper::OnGetRowHeight and
     wxVarHScrollHelper::OnGetColumnWidth pure virtual
@@ -602,12 +582,11 @@ public:
     lines to display. Note that the device context origin is not shifted so the
     first visible row and column always appear at the point (0, 0) in physical
     as well as logical coordinates.
     lines to display. Note that the device context origin is not shifted so the
     first visible row and column always appear at the point (0, 0) in physical
     as well as logical coordinates.
-    
+
     @library{wxcore}
     @category{FIXME}
     @library{wxcore}
     @category{FIXME}
-    
-    @seealso
-    wxHScrolledWindow, wxVScrolledWindow
+
+    @see wxHScrolledWindow, wxVScrolledWindow
 */
 class wxHVScrolledWindow : public wxPanel
 {
 */
 class wxHVScrolledWindow : public wxPanel
 {
@@ -616,43 +595,36 @@ public:
     /**
         This is the normal constructor, no need to call @c Create() after using this
         one.
     /**
         This is the normal constructor, no need to call @c Create() after using this
         one.
-        
         Note that @c wxHSCROLL and @c wxVSCROLL are always automatically added
         to our styles, there is no need to specify it explicitly.
         Note that @c wxHSCROLL and @c wxVSCROLL are always automatically added
         to our styles, there is no need to specify it explicitly.
-        
-        @param parent 
-        The parent window, must not be @NULL
-        
-        @param id 
-        The identifier of this window, wxID_ANY by default
-        
-        @param pos 
-        The initial window position
-        
-        @param size 
-        The initial window size
-        
-        @param style 
-        The window style. There are no special style bits defined for
-        this class.
-        
-        @param name 
-        The name for this window; usually not used
+
+        @param parent
+            The parent window, must not be @NULL
+        @param id
+            The identifier of this window, wxID_ANY by default
+        @param pos
+            The initial window position
+        @param size
+            The initial window size
+        @param style
+            The window style. There are no special style bits defined for
+            this class.
+        @param name
+            The name for this window; usually not used
     */
     wxHVScrolledWindow();
     */
     wxHVScrolledWindow();
-        wxHVScrolledWindow(wxWindow* parent,
-                           wxWindowID id = wxID_ANY,
-                           const wxPoint& pos = wxDefaultPosition,
-                           const wxSize& size = wxDefaultSize,
-                           long style = 0,
-                           const wxString& name = wxPanelNameStr);
+    wxHVScrolledWindow(wxWindow* parent,
+                       wxWindowID id = wxID_ANY,
+                       const wxPoint& pos = wxDefaultPosition,
+                       const wxSize& size = wxDefaultSize,
+                       long style = 0,
+                       const wxString& name = wxPanelNameStr);
     //@}
 
     /**
         Same as the @ref wxhvscrolledwindow() "non-default constuctor"
         but returns status code: @true if ok, @false if the window couldn't
         be created.
     //@}
 
     /**
         Same as the @ref wxhvscrolledwindow() "non-default constuctor"
         but returns status code: @true if ok, @false if the window couldn't
         be created.
-        
         Just as with the constructor above, the @c wxHSCROLL and @c wxVSCROLL
         styles are always used, there is no need to specify it explicitly.
     */
         Just as with the constructor above, the @c wxHSCROLL and @c wxVSCROLL
         styles are always used, there is no need to specify it explicitly.
     */
@@ -664,11 +636,12 @@ public:
 };
 
 
 };
 
 
+
 /**
     @class wxVarHVScrollHelper
     @wxheader{vscroll.h}
 /**
     @class wxVarHVScrollHelper
     @wxheader{vscroll.h}
-    
-    This class provides functions wrapping the 
+
+    This class provides functions wrapping the
     wxVarHScrollHelper and
     wxVarVScrollHelper classes, targeted for
     scrolling a window in both axis using
     wxVarHScrollHelper and
     wxVarVScrollHelper classes, targeted for
     scrolling a window in both axis using
@@ -677,18 +650,17 @@ public:
     also addresses some wrappers that help avoid the need to specify class scope
     in your wxHVScrolledWindow-derived class when using wxVarScrollHelperBase
     functionality.
     also addresses some wrappers that help avoid the need to specify class scope
     in your wxHVScrolledWindow-derived class when using wxVarScrollHelperBase
     functionality.
-    
+
     Like all three of it's scroll helper base classes, this class is mostly only
     useful to those classes built into wxWidgets deriving from here, and this
     documentation is mostly only provided for referencing those functions
     provided. You will likely want to derive your window from wxHVScrolledWindow
     rather than from here directly.
     Like all three of it's scroll helper base classes, this class is mostly only
     useful to those classes built into wxWidgets deriving from here, and this
     documentation is mostly only provided for referencing those functions
     provided. You will likely want to derive your window from wxHVScrolledWindow
     rather than from here directly.
-    
+
     @library{wxcore}
     @category{FIXME}
     @library{wxcore}
     @category{FIXME}
-    
-    @seealso
-    wxHScrolledWindow, wxHVScrolledWindow, wxVScrolledWindow
+
+    @see wxHScrolledWindow, wxHVScrolledWindow, wxVScrolledWindow
 */
 class wxVarHVScrollHelper : public wxVarVScrollHelper
 {
 */
 class wxVarHVScrollHelper : public wxVarVScrollHelper
 {
@@ -707,42 +679,43 @@ public:
         window (pixels) are actually moved. When this is @false, you are
         responsible for repainting any invalidated areas of the window yourself to
         account for the new scroll position.
         window (pixels) are actually moved. When this is @false, you are
         responsible for repainting any invalidated areas of the window yourself to
         account for the new scroll position.
-        
-        @param vscrolling 
-        Specifies if physical scrolling should be turned on when scrolling vertically.
-        
-        @param hscrolling 
-        Specifies if physical scrolling should be turned on when scrolling horizontally.
+
+        @param vscrolling
+            Specifies if physical scrolling should be turned on when scrolling
+        vertically.
+        @param hscrolling
+            Specifies if physical scrolling should be turned on when scrolling
+        horizontally.
     */
     */
-    void EnablePhysicalScrolling(bool vscrolling = @true,
-                                 bool hscrolling = @true);
+    void EnablePhysicalScrolling(bool vscrolling = true,
+                                 bool hscrolling = true);
 
     /**
         Returns the number of columns and rows the target window contains.
 
     /**
         Returns the number of columns and rows the target window contains.
-        
-        @sa SetRowColumnCount()
+
+        @see SetRowColumnCount()
     */
     */
-    wxSize GetRowColumnCount();
+    wxSize GetRowColumnCount() const;
 
     /**
         Returns the index of the first visible column and row based on the current
         scroll position.
     */
 
     /**
         Returns the index of the first visible column and row based on the current
         scroll position.
     */
-    wxPosition GetVisibleBegin();
+    wxPosition GetVisibleBegin() const;
 
     /**
         Returns the index of the last visible column and row based on the scroll
         position. This includes any partially visible columns or rows.
     */
 
     /**
         Returns the index of the last visible column and row based on the scroll
         position. This includes any partially visible columns or rows.
     */
-    wxPosition GetVisibleEnd();
+    wxPosition GetVisibleEnd() const;
 
     //@{
     /**
         Returns @true if both the given row and column are currently visible
         (even if only partially visible) or @false otherwise.
     */
 
     //@{
     /**
         Returns @true if both the given row and column are currently visible
         (even if only partially visible) or @false otherwise.
     */
-    bool IsVisible(size_t row, size_t column);
-        bool IsVisible(const wxPosition& pos);
+    bool IsVisible(size_t row, size_t column) const;
+    const bool IsVisible(const wxPosition& pos) const;
     //@}
 
     //@{
     //@}
 
     //@{
@@ -751,7 +724,7 @@ public:
         of the window if it is visible.
     */
     virtual void RefreshRowColumn(size_t row, size_t column);
         of the window if it is visible.
     */
     virtual void RefreshRowColumn(size_t row, size_t column);
-        virtual void RefreshRowColumn(const wxPosition& pos);
+    virtual void RefreshRowColumn(const wxPosition& pos);
     //@}
 
     //@{
     //@}
 
     //@{
@@ -765,8 +738,8 @@ public:
     virtual void RefreshRowsColumns(size_t fromRow, size_t toRow,
                                     size_t fromColumn,
                                     size_t toColumn);
     virtual void RefreshRowsColumns(size_t fromRow, size_t toRow,
                                     size_t fromColumn,
                                     size_t toColumn);
-        virtual void RefreshRowsColumns(const wxPosition& from,
-                                        const wxPosition& to);
+    virtual void RefreshRowsColumns(const wxPosition& from,
+                                    const wxPosition& to);
     //@}
 
     //@{
     //@}
 
     //@{
@@ -776,7 +749,7 @@ public:
         @false if nothing was done.
     */
     bool ScrollToRowColumn(size_t row, size_t column);
         @false if nothing was done.
     */
     bool ScrollToRowColumn(size_t row, size_t column);
-        bool ScrollToRowColumn(const wxPosition& pos);
+    bool ScrollToRowColumn(const wxPosition& pos);
     //@}
 
     /**
     //@}
 
     /**
@@ -794,27 +767,28 @@ public:
         scroll position or @c wxNOT_FOUND (for the row, column, or possibly both
         values) if none.
     */
         scroll position or @c wxNOT_FOUND (for the row, column, or possibly both
         values) if none.
     */
-    wxPosition VirtualHitTest(wxCoord x, wxCoord y);
-        wxPosition VirtualHitTest(const wxPoint& pos);
+    wxPosition VirtualHitTest(wxCoord x, wxCoord y) const;
+    const wxPosition  VirtualHitTest(const wxPoint& pos) const;
     //@}
 };
 
 
     //@}
 };
 
 
+
 /**
     @class wxHScrolledWindow
     @wxheader{vscroll.h}
 /**
     @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
     the widths of all columns in advance -- only those which are shown on the
     screen need to be measured.
     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
     the widths of all columns in advance -- only those which are shown on the
     screen need to be measured.
-    
+
     In any case, this is a generalization of the
     wxScrolledWindow class which can be only used when
     all columns have the same widths. It lacks some other wxScrolledWindow features
     however, notably it can't scroll only a rectangle of the window and not its
     entire client area.
     In any case, this is a generalization of the
     wxScrolledWindow class which can be only used when
     all columns have the same widths. It lacks some other wxScrolledWindow features
     however, notably it can't scroll only a rectangle of the window and not its
     entire client area.
-    
+
     To use this class, you need to derive from it and implement the
     wxVarHScrollHelper::OnGetColumnWidth pure virtual
     method. You also must call wxVarHScrollHelper::SetColumnCount
     To use this class, you need to derive from it and implement the
     wxVarHScrollHelper::OnGetColumnWidth pure virtual
     method. You also must call wxVarHScrollHelper::SetColumnCount
@@ -826,12 +800,11 @@ public:
     select the lines to display. Note that the device context origin is not shifted
     so the first visible column always appears at the point (0, 0) in physical as
     well as logical coordinates.
     select the lines to display. Note that the device context origin is not shifted
     so the first visible column always appears at the point (0, 0) in physical as
     well as logical coordinates.
-    
+
     @library{wxcore}
     @category{FIXME}
     @library{wxcore}
     @category{FIXME}
-    
-    @seealso
-    wxHVScrolledWindow, wxVScrolledWindow
+
+    @see wxHVScrolledWindow, wxVScrolledWindow
 */
 class wxHScrolledWindow : public wxPanel
 {
 */
 class wxHScrolledWindow : public wxPanel
 {
@@ -840,42 +813,35 @@ public:
     /**
         This is the normal constructor, no need to call @c Create() after using this
         one.
     /**
         This is the normal constructor, no need to call @c Create() after using this
         one.
-        
         Note that @c wxHSCROLL is always automatically added to our style, there is
         no need to specify it explicitly.
         Note that @c wxHSCROLL is always automatically added to our style, there is
         no need to specify it explicitly.
-        
-        @param parent 
-        The parent window, must not be @NULL
-        
-        @param id 
-        The identifier of this window, wxID_ANY by default
-        
-        @param pos 
-        The initial window position
-        
-        @param size 
-        The initial window size
-        
-        @param style 
-        The window style. There are no special style bits defined for
-        this class.
-        
-        @param name 
-        The name for this window; usually not used
+
+        @param parent
+            The parent window, must not be @NULL
+        @param id
+            The identifier of this window, wxID_ANY by default
+        @param pos
+            The initial window position
+        @param size
+            The initial window size
+        @param style
+            The window style. There are no special style bits defined for
+            this class.
+        @param name
+            The name for this window; usually not used
     */
     wxHScrolledWindow();
     */
     wxHScrolledWindow();
-        wxHScrolledWindow(wxWindow* parent, wxWindowID id = wxID_ANY,
-                          const wxPoint& pos = wxDefaultPosition,
-                          const wxSize& size = wxDefaultSize,
-                          long style = 0,
-                          const wxString& name = wxPanelNameStr);
+    wxHScrolledWindow(wxWindow* parent, wxWindowID id = wxID_ANY,
+                      const wxPoint& pos = wxDefaultPosition,
+                      const wxSize& size = wxDefaultSize,
+                      long style = 0,
+                      const wxString& name = wxPanelNameStr);
     //@}
 
     /**
         Same as the @ref wxhscrolledwindow() "non-default constuctor"
         but returns status code: @true if ok, @false if the window couldn't
         be created.
     //@}
 
     /**
         Same as the @ref wxhscrolledwindow() "non-default constuctor"
         but returns status code: @true if ok, @false if the window couldn't
         be created.
-        
         Just as with the constructor above, the @c wxHSCROLL style is always used,
         there is no need to specify it explicitly.
     */
         Just as with the constructor above, the @c wxHSCROLL style is always used,
         there is no need to specify it explicitly.
     */
@@ -885,3 +851,4 @@ public:
                 long style = 0,
                 const wxString& name = wxPanelNameStr);
 };
                 long style = 0,
                 const wxString& name = wxPanelNameStr);
 };
+