wxWidgets: wxVarHScrollHelper Class Reference

| Version: 3.2.6

Public Member Functions | Protected Member Functions | List of all members
wxVarHScrollHelper Class Referenceabstract
Class List by Category » Miscellaneous Windows

`#include <wx/vscroll.h>`

Inheritance diagram for wxVarHScrollHelper:
[legend]

## Detailed Description

This class provides functions wrapping the wxVarScrollHelperBase class, targeted for horizontal-specific scrolling.

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 the functions provided by this class. You will likely want to derive your window from wxHScrolledWindow rather than from here directly.

##

Library: wxCore
Category: Miscellaneous Windows

See also
  wxHScrolledWindow, wxHVScrolledWindow, wxVScrolledWindow

## Public Member Functions
| wxVarHScrollHelper (wxWindow *winToScroll)
| Constructor taking the target window to be scrolled by this helper class. More...
size_t | GetColumnCount () const
| Returns the number of columns the target window contains. More...
size_t | GetVisibleColumnsBegin () const
| Returns the index of the first visible column based on the scroll position. More...
size_t | GetVisibleColumnsEnd () const
| Returns the index of the last visible column based on the scroll position. More...
bool | IsColumnVisible (size_t column) const
| Returns true if the given column is currently visible (even if only partially visible) or false otherwise. More...
virtual void | RefreshColumn (size_t column)
| Triggers a refresh for just the given column's area of the window if it's visible. More...
virtual void | RefreshColumns (size_t from, size_t to)
| Triggers a refresh for the area between the specified range of columns given (inclusively). More...
virtual bool | ScrollColumnPages (int pages)
| Scroll by the specified number of pages which may be positive (to scroll right) or negative (to scroll left). More...
virtual bool | ScrollColumns (int columns)
| Scroll by the specified number of columns which may be positive (to scroll right) or negative (to scroll left). More...
bool | ScrollToColumn (size_t column)
| Scroll to the specified column. More...
void | SetColumnCount (size_t columnCount)
| Set the number of columns the window contains. More...
Public Member Functions inherited from wxVarScrollHelperBase
| wxVarScrollHelperBase (wxWindow *winToScroll)
| Constructor taking the target window to be scrolled by this helper class. More...
virtual | ~wxVarScrollHelperBase ()
| Virtual destructor for detaching scroll event handlers attached with this helper class. More...
int | CalcScrolledPosition (int coord) const
| Translates the logical coordinate given to the current device coordinate. More...
int | CalcUnscrolledPosition (int coord) const
| Translates the device coordinate given to the corresponding logical coordinate. More...
void | EnablePhysicalScrolling (bool scrolling=true)
| With physical scrolling on (when this is true), the device origin is changed properly when a wxPaintDC is prepared, children are actually moved and laid out properly, and the contents of the window (pixels) are actually moved. More...
virtual int | GetNonOrientationTargetSize () const =0
| This function needs to be overridden in the in the derived class to return the window size with respect to the opposing orientation. More...
virtual wxOrientation | GetOrientation () const =0
| This function need to be overridden to return the orientation that this helper is working with, either `wxHORIZONTAL` or `wxVERTICAL`. More...
virtual int | GetOrientationTargetSize () const =0
| 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. More...
virtual wxWindow * | GetTargetWindow () const
| This function will return the target window this helper class is currently scrolling. More...
size_t | GetVisibleBegin () const
| Returns the index of the first visible unit based on the scroll position. More...
size_t | GetVisibleEnd () const
| Returns the index of the last visible unit based on the scroll position. More...
bool | IsVisible (size_t unit) const
| Returns true if the given scroll unit is currently visible (even if only partially visible) or false otherwise. More...
virtual void | RefreshAll ()
| Recalculate all parameters and repaint all units. More...
virtual void | SetTargetWindow (wxWindow *target)
| Normally the window will scroll itself, but in some rare occasions you might want it to scroll (part of) another window (e.g. More...
virtual void | UpdateScrollbar ()
| Update the thumb size shown by the scrollbar. More...
int | VirtualHitTest (wxCoord coord) const
| Returns the virtual scroll unit under the device unit given accounting for scroll position or `wxNOT_FOUND` if none (i.e. More...

## Protected Member Functions
virtual wxCoord | EstimateTotalWidth () const
| This class forwards calls from EstimateTotalSize() 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. More...
virtual void | OnGetColumnsWidthHint (size_t columnMin, size_t columnMax) 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. More...
virtual wxCoord | OnGetColumnWidth (size_t column) const =0
| This function must be overridden in the derived class, and should return the width of the given column in pixels. More...
Protected Member Functions inherited from wxVarScrollHelperBase
virtual void | OnGetUnitsSizeHint (size_t unitMin, size_t unitMax) 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. More...
virtual wxCoord | EstimateTotalSize () const
| When the number of scroll units change, we try to estimate the total size of all units when the full window size is needed (i.e. More...
virtual wxCoord | OnGetUnitSize (size_t unit) const =0
| This function must be overridden in the derived class, and should return the size of the given unit in pixels. More...

## Constructor & Destructor Documentation

## ◆ wxVarHScrollHelper()

wxVarHScrollHelper::wxVarHScrollHelper | ( | wxWindow * | winToScroll | ) |

Constructor taking the target window to be scrolled by this helper class.

This will attach scroll event handlers to the target window to catch and handle scroll events appropriately.

## Member Function Documentation

## ◆ EstimateTotalWidth()

virtual wxCoord wxVarHScrollHelper::EstimateTotalWidth | ( |  | ) | const
| protectedvirtual

This class forwards calls from EstimateTotalSize() 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.

Note
  This function will not be called if EstimateTotalSize() is overridden in your derived class.

## ◆ GetColumnCount()

size_t wxVarHScrollHelper::GetColumnCount | ( |  | ) | const

Returns the number of columns the target window contains.

See also
  SetColumnCount()

## ◆ GetVisibleColumnsBegin()

size_t wxVarHScrollHelper::GetVisibleColumnsBegin | ( |  | ) | const

Returns the index of the first visible column based on the scroll position.

## ◆ GetVisibleColumnsEnd()

size_t wxVarHScrollHelper::GetVisibleColumnsEnd | ( |  | ) | 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.

## ◆ IsColumnVisible()

bool wxVarHScrollHelper::IsColumnVisible | ( | size_t | column | ) | const

Returns true if the given column is currently visible (even if only partially visible) or false otherwise.

## ◆ OnGetColumnsWidthHint()

virtual void wxVarHScrollHelper::OnGetColumnsWidthHint | ( | size_t | columnMin,
|  | size_t | columnMax
| ) |  | const
| protectedvirtual

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.

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.

## ◆ OnGetColumnWidth()

virtual wxCoord wxVarHScrollHelper::OnGetColumnWidth | ( | size_t | column | ) | const
| protectedpure virtual

This function must be overridden in the derived class, and should return the width of the given column in pixels.

## ◆ RefreshColumn()

virtual void wxVarHScrollHelper::RefreshColumn | ( | size_t | column | ) |
| virtual

Triggers a refresh for just the given column's area of the window if it's visible.

## ◆ RefreshColumns()

virtual void wxVarHScrollHelper::RefreshColumns | ( | size_t | from,
|  | size_t | to
| ) |  |
| virtual

Triggers a refresh for the area between the specified range of columns given (inclusively).

## ◆ ScrollColumnPages()

virtual bool wxVarHScrollHelper::ScrollColumnPages | ( | int | pages | ) |
| virtual

Scroll by the specified number of pages which may be positive (to scroll right) or negative (to scroll left).

## ◆ ScrollColumns()

virtual bool wxVarHScrollHelper::ScrollColumns | ( | int | columns | ) |
| virtual

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).

## ◆ ScrollToColumn()

bool wxVarHScrollHelper::ScrollToColumn | ( | size_t | column | ) |

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.

## ◆ SetColumnCount()

void wxVarHScrollHelper::SetColumnCount | ( | size_t | columnCount | ) |

Set the number of columns the window contains.

The derived class must provide the widths for all columns with indices up to the one given here in it's OnGetColumnWidth() implementation.

See also
  GetColumnCount()