git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37591 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			558 lines
		
	
	
		
			21 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
			
		
		
	
	
			558 lines
		
	
	
		
			21 KiB
		
	
	
	
		
			TeX
		
	
	
	
	
	
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 | 
						|
%% Name:        hvscroll.tex
 | 
						|
%% Purpose:     wxHVScrolledWindow documentation
 | 
						|
%% Author:      Vadim Zeitlin
 | 
						|
%% Modified by: Brad Anderson
 | 
						|
%% Created:     24.01.06
 | 
						|
%% RCS-ID:      $Id$
 | 
						|
%% Copyright:   (c) 2003 Vadim Zeitlin <vadim@wxwindows.org>
 | 
						|
%% License:     wxWindows license
 | 
						|
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 | 
						|
 | 
						|
\section{\class{wxHVScrolledWindow}}\label{wxhvscrolledwindow}
 | 
						|
 | 
						|
This class is strongly influenced by 
 | 
						|
\helpref{wxVScrolledWindow}{wxvscrolledwindow}. 
 | 
						|
Like wxVScrolledWindow, this class is here to provide an easy way to implement
 | 
						|
variable line sizes.  The difference is that wxVScrolledWindow only works with
 | 
						|
vertical scrolling.  This class extends the behavior of wxVScrolledWindow to
 | 
						|
the horizontal axis in addition to the vertical axis.
 | 
						|
 | 
						|
The scrolling is also "virtual" in the sense that row widths and column heights
 | 
						|
only need to be known for the rows and columns that are currently visible.
 | 
						|
 | 
						|
Like \helpref{wxVScrolledWindow}{wxvscrolledwindow}, this is a generalization
 | 
						|
of the \helpref{wxScrolledWindow}{wxscrolledwindow} class which can be only
 | 
						|
used when all rows have a constant height and columns have a constant width. 
 | 
						|
Like wxVScrolledWinow it lacks some of wxScrolledWindow features such as
 | 
						|
scrolling another window or only scrolling a rectangle of the window and not
 | 
						|
its entire client area.
 | 
						|
 | 
						|
If only vertical scrolling is needed, wxVScrolledWindow is recommended
 | 
						|
because it is simpler to use.
 | 
						|
   
 | 
						|
There is no wxHScrolledWindow but horizontal-only scrolling is implemented
 | 
						|
easily enough with this class.
 | 
						|
 | 
						|
To use this class, you need to derive from it and implement both the 
 | 
						|
\helpref{OnGetRowHeight()}{wxhvscrolledwindowongetrowheight} and the 
 | 
						|
\helpref{OnGetColumnWidth()}{wxhvscrolledwindowongetcolumnwidth} pure virtual
 | 
						|
methods. You also must call 
 | 
						|
\helpref{SetRowColumnCounts}{wxhvscrolledwindowsetrowcolumncounts} to let the
 | 
						|
base class know how many rows and columns it should display. After these
 | 
						|
requirements are met scrolling is handled entirely by wxHVScrolledWindow. You
 | 
						|
only need to draw the visible part of contents in your {\tt OnPaint()} method
 | 
						|
as usual. You should use 
 | 
						|
\helpref{GetVisibleRowsBegin()}{wxhvscrolledwindowgetvisiblerowsbegin}, 
 | 
						|
\helpref{GetVisibleColumnsBegin()}{wxhvscrolledwindowgetvisiblecolumnsbegin}, 
 | 
						|
\helpref{GetVisibleRowsEnd()}{wxhvscrolledwindowgetvisiblerowsend}, and 
 | 
						|
\helpref{GetVisibleColumnsEnd()}{wxhvscrolledwindowgetvisiblecolumnsend} to
 | 
						|
determine which lines to to display. If physical scrolling is enabled the
 | 
						|
device context origin is shifted by the scroll position (through
 | 
						|
{\tt PrepareDC()}), child windows are moved as the window scrolls, and the
 | 
						|
pixels on the screen are moved to minimize the region that requires painting.
 | 
						|
