From: Chris Elliott Date: Thu, 26 Apr 2007 10:54:15 +0000 (+0000) Subject: removd as recommended in http://article.gmane.org/gmane.comp.lib.wxwidgets.devel... X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/d59c756578360510689bdc6d40d06de31b351c3f removd as recommended in http://article.gmane.org/gmane.comp.lib.wxwidgets.devel/85790/ git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45661 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/docs/latex/wx/hvscroll.tex b/docs/latex/wx/hvscroll.tex deleted file mode 100644 index b75501923c..0000000000 --- a/docs/latex/wx/hvscroll.tex +++ /dev/null @@ -1,557 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%% 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 -%% 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} - - - - -\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.