]>
Commit | Line | Data |
---|---|---|
f18eaf26 VZ |
1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
2 | %% Name: hvscrolledwindow.tex | |
3 | %% Purpose: wxHVScrolledWindow Documentation | |
4 | %% Author: Bryan Petty | |
5 | %% Modified by: | |
6 | %% Created: 2007-04-04 | |
7 | %% RCS-ID: $Id$ | |
8 | %% Copyright: (c) 2007 wxWidgets Team | |
9 | %% License: wxWindows Licence | |
10 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | |
11 | ||
12 | \section{\class{wxHVScrolledWindow}}\label{wxhvscrolledwindow} | |
13 | ||
14 | This window inherits all functionality of both vertical and horizontal, | |
15 | variable scrolled windows. It automatically handles everything needed to | |
16 | scroll both axis simultaneously with both variable row heights and variable | |
17 | column widths. | |
18 | ||
19 | This is a generalization of the \helpref{wxScrolledWindow}{wxscrolledwindow} | |
20 | class which can be only used when all rows and columns are the same size. It | |
21 | lacks some other wxScrolledWindow features however, notably it can't scroll | |
22 | only a rectangle of the window and not its entire client area. | |
23 | ||
24 | To use this class, you must derive from it and implement both the | |
25 | \helpref{OnGetRowHeight()}{wxvarvscrollhelperongetrowheight} and | |
26 | \helpref{OnGetColumnWidth()}{wxvarhscrollhelperongetcolumnwidth} pure virtual | |
27 | methods to let the base class know how many rows and columns it should | |
28 | display. You also need to set the total rows and columns the window contains, | |
29 | but from that moment on the scrolling is handled entirely by | |
30 | wxHVScrolledWindow. You only need to draw the visible part of contents in | |
31 | your {\tt OnPaint()} method as usual. You should use | |
32 | \helpref{GetVisibleBegin()}{wxvarhvscrollhelpergetvisiblebegin} | |
33 | and \helpref{GetVisibleEnd()}{wxvarhvscrollhelpergetvisibleend} to select the | |
34 | lines to display. Note that the device context origin is not shifted so the | |
35 | first visible row and column always appear at the point $(0, 0)$ in physical | |
36 | as well as logical coordinates. | |
37 | ||
38 | \wxheading{Derived from} | |
39 | ||
40 | \helpref{wxPanel}{wxpanel}\\ | |
41 | \helpref{wxWindow}{wxwindow}\\ | |
42 | \helpref{wxEvtHandler}{wxevthandler}\\ | |
43 | \helpref{wxObject}{wxobject} | |
44 | ||
45 | \helpref{wxVarHVScrollHelper}{wxvarhvscrollhelper} | |
46 | ||
47 | \helpref{wxVarVScrollHelper}{wxvarvscrollhelper}\\ | |
48 | \helpref{wxVarScrollHelperBase}{wxvarscrollhelperbase} | |
49 | ||
50 | \helpref{wxVarHScrollHelper}{wxvarhscrollhelper}\\ | |
51 | \helpref{wxVarScrollHelperBase}{wxvarscrollhelperbase} | |
52 | ||
53 | \wxheading{Include files} | |
54 | ||
55 | <wx/vscroll.h> | |
56 | ||
a7af285d VZ |
57 | \wxheading{Library} |
58 | ||
59 | \helpref{wxCore}{librarieslist} | |
60 | ||
f18eaf26 VZ |
61 | \wxheading{See also} |
62 | ||
63 | \helpref{wxHScrolledWindow}{wxhscrolledwindow}, | |
64 | \rtfsp\helpref{wxVScrolledWindow}{wxvscrolledwindow} | |
65 | ||
66 | \latexignore{\rtfignore{\wxheading{Members}}} | |
67 | ||
68 | ||
69 | \membersection{wxHVScrolledWindow::wxHVScrolledWindow}\label{wxhvscrolledwindowwxhvscrolledwindow} | |
70 | ||
71 | \func{}{wxHVScrolledWindow}{\void} | |
72 | ||
73 | Default constructor, you must call \helpref{Create()}{wxhvscrolledwindowcreate} | |
74 | later. | |
75 | ||
76 | \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}} | |
77 | ||
78 | This is the normal constructor, no need to call {\tt Create()} after using this one. | |
79 | ||
80 | Note that {\tt wxHSCROLL} and {\tt wxVSCROLL} are always automatically added | |
81 | to our styles, there is no need to specify it explicitly. | |
82 | ||
83 | \wxheading{Parameters} | |
84 | ||
85 | \docparam{parent}{The parent window, must not be {\tt NULL}} | |
86 | ||
87 | \docparam{id}{The identifier of this window, {\tt wxID\_ANY} by default} | |
88 | ||
89 | \docparam{pos}{The initial window position} | |
90 | ||
91 | \docparam{size}{The initial window size} | |
92 | ||
93 | \docparam{style}{The window style. There are no special style bits defined for | |
94 | this class.} | |
95 | ||
96 | \docparam{name}{The name for this window; usually not used} | |
97 | ||
98 | ||
99 | \membersection{wxHVScrolledWindow::Create}\label{wxhvscrolledwindowcreate} | |
100 | ||
101 | \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}} | |
102 | ||
103 | Same as the \helpref{non-default constuctor}{wxhvscrolledwindowwxhvscrolledwindow} | |
104 | but returns status code: {\tt true} if ok, {\tt false} if the window couldn't | |
105 | be created. | |
106 | ||
107 | Just as with the constructor above, the {\tt wxHSCROLL} and {\tt wxVSCROLL} | |
108 | styles are always used, there is no need to specify it explicitly. | |
109 |