Physical scrolling is enabled by default.
 | 
						|
 | 
						|
\wxheading{Derived from}
 | 
						|
 | 
						|
\helpref{wxPanel}{wxpanel}
 | 
						|
 | 
						|
\wxheading{Include files}
 | 
						|
 | 
						|
<wx/vscroll.h>
 | 
						|
 | 
						|
 | 
						|
\latexignore{\rtfignore{\wxheading{Members}}}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::wxHVScrolledWindow}\label{wxhvscrolledwindowctor}
 | 
						|
 | 
						|
\func{}{wxHVScrolledWindow}{\param{wxWindow* }{parent}, \param{wxWindowID }{id = wxID\_ANY}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{long }{style = 0}, \param{const wxString\& }{name = wxPanelNameStr}}
 | 
						|
 | 
						|
This is the normal constructor, no need to call Create() after using this one.
 | 
						|
 | 
						|
Note that {\tt wxVSCROLL} and {\tt wxHSCROLL} are always automatically added to
 | 
						|
our style, there is no need to specify them explicitly.
 | 
						|
 | 
						|
\func{}{wxHVScrolledWindow}{\void}
 | 
						|
 | 
						|
Default constructor, you must call \helpref{Create()}{wxhvscrolledwindowcreate}
 | 
						|
later.
 | 
						|
 | 
						|
\wxheading{Parameters}
 | 
						|
 | 
						|
\docparam{parent}{The parent window, must not be {\tt NULL}}
 | 
						|
 | 
						|
\docparam{id}{The identifier of this window, {\tt wxID\_ANY} by default}
 | 
						|
 | 
						|
\docparam{pos}{The initial window position}
 | 
						|
 | 
						|
\docparam{size}{The initial window size}
 | 
						|
 | 
						|
\docparam{style}{The window style. There are no special style bits defined for
 | 
						|
this class.}
 | 
						|
 | 
						|
\docparam{name}{The name for this window; usually not used}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::Create}\label{wxhvscrolledwindowcreate}
 | 
						|
 | 
						|
\func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id = wxID\_ANY}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize}, \param{long }{style = 0}, \param{const wxString\& }{name = wxPanelNameStr}}
 | 
						|
 | 
						|
Same as the \helpref{non default ctor}{wxhvscrolledwindowctor} but returns
 | 
						|
status code: {\tt true} if ok, {\tt false} if the window couldn't have been created.
 | 
						|
 | 
						|
Just as with the ctor above, both the {\tt wxVSCROLL} and the {\tt wxHSCROLL}
 | 
						|
styles are always used. There is no need to specify either explicitly.
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::EnablePhysicalScrolling}\label{wxhvscrolledwindowenablephysicalscrolling}
 | 
						|
 | 
						|
\func{\void}{EnablePhysicalScrolling}{\param{bool }{scrolling = true}}
 | 
						|
 | 
						|
With physical scrolling enabled the device origin is changed properly when a
 | 
						|
wxDC is prepared using {\tt PrepareDC()}, children are actually moved and layed
 | 
						|
out according to the current scroll position, and the contents of the window
 | 
						|
(pixels) are actually moved to reduce the amount of redraw needed.
 | 
						|
 | 
						|
Physical scrolling is enabled by default but can be disable or re-enabled at
 | 
						|
any time.  An example of when you'd want to disable it would be if you have
 | 
						|
statically positioned graphic elements or children you do not want to move
 | 
						|
while the window is being scrolled.  If you disable physical scrolling you must
 | 
						|
manually adjust positioning for items within the scrolled window yourself.
 | 
						|
Also note that an unprepared wxDC requires you to do the same, regardless of
 | 
						|
the physical scrolling state.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::EstimateTotalHeight}\label{wxhvscrolledwindowestimatetotalheight}
 | 
						|
 | 
						|
\constfunc{virtual wxCoord}{EstimateTotalHeight}{\void}
 | 
						|
 | 
						|
This protected function is used internally by wxHVScrolledWindow to estimate the
 | 
						|
