]>
Commit | Line | Data |
---|---|---|
1 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | |
2 | %% Name: collpane.tex | |
3 | %% Purpose: wxCollapsiblePane documentation | |
4 | %% Author: Francesco Montorsi | |
5 | %% Created: 2006-10-14 | |
6 | %% RCS-ID: $Id$ | |
7 | %% Copyright: (c) 2006 Francesco Montorsi | |
8 | %% License: wxWindows license | |
9 | %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% | |
10 | ||
11 | \section{\class{wxCollapsiblePane}}\label{wxcollapsiblepane} | |
12 | ||
13 | A collapsible pane is a container with an embedded button-like control which can be | |
14 | used by the user to collapse or expand the pane's contents. | |
15 | ||
16 | Once constructed you should use the \helpref{GetPane}{wxcollapsiblepanegetpane} | |
17 | function to access the pane and add your controls inside it (i.e. use the | |
18 | \helpref{GetPane}{wxcollapsiblepanegetpane}'s returned pointer as parent for the | |
19 | controls which must go in the pane, NOT the wxCollapsiblePane itself!). | |
20 | ||
21 | Note that because of its nature of control which can dynamically (and drastically) | |
22 | change its size at run-time under user-input, when putting wxCollapsiblePane inside | |
23 | a \helpref{wxSizer}{wxsizer} you should be careful to add it with a proportion value | |
24 | of zero; this is because otherwise all other windows with non-null proportion values | |
25 | would automatically get resized each time the user expands or collapse the pane window | |
26 | resulting usually in a weird, flickering effect. | |
27 | ||
28 | Usage sample: | |
29 | ||
30 | \begin{verbatim} | |
31 | wxCollapsiblePane *collpane = new wxCollapsiblePane(this, wxID_ANY, wxT("Details:")); | |
32 | ||
33 | // add the pane with a zero proportion value to the 'sz' sizer which contains it | |
34 | sz->Add(collpane, 0, wxGROW|wxALL, 5); | |
35 | ||
36 | // now add a test label in the collapsible pane using a sizer to layout it: | |
37 | wxWindow *win = collpane->GetPane(); | |
38 | wxSizer *paneSz = new wxBoxSizer(wxVERTICAL); | |
39 | paneSz->Add(new wxStaticText(win, wxID_ANY, wxT("test!")), 1, wxGROW|wxALL, 2); | |
40 | win->SetSizer(paneSz); | |
41 | paneSz->SetSizeHints(win); | |
42 | ||
43 | \end{verbatim} | |
44 | ||
45 | ||
46 | It is only available if \texttt{wxUSE\_COLLPANE} is set to $1$ (the default). | |
47 | ||
48 | \wxheading{Derived from} | |
49 | ||
50 | \helpref{wxControl}{wxcontrol}\\ | |
51 | \helpref{wxWindow}{wxwindow}\\ | |
52 | \helpref{wxEvtHandler}{wxevthandler}\\ | |
53 | \helpref{wxObject}{wxobject} | |
54 | ||
55 | \wxheading{Include files} | |
56 | ||
57 | <wx/collpane.h> | |
58 | ||
59 | \wxheading{Window styles} | |
60 | ||
61 | \twocolwidtha{5cm}% | |
62 | \begin{twocollist}\itemsep=0pt | |
63 | \twocolitem{\windowstyle{wxCP\_DEFAULT\_STYLE}}{The default style: 0.} | |
64 | \end{twocollist} | |
65 | ||
66 | \wxheading{Event handling} | |
67 | ||
68 | To process a collapsible pane event, use these event handler macros to direct input to member | |
69 | functions that take a \helpref{wxCollapsiblePaneEvent}{wxcollapsiblepaneevent} argument. | |
70 | ||
71 | \twocolwidtha{7cm}% | |
72 | \begin{twocollist}\itemsep=0pt | |
73 | \twocolitem{{\bf EVT\_COLLAPSIBLEPANE\_CHANGED(id, func)}}{The user showed or hidden the collapsible pane. } | |
74 | \end{twocollist} | |
75 | ||
76 | ||
77 | \wxheading{See also} | |
78 | ||
79 | \helpref{wxPanel}{wxpanel},\\ | |
80 | \helpref{wxCollapsiblePaneEvent}{wxcollapsiblepaneevent} | |
81 | ||
82 | \latexignore{\rtfignore{\wxheading{Members}}} | |
83 | ||
84 | ||
85 | ||
86 | \membersection{wxCollapsiblePane::wxCollapsiblePane}\label{wxcollapsiblepane} | |
87 | ||
88 | \func{}{wxCollapsiblePane}{\param{wxWindow *}{parent},\rtfsp | |
89 | \param{wxWindowID}{ id},\rtfsp | |
90 | \param{const wxString\& }{label},\rtfsp | |
91 | \param{const wxPoint\& }{pos = wxDefaultPosition},\rtfsp | |
92 | \param{const wxSize\& }{size = wxDefaultSize},\rtfsp | |
93 | \param{long}{ style = wxCP\_DEFAULT\_STYLE},\rtfsp | |
94 | \param{const wxValidator\& }{validator = wxDefaultValidator}, | |
95 | \param{const wxString\& }{name = ``collapsiblePane"}} | |
96 | ||
97 | Initializes the object and calls \helpref{Create}{wxcollapsiblepanecreate} with | |
98 | all the parameters. | |
99 | ||
100 | ||
101 | \membersection{wxCollapsiblePane::Create}\label{wxcollapsiblepanecreate} | |
102 | ||
103 | \func{bool}{Create}{\param{wxWindow *}{parent},\rtfsp | |
104 | \param{wxWindowID}{ id},\rtfsp | |
105 | \param{const wxString\& }{label},\rtfsp | |
106 | \param{const wxPoint\& }{pos = wxDefaultPosition},\rtfsp | |
107 | \param{const wxSize\& }{size = wxDefaultSize},\rtfsp | |
108 | \param{long}{ style = wxCP\_DEFAULT\_STYLE},\rtfsp | |
109 | \param{const wxValidator\& }{validator = wxDefaultValidator}, | |
110 | \param{const wxString\& }{name = ``collapsiblePane"}} | |
111 | ||
112 | \wxheading{Parameters} | |
113 | ||
114 | \docparam{parent}{Parent window, must not be non-\texttt{NULL}.} | |
115 | ||
116 | \docparam{id}{The identifier for the control.} | |
117 | ||
118 | \docparam{label}{The initial label shown in the button which allows the user to expand or collapse the pane window.} | |
119 | ||
120 | \docparam{pos}{Initial position.} | |
121 | ||
122 | \docparam{size}{Initial size.} | |
123 | ||
124 | \docparam{style}{The window style, see {\tt wxCP\_*} flags.} | |
125 | ||
126 | \docparam{validator}{Validator which can be used for additional date checks.} | |
127 | ||
128 | \docparam{name}{Control name.} | |
129 | ||
130 | \wxheading{Return value} | |
131 | ||
132 | \true if the control was successfully created or \false if creation failed. | |
133 | ||
134 | ||
135 | \membersection{wxCollapsiblePane::IsCollapsed}\label{wxcollapsiblepaneiscollapsed} | |
136 | ||
137 | \constfunc{bool}{IsCollapsed}{\void} | |
138 | ||
139 | Returns \true if the pane window is currently hidden. | |
140 | ||
141 | ||
142 | \membersection{wxCollapsiblePane::IsExpanded}\label{wxcollapsiblepaneisexpanded} | |
143 | ||
144 | \constfunc{bool}{IsExpanded}{\void} | |
145 | ||
146 | Returns \true if the pane window is currently shown. | |
147 | ||
148 | ||
149 | \membersection{wxCollapsiblePane::Collapse}\label{wxcollapsiblepanecollapse} | |
150 | ||
151 | \func{void}{Collapse}{\param{bool }{collapse = true}} | |
152 | ||
153 | Collapses or expands the pane window. | |
154 | ||
155 | ||
156 | \membersection{wxCollapsiblePane::Expand}\label{wxcollapsiblepaneexpand} | |
157 | ||
158 | \func{void}{Expand}{\void} | |
159 | ||
160 | Same as \texttt{\helpref{Collapse}{wxcollapsiblepanecollapse}(false)}. | |
161 | ||
162 | ||
163 | \membersection{wxCollapsiblePane::GetPane}\label{wxcollapsiblepanegetpane} | |
164 | ||
165 | \constfunc{wxWindow *}{GetPane}{\void} | |
166 | ||
167 | Returns a pointer to the pane window. Add controls to the returned \helpref{wxWindow}{wxwindow} | |
168 | to make them collapsible. | |
169 | ||
170 | ||
171 | ||
172 | ||
173 | ||
174 | %% wxCollapsiblePaneEvent documentation | |
175 | ||
176 | \section{\class{wxCollapsiblePaneEvent}}\label{wxcollapsiblepaneevent} | |
177 | ||
178 | This event class is used for the events generated by | |
179 | \helpref{wxCollapsiblePane}{wxcollapsiblepane}. | |
180 | ||
181 | \wxheading{Derived from} | |
182 | ||
183 | \helpref{wxCommandEvent}{wxcommandevent}\\ | |
184 | \helpref{wxEvent}{wxevent}\\ | |
185 | \helpref{wxObject}{wxobject} | |
186 | ||
187 | \wxheading{Include files} | |
188 | ||
189 | <wx/collpane.h> | |
190 | ||
191 | \wxheading{Event handling} | |
192 | ||
193 | To process input from a wxCollapsiblePane, use one of these event handler macros to | |
194 | direct input to member function that take a | |
195 | \helpref{wxCollapsiblePaneEvent}{wxcollapsiblepaneevent} argument: | |
196 | ||
197 | \twocolwidtha{7cm} | |
198 | \begin{twocollist} | |
199 | \twocolitem{{\bf EVT\_COLLAPSIBLEPANE\_CHANGED(id, func)}}{The user showed or hidden the collapsible pane.} | |
200 | \end{twocollist}% | |
201 | ||
202 | ||
203 | \wxheading{See also} | |
204 | ||
205 | \helpref{wxCollapsiblePane}{wxcollapsiblepane} | |
206 | ||
207 | \latexignore{\rtfignore{\wxheading{Members}}} | |
208 | ||
209 | \membersection{wxCollapsiblePaneEvent::wxCollapsiblePaneEvent}\label{wxcollapsiblepaneeventctor} | |
210 | ||
211 | \func{}{wxCollapsiblePaneEvent}{\param{wxObject *}{ generator}, \param{int}{ id}, \param{bool}{ collapsed}} | |
212 | ||
213 | The constructor is not normally used by the user code. | |
214 | ||
215 | ||
216 | \membersection{wxCollapsiblePaneEvent::GetCollapsed}\label{wxcollapsiblepaneeventgetcollapsed} | |
217 | ||
218 | \constfunc{bool}{GetCollapsed}{\void} | |
219 | ||
220 | Returns \true if the pane has been collapsed. | |
221 | ||
222 | ||
223 | \membersection{wxCollapsiblePaneEvent::SetCollapsed}\label{wxcollapsiblepaneeventsetcollapsed} | |
224 | ||
225 | \func{void}{SetCollapsed}{\param{bool}{ collapsed}} | |
226 | ||
227 | Sets this as a collapsed pane event (if \arg{collapsed} is \true) or as an expanded | |
228 | pane event (if \arg{collapsed} is \false). | |
229 |