total height of the window when 
 | 
						|
\helpref{SetRowColumnCounts}{wxhvscrolledwindowsetrowcolumncounts}
 | 
						|
is called. The default implementation uses the brute force approach if the
 | 
						|
number of the items in the control is small enough. Otherwise, it tries to find
 | 
						|
the average row height using some rows in the beginning, middle and the end.
 | 
						|
 | 
						|
If it is undesirable to query all these rows (some of which might be never
 | 
						|
shown) just for the total height calculation, you may override the function and
 | 
						|
provide your own guess using a better and/or faster method.
 | 
						|
 | 
						|
Note that although returning a totally wrong value would still work, it risks
 | 
						|
causing some very strange scrollbar behaviour so this function should really
 | 
						|
try to make the best guess possible.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::EstimateTotalWidth}\label{wxhvscrolledwindowestimatetotalwidth}
 | 
						|
 | 
						|
\constfunc{virtual wxCoord}{EstimateTotalWidth}{\void}
 | 
						|
 | 
						|
This protected function is used internally by wxHVScrolledWindow to estimate the
 | 
						|
total width of the window when 
 | 
						|
\helpref{SetRowColumnCounts}{wxhvscrolledwindowsetrowcolumncounts}
 | 
						|
is called. The default implementation uses the brute force approach if the
 | 
						|
number of the items in the control is small enough. Otherwise, it tries to find
 | 
						|
the average column width using some columns in the beginning, middle and the end.
 | 
						|
 | 
						|
If it is undesirable to query all these columns (some of which might be never
 | 
						|
shown) just for the total width calculation, you may override the function and
 | 
						|
provide your own guess using a better and/or faster method.
 | 
						|
 | 
						|
Note that although returning a totally wrong value would still work, it risks
 | 
						|
causing some very strange scrollbar behaviour so this function should really
 | 
						|
try to make the best guess possible.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::GetColumnCount}\label{wxhvscrolledwindowgetcolumncount}
 | 
						|
 | 
						|
\constfunc{wxSize}{GetColumnCount}{\void}
 | 
						|
 | 
						|
Get the number of columns this window contains (previously set by 
 | 
						|
\helpref{SetRowColumnCounts()}{wxhvscrolledwindowsetrowcolumncounts})
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::GetRowCount}\label{wxhvscrolledwindowgetrowcount}
 | 
						|
 | 
						|
\constfunc{wxSize}{GetRowCount}{\void}
 | 
						|
 | 
						|
Get the number of rows this window contains (previously set by 
 | 
						|
\helpref{SetRowColumnCounts()}{wxhvscrolledwindowsetrowcolumncounts})
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::GetRowColumnCounts}\label{wxhvscrolledwindowgetrowcolumncounts}
 | 
						|
 | 
						|
\constfunc{wxSize}{GetRowColumnCounts}{\void}
 | 
						|
 | 
						|
Get the number of rows (X or width) and columns (Y or height) this window
 | 
						|
contains (previously set
 | 
						|
by \helpref{SetRowColumnCounts()}{wxhvscrolledwindowsetrowcolumncounts})
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::GetVisibleBegin}\label{wxhvscrolledwindowgetvisiblebegin}
 | 
						|
 | 
						|
\constfunc{wxPoint}{GetVisibleBegin}{\void}
 | 
						|
 | 
						|
Returns the indicies of the first visible row (Y) and column (X).
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{GetVisibleRowsBegin}{wxhvscrolledwindowgetvisiblerowsbegin}, \helpref{GetVisibleColumnsBegin}{wxhvscrolledwindowgetvisiblecolumnsbegin}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::GetVisibleColumnsBegin}\label{wxhvscrolledwindowgetvisiblecolumnsbegin}
 | 
						|
 | 
						|
\constfunc{size\_t}{GetVisibleColumnsBegin}{\void}
 | 
						|
 | 
						|
Returns the index of the first currently visible column.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{GetVisibleColumnsEnd}{wxhvscrolledwindowgetvisiblecolumnsend}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::GetVisibleColumnsEnd}\label{wxhvscrolledwindowgetvisiblecolumnsend}
 | 
						|
 | 
						|
\constfunc{size\_t}{GetVisibleColumnsEnd}{\void}
 | 
						|
 | 
						|
Returns the index of the first column after the currently visible page. If the
 | 
						|
return value is $0$ it means that no columns are currently shown (which only
 | 
						|
happens if the control is empty). Note that the index returned by this method
 | 
						|
is not always a valid index as it may be equal to 
 | 
						|
\helpref{GetColumnCount}{wxhvscrolledwindowgetcolumncount}.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{GetVisibleColumnsBegin}{wxhvscrolledwindowgetvisiblecolumnsbegin}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::GetVisibleEnd}\label{wxhvscrolledwindowgetvisiblebegin}
 | 
						|
 | 
						|
\constfunc{wxPoint}{GetVisibleEnd}{\void}
 | 
						|
 | 
						|
Returns the indicies of the row and column after the last visible row (Y) and
 | 
						|
last visible column (X), respectively.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{GetVisibleRowsEnd}{wxhvscrolledwindowgetvisiblerowsend}, \helpref{GetVisibleColumnsEnd}{wxhvscrolledwindowgetvisiblecolumnsend}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::GetVisibleRowsBegin}\label{wxhvscrolledwindowgetvisiblerowsbegin}
 | 
						|
 | 
						|
\constfunc{size\_t}{GetVisibleRowsBegin}{\void}
 | 
						|
 | 
						|
Returns the index of the first currently visible row.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{GetVisibleRowsEnd}{wxhvscrolledwindowgetvisiblerowsend}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::GetVisibleRowsEnd}\label{wxhvscrolledwindowgetvisiblerowsend}
 | 
						|
 | 
						|
\constfunc{size\_t}{GetVisibleRowsEnd}{\void}
 | 
						|
 | 
						|
Returns the index of the first row after the currently visible page. If the
 | 
						|
return value is $0$ it means that no rows are currently shown (which only
 | 
						|
happens if the control is empty). Note that the index returned by this method
 | 
						|
is not always a valid index as it may be equal to 
 | 
						|
\helpref{GetRowCount}{wxhvscrolledwindowgetrowcount}.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{GetVisibleRowsBegin}{wxhvscrolledwindowgetvisiblerowsbegin}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::HitTest}\label{wxhvscrolledwindowhittest}
 | 
						|
 | 
						|
\constfunc{wxPoint}{HitTest}{\param{wxCoord }{x}, \param{wxCoord }{y}}
 | 
						|
 | 
						|
\constfunc{wxPoint}{HitTest}{\param{const wxPoint\& }{pt}}
 | 
						|
 | 
						|
Return the position (X as column, Y as row) of the cell occupying the specified
 | 
						|
position (in physical coordinates). A value of {\tt wxNOT\_FOUND} in either X,
 | 
						|
Y, or X and Y means it is outside the range availible rows and/or columns.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::IsColumnVisible}\label{wxhvscrolledwindowiscolumnvisible}
 | 
						|
 | 
						|
\constfunc{bool}{IsColumnVisible}{\param{size\_t}{column}}
 | 
						|
 | 
						|
Returns {\tt true} if the given column is at least partially visible or
 | 
						|
{\tt false} otherwise.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::IsRowVisible}\label{wxhvscrolledwindowisrowvisible}
 | 
						|
 | 
						|
\constfunc{bool}{IsRowVisible}{\param{size\_t }{row}}
 | 
						|
 | 
						|
Returns {\tt true} if the given row is at least partially visible or {\tt false}
 | 
						|
otherwise.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::IsVisible}\label{wxhvscrolledwindowisvisible}
 | 
						|
 | 
						|
\constfunc{bool}{IsVisible}{\param{size\_t }{row}, \param{size\_t}{column}}
 | 
						|
 | 
						|
Returns {\tt true} if the given row and column are both at least partially
 | 
						|
visible or {\tt false} otherwise.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::OnGetColumnWidth}\label{wxhvscrolledwindowongetcolumnwidth}
 | 
						|
 | 
						|
\constfunc{wxCoord}{OnGetColumnWidth}{\param{size\_t }{n}}
 | 
						|
 | 
						|
This protected pure virtual function must be overridden in the derived class
 | 
						|
and should return the width of the given column in pixels.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{OnGetColumnsWidthHint}{wxhvscrolledwindowongetcolumnswidthhint}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::OnGetColumnsWidthHint}\label{wxhvscrolledwindowongetcolumnswidthhint}
 | 
						|
 | 
						|
\constfunc{void}{OnGetColumnsWidthHint}{\param{size\_t }{columnMin}, \param{size\_t }{columnMax}}
 | 
						|
 | 
						|
This function doesn't have to be overridden but it may be useful to do
 | 
						|
it if calculating the columns' heights is a relatively expensive operation
 | 
						|
as it gives the user code a possibility to calculate several of them at
 | 
						|
once.
 | 
						|
 | 
						|
{\tt OnGetColumnsWidthHint()} is normally called just before 
 | 
						|
\helpref{OnGetColumnWidth()}{wxhvscrolledwindowongetcolumnwidth} 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 the columns outside of this interval, so this is really just a
 | 
						|
hint, not a promise.
 | 
						|
 | 
						|
Finally note that {\it columnMin} is inclusive, while {\it columnMax} is exclusive,
 | 
						|
as usual.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::OnGetRowHeight}\label{wxhvscrolledwindowongetrowheight}
 | 
						|
 | 
						|
\constfunc{wxCoord}{OnGetRowHeight}{\param{size\_t }{n}}
 | 
						|
 | 
						|
This protected pure virtual function must be overridden in the derived class
 | 
						|
and should return the height of the given row in pixels.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{OnGetRowsHeightHint}{wxhvscrolledwindowongetrowsheighthint}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::OnGetRowsHeightHint}\label{wxhvscrolledwindowongetrowsheighthint}
 | 
						|
 | 
						|
\constfunc{void}{OnGetRowsHeightHint}{\param{size\_t }{rowMin}, \param{size\_t }{rowMax}}
 | 
						|
 | 
						|
This function doesn't have to be overridden but it may be useful to do
 | 
						|
it if calculating the row's heights is a relatively expensive operation
 | 
						|
as it gives the user code a possibility to calculate several of them at
 | 
						|
once.
 | 
						|
 | 
						|
{\tt OnGetRowsHeightHint()} is normally called just before 
 | 
						|
\helpref{OnGetRowHeight()}{wxhvscrolledwindowongetrowheight} 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 the rows outside of this interval, so this is really just a
 | 
						|
hint, not a promise.
 | 
						|
 | 
						|
Finally note that {\it rowMin} is inclusive, while {\it rowMax} is exclusive,
 | 
						|
as usual.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::RefreshColumn}\label{wxhvscrolledwindowrefreshcolumn}
 | 
						|
 | 
						|
\func{void}{RefreshColumn}{\param{size\_t }{column}}
 | 
						|
 | 
						|
Refreshes the specified column -- it will be redrawn during the next main loop
 | 
						|
iteration.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::RefreshRow}\label{wxhvscrolledwindowrefreshrow}
 | 
						|
 | 
						|
\func{void}{RefreshRow}{\param{size\_t }{row}}
 | 
						|
 | 
						|
Refreshes the specified row -- it will be redrawn during the next main loop
 | 
						|
iteration.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::RefreshRowColumn}\label{wxhvscrolledwindowrefreshrowcolumn}
 | 
						|
 | 
						|
\func{void}{RefreshRowColumn}{\param{size\_t }{row}, \param{size\_t }{column}}
 | 
						|
 | 
						|
Refreshes the specified cell -- it will be redrawn during the next main loop
 | 
						|
iteration.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{RefreshRowsColumns}{wxhvscrolledwindowrefreshrowscolumns}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::RefreshColumns}\label{wxhvscrolledwindowrefreshcolumns}
 | 
						|
 | 
						|
\func{void}{RefreshColumns}{\param{size\_ t}{fromColumn}, \param{size\_t }{toColumn}}
 | 
						|
 | 
						|
Refreshes the columns between {\it fromColumn} and {\it toColumn} (inclusive).
 | 
						|
{\it fromColumn} should be less than or equal to {\it toColumn}.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{RefreshColumn}{wxhvscrolledwindowrefreshcolumn}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::RefreshRows}\label{wxhvscrolledwindowrefreshrows}
 | 
						|
 | 
						|
\func{void}{RefreshRows}{\param{size\_ t}{fromRow}, \param{size\_t }{toRow}}
 | 
						|
 | 
						|
Refreshes the rows between {\it fromRow} and {\it toRow} (inclusive).
 | 
						|
{\it fromRow} should be less than or equal to {\it toRow}.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{RefreshRow}{wxhvscrolledwindowrefreshrow}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::RefreshRowsColumns}\label{wxhvscrolledwindowrefreshrowscolumns}
 | 
						|
 | 
						|
\func{void}{RefreshRowsColumns}{\param{size\_t }{fromRow}, \param{size\_t }{toRow}, \param{size\_ t}{fromColumn}, \param{size\_t }{toColumn}}
 | 
						|
 | 
						|
Refreshes the region of cells between {\it fromRow}, {\it fromColumn} and
 | 
						|
{\it toRow}, {\it toColumn} (inclusive). {\it fromRow} and {\it fromColumn}
 | 
						|
should be less than or equal to {\it toRow} and {\it toColumn}, respectively.
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{RefreshRowColumn}{wxhvscrolledwindowrefreshrowcolumn}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::RefreshAll}\label{wxhvscrolledwindowrefreshall}
 | 
						|
 | 
						|
\func{void}{RefreshAll}{\void}
 | 
						|
 | 
						|
This function completely refreshes the control, recalculating the number of
 | 
						|
items shown on screen and repainting them. It should be called when the values
 | 
						|
returned by either \helpref{OnGetRowHeight}{wxhvscrolledwindowongetrowheight} or 
 | 
						|
\helpref{OnGetColumnWidth}{wxhvscrolledwindowongetcolumnwidth} change for some
 | 
						|
reason and the window must be updated to reflect this.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::ScrollColumns}\label{wxhvscrolledwindowscrollcolumns}
 | 
						|
 | 
						|
\func{bool}{ScrollColumns}{\param{int }{columns}}
 | 
						|
 | 
						|
Scroll by the specified number of columns which may be positive (to scroll
 | 
						|
right) or negative (to scroll left).
 | 
						|
 | 
						|
Returns {\tt true} if the window was scrolled, {\tt false} otherwise (for
 | 
						|
example if we're trying to scroll right but we are already showing the last
 | 
						|
column).
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::ScrollRows}\label{wxhvscrolledwindowscrollrows}
 | 
						|
 | 
						|
\func{bool}{ScrollRows}{\param{int }{rows}}
 | 
						|
 | 
						|
Scroll by the specified number of rows which may be positive (to scroll
 | 
						|
down) or negative (to scroll up).
 | 
						|
 | 
						|
Returns {\tt true} if the window was scrolled, {\tt false} otherwise (for
 | 
						|
example if we're trying to scroll down but we are already showing the last
 | 
						|
row).
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{LineUp}{wxwindowlineup}, \helpref{LineDown}{wxwindowlinedown}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::ScrollRowsColumns}\label{wxhvscrolledwindowscrollrowscolumns}
 | 
						|
 | 
						|
\func{bool}{ScrollRowsColumns}{\param{int }{rows}, \param{int }{columns}}
 | 
						|
 | 
						|
Scroll by the specified number of rows and columns which may be positive (to
 | 
						|
scroll down or right) or negative (to scroll up or left).
 | 
						|
 | 
						|
Returns {\tt true} if the window was scrolled, {\tt false} otherwise (for
 | 
						|
example if we're trying to scroll down but we are already showing the last
 | 
						|
row).
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{LineUp}{wxwindowlineup}, \helpref{LineDown}{wxwindowlinedown}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::ScrollColumnPages}\label{wxhvscrolledwindowscrollcolumnpages}
 | 
						|
 | 
						|
\func{bool}{ScrollColumnPages}{\param{int }{columnPages}}
 | 
						|
 | 
						|
Scroll by the specified number of column pages, which may be positive (to
 | 
						|
scroll right) or negative (to scroll left).
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::ScrollPages}\label{wxhvscrolledwindowscrollpages}
 | 
						|
 | 
						|
\func{bool}{ScrollPages}{\param{int }{rowPages}, \param{int }{columnPages}}
 | 
						|
 | 
						|
Scroll by the specified number of row pages and column pages, both of which may
 | 
						|
be positive (to scroll down or right) or negative (to scroll up or left).
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{ScrollRowsColumns}{wxhvscrolledwindowscrollrowscolumns},\\
 | 
						|
\helpref{PageUp}{wxwindowpageup}, \helpref{PageDown}{wxwindowpagedown}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::ScrollRowPages}\label{wxhvscrolledwindowscrollrowpages}
 | 
						|
 | 
						|
\func{bool}{ScrollRowPages}{\param{int }{rowPages}}
 | 
						|
 | 
						|
Scroll by the specified number of row pages, which may be positive (to scroll
 | 
						|
down) or negative (to scroll up).
 | 
						|
 | 
						|
\wxheading{See also}
 | 
						|
 | 
						|
\helpref{PageUp}{wxwindowpageup}, \helpref{PageDown}{wxwindowpagedown}
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::ScrollToColumn}\label{wxhvscrolledwindowscrolltocolumn}
 | 
						|
 | 
						|
\func{bool}{ScrollToColumn}{\param{size\_t }{column}}
 | 
						|
 | 
						|
Scroll to the specified column. The specified column will be the first visible
 | 
						|
column on the left side afterwards.
 | 
						|
 | 
						|
Return {\tt true} if we scrolled the window, {\tt false} if nothing was done.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::ScrollToRow}\label{wxhvscrolledwindowscrolltorow}
 | 
						|
 | 
						|
\func{bool}{ScrollToRow}{\param{size\_t }{row}}
 | 
						|
 | 
						|
Scroll to the specified row. The specified column will be the first visible row
 | 
						|
on the top afterwards.
 | 
						|
 | 
						|
Return {\tt true} if we scrolled the window, {\tt false} if nothing was done.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::ScrollToRowColumn}\label{wxhvscrolledwindowscrolltorowcolumn}
 | 
						|
 | 
						|
\func{bool}{ScrollToRowColumn}{\param{size\_t }{row}, \param{size\_t }{column}}
 | 
						|
 | 
						|
Scroll to the specified row and column. The cell described will be the top left
 | 
						|
visible cell afterwards.
 | 
						|
 | 
						|
Return {\tt true} if we scrolled the window, {\tt false} if nothing was done.
 | 
						|
 | 
						|
 | 
						|
\membersection{wxHVScrolledWindow::SetRowColumnCounts}\label{wxhvscrolledwindowsetrowcolumncounts}
 | 
						|
 | 
						|
\func{void}{SetLineCount}{\param{size\_t }{row}, \param{size\_t }{column}}
 | 
						|
 | 
						|
Set the number of rows and columns the window contains. The derived class must
 | 
						|
provide the heights for all rows and the widths for all columns with indices up
 | 
						|
to the respective values given here in its 
 | 
						|
\helpref{OnGetRowHeight()}{wxhvscrolledwindowongetrowheight} and 
 | 
						|
\helpref{OnGetColumnWidth()}{wxhvscrolledwindowongetcolumnwidth}
 | 
						|
implementations.
 |