]> git.saurik.com Git - wxWidgets.git/blame_incremental - docs/latex/wx/window.tex
wxProcess fixes (Detach() added), cleared/corrected wxExecute() documentation
[wxWidgets.git] / docs / latex / wx / window.tex
... / ...
CommitLineData
1\section{\class{wxWindow}}\label{wxwindow}
2
3wxWindow is the base class for all windows. Any
4children of the window will be deleted automatically by the destructor
5before the window itself is deleted.
6
7\wxheading{Derived from}
8
9\helpref{wxEvtHandler}{wxevthandler}\\
10\helpref{wxObject}{wxobject}
11
12\wxheading{Include files}
13
14<wx/window.h>
15
16\wxheading{Window styles}
17
18The following styles can apply to all windows, although they will not always make sense for a particular
19window class.
20
21\twocolwidtha{5cm}%
22\begin{twocollist}\itemsep=0pt
23\twocolitem{\windowstyle{wxSIMPLE\_BORDER}}{Displays a thin border around the window. wxBORDER is the old name
24for this style.}
25\twocolitem{\windowstyle{wxDOUBLE\_BORDER}}{Displays a double border. Windows only.}
26\twocolitem{\windowstyle{wxSUNKEN\_BORDER}}{Displays a sunken border.}
27\twocolitem{\windowstyle{wxRAISED\_BORDER}}{Displays a raised border.}
28\twocolitem{\windowstyle{wxSTATIC\_BORDER}}{Displays a border suitable for a static control.}
29\twocolitem{\windowstyle{wxTRANSPARENT\_WINDOW}}{The window is transparent, that is, it will not receive paint
30events. Windows only.}
31\twocolitem{\windowstyle{wxNO\_3D}}{Prevents the children of this window taking on 3D styles, even though
32the application-wide policy is for 3D controls. Windows only.}
33\twocolitem{\windowstyle{wxTAB\_TRAVERSAL}}{Use this to enable tab traversal for non-dialog windows.}
34\twocolitem{\windowstyle{wxVSCROLL}}{Use this style to enable a vertical scrollbar.}
35\twocolitem{\windowstyle{wxHSCROLL}}{Use this style to enable a horizontal scrollbar.}
36\twocolitem{\windowstyle{wxCLIP\_CHILDREN}}{Use this style to eliminate flicker caused by the background being
37repainted, then children being painted over them. Windows-only.}
38\end{twocollist}
39
40See also \helpref{window styles overview}{windowstyles}.
41
42\wxheading{See also}
43
44\helpref{Event handling overview}{eventhandlingoverview}
45
46\latexignore{\rtfignore{\wxheading{Members}}}
47
48\membersection{wxWindow::wxWindow}
49
50\func{}{wxWindow}{\void}
51
52Default constructor.
53
54\func{}{wxWindow}{\param{wxWindow*}{ parent}, \param{wxWindowID }{id},
55 \param{const wxPoint\& }{pos = wxDefaultPosition},
56 \param{const wxSize\& }{size = wxDefaultSize},
57 \param{long }{style = 0},
58 \param{const wxString\& }{name = wxPanelNameStr}}
59
60Constructs a window, which can be a child of a frame, dialog or any other non-control window.
61
62\wxheading{Parameters}
63
64\docparam{parent}{Pointer to a parent window.}
65
66\docparam{id}{Window identifier. If -1, will automatically create an identifier.}
67
68\docparam{pos}{Window position. wxDefaultPosition is (-1, -1) which indicates that wxWindows
69should generate a default position for the window. If using the wxWindow class directly, supply
70an actual position.}
71
72\docparam{size}{Window size. wxDefaultSize is (-1, -1) which indicates that wxWindows
73should generate a default size for the window.}
74
75\docparam{style}{Window style. For generic window styles, please see \helpref{wxWindow}{wxwindow}.}
76
77\docparam{name}{Window name.}
78
79\membersection{wxWindow::\destruct{wxWindow}}
80
81\func{}{\destruct{wxWindow}}{\void}
82
83Destructor. Deletes all subwindows, then deletes itself. Instead of using
84the {\bf delete} operator explicitly, you should normally
85use \helpref{wxWindow::Destroy}{wxwindowdestroy} so that wxWindows
86can delete a window only when it is safe to do so, in idle time.
87
88\wxheading{See also}
89
90\helpref{Window deletion overview}{windowdeletionoverview},\rtfsp
91\helpref{wxWindow::OnCloseWindow}{wxwindowonclosewindow},\rtfsp
92\helpref{wxWindow::Destroy}{wxwindowdestroy},\rtfsp
93\helpref{wxCloseEvent}{wxcloseevent}
94
95\membersection{wxWindow::AddChild}
96
97\func{virtual void}{AddChild}{\param{wxWindow* }{child}}
98
99Adds a child window. This is called automatically by window creation
100functions so should not be required by the application programmer.
101
102\wxheading{Parameters}
103
104\docparam{child}{Child window to add.}
105
106\membersection{wxWindow::CaptureMouse}\label{wxwindowcapturemouse}
107
108\func{virtual void}{CaptureMouse}{\void}
109
110Directs all mouse input to this window. Call \helpref{wxWindow::ReleaseMouse}{wxwindowreleasemouse} to
111release the capture.
112
113\wxheading{See also}
114
115\helpref{wxWindow::ReleaseMouse}{wxwindowreleasemouse}
116
117\membersection{wxWindow::Center}\label{wxwindowcenter}
118
119\func{void}{Center}{\param{int}{ direction}}
120
121A synonym for \helpref{Centre}{wxwindowcentre}.
122
123\membersection{wxWindow::Centre}\label{wxwindowcentre}
124
125\func{virtual void}{Centre}{\param{int}{ direction = wxHORIZONTAL}}
126
127Centres the window.
128
129\wxheading{Parameters}
130
131\docparam{direction}{Specifies the direction for the centering. May be {\tt wxHORIZONTAL}, {\tt wxVERTICAL}\rtfsp
132or {\tt wxBOTH}.}
133
134\wxheading{Remarks}
135
136The actual behaviour depends on the derived window. For a frame or dialog box,
137centring is relative to the whole display. For a panel item, centring is
138relative to the panel.
139
140\wxheading{See also}
141
142\helpref{wxWindow::Center}{wxwindowcenter}
143
144\membersection{wxWindow::Clear}\label{wxwindowclear}
145
146\func{void}{Clear}{\void}
147
148Clears the window by filling it with the current background colour. Does not
149cause an erase background event to be generated.
150
151\membersection{wxWindow::ClientToScreen}
152
153\constfunc{virtual void}{ClientToScreen}{\param{int* }{x}, \param{int* }{y}}
154
155\constfunc{virtual wxPoint}{ClientToScreen}{\param{const wxPoint\&}{ pt}}
156
157Converts to screen coordinates from coordinates relative to this window.
158
159\docparam{x}{A pointer to a integer value for the x coordinate. Pass the client coordinate in, and
160a screen coordinate will be passed out.}
161
162\docparam{y}{A pointer to a integer value for the y coordinate. Pass the client coordinate in, and
163a screen coordinate will be passed out.}
164
165\docparam{pt}{The client position for the second form of the function.}
166
167\membersection{wxWindow::Close}\label{wxwindowclose}
168
169\func{virtual bool}{Close}{\param{const bool}{ force = FALSE}}
170
171The purpose of this call is to provide a safer way of destroying a window than using
172the {\it delete} operator.
173
174\wxheading{Parameters}
175
176\docparam{force}{FALSE if the window's close handler should be able to veto the destruction
177of this window, TRUE if it cannot.}
178
179\wxheading{Remarks}
180
181Close calls the \helpref{close handler}{wxcloseevent} for the window, providing an opportunity for the window to
182choose whether to destroy the window.
183
184The close handler should check whether the window is being deleted forcibly,
185using \helpref{wxCloseEvent::GetForce}{wxcloseeventgetforce}, in which case it should
186destroy the window using \helpref{wxWindow::Destroy}{wxwindowdestroy}.
187
188Applies to managed windows (wxFrame and wxDialog classes) only.
189
190\wxheading{See also}
191
192\helpref{Window deletion overview}{windowdeletionoverview},\rtfsp
193\helpref{wxWindow::OnCloseWindow}{wxwindowonclosewindow},\rtfsp
194\helpref{wxWindow::Destroy}{wxwindowdestroy},\rtfsp
195\helpref{wxCloseEvent}{wxcloseevent}
196
197\membersection{wxWindow::ConvertDialogToPixels}\label{wxwindowconvertdialogtopixels}
198
199\func{wxPoint}{ConvertDialogToPixels}{\param{const wxPoint\&}{ pt}}
200
201\func{wxSize}{ConvertDialogToPixels}{\param{const wxSize\&}{ sz}}
202
203Converts a point or size from dialog units to pixels.
204
205For the x dimension, the dialog units are multiplied by the average character width
206and then divided by 4.
207
208For the y dimension, the dialog units are multiplied by the average character height
209and then divided by 8.
210
211\wxheading{Remarks}
212
213Dialog units are used for maintaining a dialog's proportions even if the font changes.
214Dialogs created using Dialog Editor optionally use dialog units.
215
216You can also use these functions programmatically. A convenience macro is defined:
217
218{\small
219\begin{verbatim}
220#define wxDLG_UNIT(parent, pt) parent->ConvertDialogToPixels(pt)
221\end{verbatim}
222}
223
224\wxheading{See also}
225
226\helpref{wxWindow::ConvertPixelsToDialog}{wxwindowconvertpixelstodialog}
227
228\membersection{wxWindow::ConvertPixelsToDialog}\label{wxwindowconvertpixelstodialog}
229
230\func{wxPoint}{ConvertPixelsToDialog}{\param{const wxPoint\&}{ pt}}
231
232\func{wxSize}{ConvertPixelsToDialog}{\param{const wxSize\&}{ sz}}
233
234Converts a point or size from pixels to dialog units.
235
236For the x dimension, the pixels are multiplied by 4 and then divided by the average
237character width.
238
239For the y dimension, the pixels are multipled by 8 and then divided by the average
240character height.
241
242\wxheading{Remarks}
243
244Dialog units are used for maintaining a dialog's proportions even if the font changes.
245Dialogs created using Dialog Editor optionally use dialog units.
246
247\wxheading{See also}
248
249\helpref{wxWindow::ConvertDialogToPixels}{wxwindowconvertdialogtopixels}
250
251\membersection{wxWindow::Destroy}\label{wxwindowdestroy}
252
253\func{virtual bool}{Destroy}{\void}
254
255Destroys the window safely. Use this function instead of the delete operator, since
256different window classes can be destroyed differently. Frames and dialogs
257are not destroyed immediately when this function is called - they are added
258to a list of windows to be deleted on idle time, when all the window's events
259have been processed. This prevents problems with events being sent to non-existant
260windows.
261
262\wxheading{Return value}
263
264TRUE if the window has either been successfully deleted, or it has been added
265to the list of windows pending real deletion.
266
267\membersection{wxWindow::DestroyChildren}
268
269\func{virtual void}{DestroyChildren}{\void}
270
271Destroys all children of a window. Called automatically by the destructor.
272
273\membersection{wxWindow::DragAcceptFiles}\label{wxwindowdragacceptfiles}
274
275\func{virtual void}{DragAcceptFiles}{\param{const bool}{ accept}}
276
277Enables or disables elibility for drop file events (OnDropFiles).
278
279\wxheading{Parameters}
280
281\docparam{accept}{If TRUE, the window is eligible for drop file events. If FALSE, the window
282will not accept drop file events.}
283
284\wxheading{Remarks}
285
286Windows only.
287
288\wxheading{See also}
289
290\helpref{wxWindow::OnDropFiles}{wxwindowondropfiles}
291
292\membersection{wxWindow::Enable}\label{wxwindowenable}
293
294\func{virtual void}{Enable}{\param{const bool}{ enable}}
295
296Enable or disable the window for user input.
297
298\wxheading{Parameters}
299
300\docparam{enable}{If TRUE, enables the window for input. If FALSE, disables the window.}
301
302\wxheading{See also}
303
304\helpref{wxWindow::IsEnabled}{wxwindowisenabled}
305
306\membersection{wxWindow::FindFocus}\label{wxwindowfindfocus}
307
308\func{static wxWindow*}{FindFocus}{\void}
309
310Finds the window or control which currently has the keyboard focus.
311
312\wxheading{Remarks}
313
314Note that this is a static function, so it can be called without needing a wxWindow pointer.
315
316\wxheading{See also}
317
318\helpref{wxWindow::SetFocus}{wxwindowsetfocus}
319
320\membersection{wxWindow::FindWindow}\label{wxwindowfindwindow}
321
322\func{wxWindow*}{FindWindow}{\param{long}{ id}}
323
324Find a child of this window, by identifier.
325
326\func{wxWindow*}{FindWindow}{\param{const wxString\&}{ name}}
327
328Find a child of this window, by name.
329
330\membersection{wxWindow::Fit}\label{wxwindowfit}
331
332\func{virtual void}{Fit}{\void}
333
334Sizes the window so that it fits around its subwindows.
335
336\membersection{wxWindow::GetBackgroundColour}\label{wxwindowgetbackgroundcolour}
337
338\constfunc{virtual wxColour}{GetBackgroundColour}{\void}
339
340Returns the background colour of the window.
341
342\wxheading{See also}
343
344\helpref{wxWindow::SetBackgroundColour}{wxwindowsetbackgroundcolour},\rtfsp
345\helpref{wxWindow::SetForegroundColour}{wxwindowsetforegroundcolour},\rtfsp
346\helpref{wxWindow::GetForegroundColour}{wxwindowgetforegroundcolour},\rtfsp
347\helpref{wxWindow::OnEraseBackground}{wxwindowonerasebackground}
348
349\membersection{wxWindow::GetCharHeight}
350
351\constfunc{virtual int}{GetCharHeight}{\void}
352
353Returns the character height for this window.
354
355\membersection{wxWindow::GetCharWidth}
356
357\constfunc{virtual int}{GetCharWidth}{\void}
358
359Returns the average character width for this window.
360
361\membersection{wxWindow::GetChildren}
362
363\func{wxList\&}{GetChildren}{\void}
364
365Returns a reference to the list of the window's children.
366
367\membersection{wxWindow::GetClientSize}\label{wxwindowgetclientsize}
368
369\constfunc{virtual void}{GetClientSize}{\param{int* }{width}, \param{int* }{height}}
370
371\constfunc{virtual wxSize}{GetClientSize}{\void}
372
373This gets the size of the window `client area' in pixels. The client area is the
374area which may be drawn on by the programmer, excluding title bar, border etc.
375
376\wxheading{Parameters}
377
378\docparam{width}{Receives the client width in pixels.}
379
380\docparam{height}{Receives the client height in pixels.}
381
382\membersection{wxWindow::GetConstraints}\label{wxwindowgetconstraints}
383
384\constfunc{wxLayoutConstraints*}{GetConstraints}{\void}
385
386Returns a pointer to the window's layout constraints, or NULL if there are none.
387
388\membersection{wxWindow::GetDefaultItem}\label{wxwindowgetdefaultitem}
389
390\constfunc{wxButton*}{GetDefaultItem}{\void}
391
392Returns a pointer to the button which is the default for this window, or NULL.
393
394\membersection{wxWindow::GetDropTarget}\label{wxwindowgetdroptarget}
395
396\constfunc{wxDropTarget*}{GetDropTarget}{\void}
397
398Returns the associated drop target, which may be NULL.
399
400\wxheading{See also}
401
402\helpref{wxWindow::SetDropTarget}{wxwindowsetdroptarget},
403\helpref{Drag and drop overview}{wxdndoverview}
404
405\membersection{wxWindow::GetEventHandler}\label{wxwindowgeteventhandler}
406
407\constfunc{wxEvtHandler*}{GetEventHandler}{\void}
408
409Returns the event handler for this window. By default, the window is its
410own event handler.
411
412\wxheading{See also}
413
414\helpref{wxWindow::SetEventHandler}{wxwindowseteventhandler},\rtfsp
415\helpref{wxWindow::PushEventHandler}{wxwindowpusheventhandler},\rtfsp
416\helpref{wxWindow::PopEventHandler}{wxwindowpusheventhandler},\rtfsp
417\helpref{wxEvtHandler::ProcessEvent}{wxevthandlerprocessevent},\rtfsp
418\helpref{wxEvtHandler}{wxevthandler}\rtfsp
419
420\membersection{wxWindow::GetFont}\label{wxwindowgetfont}
421
422\constfunc{wxFont\&}{GetFont}{\void}
423
424Returns a reference to the font for this window.
425
426\wxheading{See also}
427
428\helpref{wxWindow::SetFont}{wxwindowsetfont}
429
430\membersection{wxWindow::GetForegroundColour}\label{wxwindowgetforegroundcolour}
431
432\func{virtual wxColour}{GetForegroundColour}{\void}
433
434Returns the foreground colour of the window.
435
436\wxheading{Remarks}
437
438The interpretation of foreground colour is open to interpretation according
439to the window class; it may be the text colour or other colour, or it may not
440be used at all.
441
442\wxheading{See also}
443
444\helpref{wxWindow::SetForegroundColour}{wxwindowsetforegroundcolour},\rtfsp
445\helpref{wxWindow::SetBackgroundColour}{wxwindowsetbackgroundcolour},\rtfsp
446\helpref{wxWindow::GetBackgroundColour}{wxwindowgetbackgroundcolour}
447
448\membersection{wxWindow::GetGrandParent}
449
450\constfunc{wxWindow*}{GetGrandParent}{\void}
451
452Returns the grandparent of a window, or NULL if there isn't one.
453
454\membersection{wxWindow::GetHandle}
455
456\constfunc{void*}{GetHandle}{\void}
457
458Returns the platform-specific handle of the physical window. Cast it to an appropriate
459handle, such as {\bf HWND} for Windows or {\bf Widget} for Motif.
460
461\membersection{wxWindow::GetId}\label{wxwindowgetid}
462
463\constfunc{int}{GetId}{\void}
464
465Returns the identifier of the window.
466
467\wxheading{Remarks}
468
469Each window has an integer identifier. If the application has not provided one,
470an identifier will be generated.
471
472\wxheading{See also}
473
474\helpref{wxWindow::SetId}{wxwindowsetid}\rtfsp
475\helpref{Window identifiers}{windowids}
476
477\membersection{wxWindow::GetPosition}
478
479\constfunc{virtual void}{GetPosition}{\param{int* }{x}, \param{int* }{y}}
480
481This gets the position of the window in pixels, relative to the parent window or
482if no parent, relative to the whole display.
483
484\wxheading{Parameters}
485
486\docparam{x}{Receives the x position of the window.}
487
488\docparam{y}{Receives the y position of the window.}
489
490\membersection{wxWindow::GetLabel}
491
492\constfunc{virtual wxString\& }{GetLabel}{\void}
493
494Generic way of getting a label from any window, for
495identification purposes.
496
497\wxheading{Remarks}
498
499The interpretation of this function differs from class to class.
500For frames and dialogs, the value returned is the title. For buttons or static text controls, it is
501the button text. This function can be useful for meta-programs (such as testing
502tools or special-needs access programs) which need to identify windows
503by name.
504
505\membersection{wxWindow::GetName}\label{wxwindowgetname}
506
507\constfunc{virtual wxString\& }{GetName}{\void}
508
509Returns the window's name.
510
511\wxheading{Remarks}
512
513This name is not guaranteed to be unique; it is up to the programmer to supply an appropriate
514name in the window constructor or via \helpref{wxWindow::SetName}{wxwindowsetname}.
515
516\wxheading{See also}
517
518\helpref{wxWindow::SetName}{wxwindowsetname}
519
520\membersection{wxWindow::GetParent}
521
522\constfunc{virtual wxWindow*}{GetParent}{\void}
523
524Returns the parent of the window, or NULL if there is no parent.
525
526\membersection{wxWindow::GetRect}\label{wxwindowgetrect}
527
528\constfunc{virtual wxRect}{GetRect}{\void}
529
530Returns the size and position of the window as a \helpref{wxRect}{wxrect} object.
531
532\membersection{wxWindow::GetReturnCode}\label{wxwindowgetreturncode}
533
534\func{int}{GetReturnCode}{\void}
535
536Gets the return code for this window.
537
538\wxheading{Remarks}
539
540A return code is normally associated with a modal dialog, where \helpref{wxDialog::ShowModal}{wxdialogshowmodal} returns
541a code to the application.
542
543\wxheading{See also}
544
545\helpref{wxWindow::SetReturnCode}{wxwindowsetreturncode}, \helpref{wxDialog::ShowModal}{wxdialogshowmodal},\rtfsp
546\helpref{wxDialog::EndModal}{wxdialogendmodal}
547
548\membersection{wxWindow::GetScrollThumb}\label{wxwindowgetscrollthumb}
549
550\func{virtual int}{GetScrollThumb}{\param{int }{orientation}}
551
552Returns the built-in scrollbar thumb size.
553
554\wxheading{See also}
555
556\helpref{wxWindow::SetScrollbar}{wxwindowsetscrollbar}
557
558\membersection{wxWindow::GetScrollPos}\label{wxwindowgetscrollpos}
559
560\func{virtual int}{GetScrollPos}{\param{int }{orientation}}
561
562Returns the built-in scrollbar position.
563
564\wxheading{See also}
565
566See \helpref{wxWindow::SetScrollbar}{wxwindowsetscrollbar}
567
568\membersection{wxWindow::GetScrollRange}\label{wxwindowgetscrollrange}
569
570\func{virtual int}{GetScrollRange}{\param{int }{orientation}}
571
572Returns the built-in scrollbar range.
573
574\wxheading{See also}
575
576\helpref{wxWindow::SetScrollbar}{wxwindowsetscrollbar}
577
578\membersection{wxWindow::GetSize}\label{wxwindowgetsize}
579
580\constfunc{virtual void}{GetSize}{\param{int* }{width}, \param{int* }{height}}
581
582\constfunc{virtual wxSize}{GetSize}{\void}
583
584This gets the size of the entire window in pixels.
585
586\wxheading{Parameters}
587
588\docparam{width}{Receives the window width.}
589
590\docparam{height}{Receives the window height.}
591
592\membersection{wxWindow::GetTextExtent}
593
594\constfunc{virtual void}{GetTextExtent}{\param{const wxString\& }{string}, \param{int* }{x}, \param{int* }{y},
595 \param{int* }{descent = NULL}, \param{int* }{externalLeading = NULL},
596 \param{const wxFont* }{font = NULL}, \param{const bool}{ use16 = FALSE}}
597
598Gets the dimensions of the string as it would be drawn on the
599window with the currently selected font.
600
601\wxheading{Parameters}
602
603\docparam{string}{String whose extent is to be measured.}
604
605\docparam{x}{Return value for width.}
606
607\docparam{y}{Return value for height.}
608
609\docparam{descent}{Return value for descent (optional).}
610
611\docparam{externalLeading}{Return value for external leading (optional).}
612
613\docparam{font}{Font to use instead of the current window font (optional).}
614
615\docparam{use16}{If TRUE, {\it string} contains 16-bit characters. The default is FALSE.}
616
617\membersection{wxWindow::GetTitle}\label{wxwindowgettitle}
618
619\func{virtual wxString}{GetTitle}{\void}
620
621Gets the window's title. Applicable only to frames and dialogs.
622
623\wxheading{See also}
624
625\helpref{wxWindow::SetTitle}{wxwindowsettitle}
626
627\membersection{wxWindow::GetUpdateRegion}\label{wxwindowgetupdateregion}
628
629\constfunc{virtual wxRegion}{GetUpdateRegion}{\void}
630
631Returns the region specifying which parts of the window have been damaged. Should
632only be called within an \helpref{OnPaint}{wxwindowonpaint} event handler.
633
634\wxheading{See also}
635
636\helpref{wxRegion}{wxregion}, \helpref{wxRegionIterator}{wxregioniterator}, \helpref{wxWindow::OnPaint}{wxwindowonpaint}
637
638\membersection{wxWindow::GetWindowStyleFlag}
639
640\constfunc{long}{GetWindowStyleFlag}{\void}
641
642Gets the window style that was passed to the consructor or {\bf Create} member.
643
644\membersection{wxWindow::InitDialog}\label{wxwindowinitdialog}
645
646\func{void}{InitDialog}{\void}
647
648Sends an \helpref{wxWindow::OnInitDialog}{wxwindowoninitdialog} event, which
649in turn transfers data to the dialog via validators.
650
651\wxheading{See also}
652
653\helpref{wxWindow::OnInitDialog}{wxwindowoninitdialog}
654
655\membersection{wxWindow::IsEnabled}\label{wxwindowisenabled}
656
657\constfunc{virtual bool}{IsEnabled}{\void}
658
659Returns TRUE if the window is enabled for input, FALSE otherwise.
660
661\wxheading{See also}
662
663\helpref{wxWindow::Enable}{wxwindowenable}
664
665\membersection{wxWindow::IsRetained}\label{wxwindowisretained}
666
667\constfunc{virtual bool}{IsRetained}{\void}
668
669Returns TRUE if the window is retained, FALSE otherwise.
670
671\wxheading{Remarks}
672
673Retained windows are only available on X platforms.
674
675\membersection{wxWindow::IsShown}\label{wxwindowisshown}
676
677\constfunc{virtual bool}{IsShown}{\void}
678
679Returns TRUE if the window is shown, FALSE if it has been hidden.
680
681\membersection{wxWindow::Layout}\label{wxwindowlayout}
682
683\func{void}{Layout}{\void}
684
685Invokes the constraint-based layout algorithm for this window. It is called
686automatically by the default {\bf wxWindow::OnSize} member.
687
688\membersection{wxWindow::LoadFromResource}\label{wxwindowloadfromresource}
689
690\func{virtual bool}{LoadFromResource}{\param{wxWindow* }{parent},\rtfsp
691\param{const wxString\& }{resourceName}, \param{const wxResourceTable* }{resourceTable = NULL}}
692
693Loads a panel or dialog from a resource file.
694
695\wxheading{Parameters}
696
697\docparam{parent}{Parent window.}
698
699\docparam{resourceName}{The name of the resource to load.}
700
701\docparam{resourceTable}{The resource table to load it from. If this is NULL, the
702default resource table will be used.}
703
704\wxheading{Return value}
705
706TRUE if the operation succeeded, otherwise FALSE.
707
708\membersection{wxWindow::Lower}\label{wxwindowlower}
709
710\func{void}{Lower}{\void}
711
712Lowers the window to the bottom of the window hierarchy if it is a managed window (dialog
713or frame).
714
715\membersection{wxWindow::MakeModal}\label{wxwindowmakemodal}
716
717\func{virtual void}{MakeModal}{\param{const bool }{flag}}
718
719Disables all other windows in the application so that
720the user can only interact with this window.
721
722\wxheading{Parameters}
723
724\docparam{flag}{If TRUE, this call disables all other windows in the application so that
725the user can only interact with this window. If FALSE, the effect is reversed.}
726
727\membersection{wxWindow::Move}\label{wxwindowmove}
728
729\func{void}{Move}{\param{int}{ x}, \param{int}{ y}}
730
731\func{void}{Move}{\param{const wxPoint\&}{ pt}}
732
733Moves the window to the given position.
734
735\wxheading{Parameters}
736
737\docparam{x}{Required x position.}
738
739\docparam{y}{Required y position.}
740
741\docparam{pt}{\helpref{wxPoint}{wxpoint} object representing the position.}
742
743\wxheading{Remarks}
744
745Implementations of SetSize can also implicitly implement the
746wxWindow::Move function, which is defined in the base wxWindow class
747as the call:
748
749\begin{verbatim}
750 SetSize(x, y, -1, -1, wxSIZE_USE_EXISTING);
751\end{verbatim}
752
753\wxheading{See also}
754
755\helpref{wxWindow::SetSize}{wxwindowsetsize}
756
757\membersection{wxWindow::OnActivate}\label{wxwindowonactivate}
758
759\func{void}{OnActivate}{\param{wxActivateEvent\&}{ event}}
760
761Called when a window is activated or deactivated.
762
763\wxheading{Parameters}
764
765\docparam{event}{Object containing activation information.}
766
767\wxheading{Remarks}
768
769If the window is being activated, \helpref{wxActivateEvent::GetActive}{wxactivateeventgetactive} returns TRUE,
770otherwise it returns FALSE (it is being deactivated).
771
772\wxheading{See also}
773
774\helpref{wxActivateEvent}{wxactivateevent},\rtfsp
775\helpref{Event handling overview}{eventhandlingoverview}
776
777\membersection{wxWindow::OnChar}\label{wxwindowonchar}
778
779\func{void}{OnChar}{\param{wxKeyEvent\&}{ event}}
780
781Called when the user has pressed a key that is not a modifier (SHIFT, CONTROL or ALT).
782
783\wxheading{Parameters}
784
785\docparam{event}{Object containing keypress information. See \helpref{wxKeyEvent}{wxkeyevent} for
786details about this class.}
787
788\wxheading{Remarks}
789
790This member function is called in response to a keypress. To intercept this event,
791use the EVT\_CHAR macro in an event table definition. Your {\bf OnChar} handler may call this
792default function to achieve default keypress functionality.
793
794Note that the ASCII values do not have explicit key codes: they are passed as ASCII
795values.
796
797Note that not all keypresses can be intercepted this way. If you wish to intercept modifier
798keypresses, then you will need to use \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown} or
799\helpref{wxWindow::OnKeyUp}{wxwindowonkeyup}.
800
801Most, but not all, windows allow keypresses to be intercepted.
802
803\wxheading{See also}
804
805\helpref{wxWindow::OnKeyDown}{wxwindowonkeydown}, \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup},\rtfsp
806\helpref{wxKeyEvent}{wxkeyevent}, \helpref{wxWindow::OnCharHook}{wxwindowoncharhook},\rtfsp
807\helpref{Event handling overview}{eventhandlingoverview}
808
809\membersection{wxWindow::OnCharHook}\label{wxwindowoncharhook}
810
811\func{void}{OnCharHook}{\param{wxKeyEvent\&}{ event}}
812
813This member is called to allow the window to intercept keyboard events
814before they are processed by child windows.
815
816\wxheading{Parameters}
817
818\docparam{event}{Object containing keypress information. See \helpref{wxKeyEvent}{wxkeyevent} for
819details about this class.}
820
821\wxheading{Remarks}
822
823This member function is called in response to a keypress, if the window is active. To intercept this event,
824use the EVT\_CHAR\_HOOK macro in an event table definition. If you do not process a particular
825keypress, call \helpref{wxEvent::Skip}{wxeventskip} to allow default processing.
826
827An example of using this function is in the implementation of escape-character processing for wxDialog,
828where pressing ESC dismisses the dialog by {\bf OnCharHook} 'forging' a cancel button press event.
829
830Note that the ASCII values do not have explicit key codes: they are passed as ASCII
831values.
832
833This function is only relevant to top-level windows (frames and dialogs), and under
834Windows only.
835
836\wxheading{See also}
837
838\helpref{wxKeyEvent}{wxkeyevent}, \helpref{wxWindow::OnCharHook}{wxwindowoncharhook},\rtfsp
839\helpref{wxApp::OnCharHook}{wxapponcharhook},\rtfsp
840\helpref{Event handling overview}{eventhandlingoverview}
841
842\membersection{wxWindow::OnCommand}\label{wxwindowoncommand}
843
844\func{virtual void}{OnCommand}{\param{wxEvtHandler\& }{object}, \param{wxCommandEvent\& }{event}}
845
846This virtual member function is called if the control does not handle the command event.
847
848\wxheading{Parameters}
849
850\docparam{object}{Object receiving the command event.}
851
852\docparam{event}{Command event}
853
854\wxheading{Remarks}
855
856This virtual function is provided mainly for backward compatibility. You can also intercept commands
857from child controls by using an event table, with identifiers or identifier ranges to identify
858the control(s) in question.
859
860\wxheading{See also}
861
862\helpref{wxCommandEvent}{wxcommandevent},\rtfsp
863\helpref{Event handling overview}{eventhandlingoverview}
864
865\membersection{wxWindow::OnClose}\label{wxwindowonclose}
866
867\func{virtual bool}{OnClose}{\void}
868
869Called when the user has tried to close a a frame
870or dialog box using the window manager (X) or system menu (Windows).
871
872{\bf Note:} This is an obsolete function.
873It is superceded by the \helpref{wxWindow::OnCloseWindow}{wxwindowonclosewindow} event
874handler.
875
876\wxheading{Return value}
877
878If TRUE is returned by OnClose, the window will be deleted by the system, otherwise the
879attempt will be ignored. Do not delete the window from within this handler, although
880you may delete other windows.
881
882\wxheading{See also}
883
884\helpref{Window deletion overview}{windowdeletionoverview},\rtfsp
885\helpref{wxWindow::Close}{wxwindowclose},\rtfsp
886\helpref{wxWindow::OnCloseWindow}{wxwindowonclosewindow},\rtfsp
887\helpref{wxCloseEvent}{wxcloseevent}
888
889\membersection{wxWindow::OnCloseWindow}\label{wxwindowonclosewindow}
890
891\func{void}{OnCloseWindow}{\param{wxCloseEvent\& }{event}}
892
893This is an event handler function called when the user has tried to close a a frame
894or dialog box using the window manager (X) or system menu (Windows). It is
895called via the \helpref{wxWindow::Close}{wxwindowclose} function, so
896that the application can also invoke the handler programmatically.
897
898Use the EVT\_CLOSE event table macro to handle close events.
899
900You should check whether the application is forcing the deletion of the window
901using \helpref{wxCloseEvent::GetForce}{wxcloseeventgetforce}. If this is TRUE,
902destroy the window using \helpref{wxWindow::Destroy}{wxwindowdestroy}.
903If not, it is up to you whether you respond by destroying the window.
904
905(Note: GetForce is now superceded by CanVeto. So to test whether forced destruction of
906the window is required, test for the negative of CanVeto. If CanVeto returns FALSE,
907it is not possible to skip window deletion.)
908
909If you don't destroy the window, you should call \helpref{wxCloseEvent::Veto}{wxcloseeventveto} to
910let the calling code know that you did not destroy the window. This allows the \helpref{wxWindow::Close}{wxwindowclose} function
911to return TRUE or FALSE depending on whether the close instruction was honoured or not.
912
913\wxheading{Remarks}
914
915The \helpref{wxWindow::OnClose}{wxwindowonclose} virtual function remains
916for backward compatibility with earlier versions of wxWindows. The
917default {\bf OnCloseWindow} handler for wxFrame and wxDialog will call {\bf OnClose},
918destroying the window if it returns TRUE or if the close is being forced.
919
920\wxheading{See also}
921
922\helpref{Window deletion overview}{windowdeletionoverview},\rtfsp
923\helpref{wxWindow::Close}{wxwindowclose},\rtfsp
924\helpref{wxWindow::OnClose}{wxwindowonclose},\rtfsp
925\helpref{wxWindow::Destroy}{wxwindowdestroy},\rtfsp
926\helpref{wxCloseEvent}{wxcloseevent},\rtfsp
927\helpref{wxApp::OnQueryEndSession}{wxapponqueryendsession},\rtfsp
928\helpref{wxApp::OnEndSession}{wxapponendsession}
929
930\membersection{wxWindow::OnDropFiles}\label{wxwindowondropfiles}
931
932\func{void}{OnDropFiles}{\param{wxDropFilesEvent\&}{ event}}
933
934Called when files have been dragged from the file manager to the window.
935
936\wxheading{Parameters}
937
938\docparam{event}{Drop files event. For more information, see \helpref{wxDropFilesEvent}{wxdropfilesevent}.}
939
940\wxheading{Remarks}
941
942The window must have previously been enabled for dropping by calling
943\rtfsp\helpref{wxWindow::DragAcceptFiles}{wxwindowdragacceptfiles}.
944
945This event is only generated under Windows.
946
947To intercept this event, use the EVT\_DROP\_FILES macro in an event table definition.
948
949\wxheading{See also}
950
951\helpref{wxDropFilesEvent}{wxdropfilesevent}, \helpref{wxWindow::DragAcceptFiles}{wxwindowdragacceptfiles},\rtfsp
952\helpref{Event handling overview}{eventhandlingoverview}
953
954\membersection{wxWindow::OnEraseBackground}\label{wxwindowonerasebackground}
955
956\func{void}{OnEraseBackground}{\param{wxEraseEvent\&}{ event}}
957
958Called when the background of the window needs to be erased.
959
960\wxheading{Parameters}
961
962\docparam{event}{Erase background event. For more information, see \helpref{wxEraseEvent}{wxeraseevent}.}
963
964\wxheading{Remarks}
965
966This event is only generated under Windows.
967
968To intercept this event, use the EVT\_ERASE\_BACKGROUND macro in an event table definition.
969
970\wxheading{See also}
971
972\helpref{wxEraseEvent}{wxeraseevent}, \helpref{Event handling overview}{eventhandlingoverview}
973
974\membersection{wxWindow::OnKeyDown}\label{wxwindowonkeydown}
975
976\func{void}{OnKeyDown}{\param{wxKeyEvent\&}{ event}}
977
978Called when the user has pressed a key, before it is translated into an ASCII value using other
979modifier keys that might be pressed at the same time.
980
981\wxheading{Parameters}
982
983\docparam{event}{Object containing keypress information. See \helpref{wxKeyEvent}{wxkeyevent} for
984details about this class.}
985
986\wxheading{Remarks}
987
988This member function is called in response to a key down event. To intercept this event,
989use the EVT\_KEY\_DOWN macro in an event table definition. Your {\bf OnKeyDown} handler may call this
990default function to achieve default keypress functionality.
991
992Note that not all keypresses can be intercepted this way. If you wish to intercept special
993keys, such as shift, control, and function keys, then you will need to use \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown} or
994\helpref{wxWindow::OnKeyUp}{wxwindowonkeyup}.
995
996Most, but not all, windows allow keypresses to be intercepted.
997
998\wxheading{See also}
999
1000\helpref{wxWindow::OnChar}{wxwindowonchar}, \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup},\rtfsp
1001\helpref{wxKeyEvent}{wxkeyevent}, \helpref{wxWindow::OnCharHook}{wxwindowoncharhook},\rtfsp
1002\helpref{Event handling overview}{eventhandlingoverview}
1003
1004\membersection{wxWindow::OnKeyUp}\label{wxwindowonkeyup}
1005
1006\func{void}{OnKeyUp}{\param{wxKeyEvent\&}{ event}}
1007
1008Called when the user has released a key.
1009
1010\wxheading{Parameters}
1011
1012\docparam{event}{Object containing keypress information. See \helpref{wxKeyEvent}{wxkeyevent} for
1013details about this class.}
1014
1015\wxheading{Remarks}
1016
1017This member function is called in response to a key up event. To intercept this event,
1018use the EVT\_KEY\_UP macro in an event table definition. Your {\bf OnKeyUp} handler may call this
1019default function to achieve default keypress functionality.
1020
1021Note that not all keypresses can be intercepted this way. If you wish to intercept special
1022keys, such as shift, control, and function keys, then you will need to use \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown} or
1023\helpref{wxWindow::OnKeyUp}{wxwindowonkeyup}.
1024
1025Most, but not all, windows allow key up events to be intercepted.
1026
1027\wxheading{See also}
1028
1029\helpref{wxWindow::OnChar}{wxwindowonchar}, \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown},\rtfsp
1030\helpref{wxKeyEvent}{wxkeyevent}, \helpref{wxWindow::OnCharHook}{wxwindowoncharhook},\rtfsp
1031\helpref{Event handling overview}{eventhandlingoverview}
1032
1033\membersection{wxWindow::OnKillFocus}\label{wxwindowonkillfocus}
1034
1035\func{void}{OnKillFocus}{\param{wxFocusEvent\& }{event}}
1036
1037Called when a window's focus is being killed.
1038
1039\wxheading{Parameters}
1040
1041\docparam{event}{The focus event. For more information, see \helpref{wxFocusEvent}{wxfocusevent}.}
1042
1043\wxheading{Remarks}
1044
1045To intercept this event, use the macro EVT\_KILL\_FOCUS in an event table definition.
1046
1047Most, but not all, windows respond to this event.
1048
1049\wxheading{See also}
1050
1051\helpref{wxFocusEvent}{wxfocusevent}, \helpref{wxWindow::OnSetFocus}{wxwindowonsetfocus},\rtfsp
1052\helpref{Event handling overview}{eventhandlingoverview}
1053
1054\membersection{wxWindow::OnIdle}\label{wxwindowonidle}
1055
1056\func{void}{OnIdle}{\param{wxIdleEvent\& }{event}}
1057
1058Provide this member function for any processing which needs to be done
1059when the application is idle.
1060
1061\wxheading{See also}
1062
1063\helpref{wxApp::OnIdle}{wxapponidle}, \helpref{wxIdleEvent}{wxidleevent}
1064
1065\membersection{wxWindow::OnInitDialog}\label{wxwindowoninitdialog}
1066
1067\func{void}{OnInitDialog}{\param{wxInitDialogEvent\&}{ event}}
1068
1069Default handler for the wxEVT\_INIT\_DIALOG event. Calls \helpref{wxWindow::TransferDataToWindow}{wxwindowtransferdatatowindow}.
1070
1071\wxheading{Parameters}
1072
1073\docparam{event}{Dialog initialisation event.}
1074
1075\wxheading{Remarks}
1076
1077Gives the window the default behaviour of transferring data to child controls via
1078the validator that each control has.
1079
1080\wxheading{See also}
1081
1082\helpref{wxValidator}{wxvalidator}, \helpref{wxWindow::TransferDataToWindow}{wxwindowtransferdatatowindow}
1083
1084\membersection{wxWindow::OnMenuCommand}\label{wxwindowonmenucommand}
1085
1086\func{void}{OnMenuCommand}{\param{wxCommandEvent\& }{event}}
1087
1088Called when a menu command is received from a menu bar.
1089
1090\wxheading{Parameters}
1091
1092\docparam{event}{The menu command event. For more information, see \helpref{wxCommandEvent}{wxcommandevent}.}
1093
1094\wxheading{Remarks}
1095
1096A function with this name doesn't actually exist; you can choose any member function to receive
1097menu command events, using the EVT\_COMMAND macro for individual commands or EVT\_COMMAND\_RANGE for
1098a range of commands.
1099
1100\wxheading{See also}
1101
1102\helpref{wxCommandEvent}{wxcommandevent},\rtfsp
1103\helpref{wxWindow::OnMenuHighlight}{wxwindowonmenuhighlight},\rtfsp
1104\helpref{Event handling overview}{eventhandlingoverview}
1105
1106\membersection{wxWindow::OnMenuHighlight}\label{wxwindowonmenuhighlight}
1107
1108\func{void}{OnMenuHighlight}{\param{wxMenuEvent\& }{event}}
1109
1110Called when a menu select is received from a menu bar: that is, the
1111mouse cursor is over a menu item, but the left mouse button has not been
1112pressed.
1113
1114\wxheading{Parameters}
1115
1116\docparam{event}{The menu highlight event. For more information, see \helpref{wxMenuEvent}{wxmenuevent}.}
1117
1118\wxheading{Remarks}
1119
1120You can choose any member function to receive
1121menu select events, using the EVT\_MENU\_HIGHLIGHT macro for individual menu items or EVT\_MENU\_HIGHLIGHT\_ALL macro
1122for all menu items.
1123
1124The default implementation for \helpref{wxFrame::OnMenuHighlight}{wxframeonmenuhighlight} displays help
1125text in the first field of the status bar.
1126
1127This function was known as {\bf OnMenuSelect} in earlier versions of wxWindows, but this was confusing
1128since a selection is normally a left-click action.
1129
1130\wxheading{See also}
1131
1132\helpref{wxMenuEvent}{wxmenuevent},\rtfsp
1133\helpref{wxWindow::OnMenuCommand}{wxwindowonmenucommand},\rtfsp
1134\helpref{Event handling overview}{eventhandlingoverview}
1135
1136
1137\membersection{wxWindow::OnMouseEvent}\label{wxwindowonmouseevent}
1138
1139\func{void}{OnMouseEvent}{\param{wxMouseEvent\&}{ event}}
1140
1141Called when the user has initiated an event with the
1142mouse.
1143
1144\wxheading{Parameters}
1145
1146\docparam{event}{The mouse event. See \helpref{wxMouseEvent}{wxmouseevent} for
1147more details.}
1148
1149\wxheading{Remarks}
1150
1151Most, but not all, windows respond to this event.
1152
1153To intercept this event, use the EVT\_MOUSE\_EVENTS macro in an event table definition, or individual
1154mouse event macros such as EVT\_LEFT\_DOWN.
1155
1156\wxheading{See also}
1157
1158\helpref{wxMouseEvent}{wxmouseevent},\rtfsp
1159\helpref{Event handling overview}{eventhandlingoverview}
1160
1161\membersection{wxWindow::OnMove}\label{wxwindowonmove}
1162
1163\func{void}{OnMove}{\param{wxMoveEvent\& }{event}}
1164
1165Called when a window is moved.
1166
1167\wxheading{Parameters}
1168
1169\docparam{event}{The move event. For more information, see \helpref{wxMoveEvent}{wxmoveevent}.}
1170
1171\wxheading{Remarks}
1172
1173Use the EVT\_MOVE macro to intercept move events.
1174
1175\wxheading{Remarks}
1176
1177Not currently implemented.
1178
1179\wxheading{See also}
1180
1181\helpref{wxMoveEvent}{wxmoveevent},\rtfsp
1182\helpref{wxFrame::OnSize}{wxframeonsize},\rtfsp
1183\helpref{Event handling overview}{eventhandlingoverview}
1184
1185\membersection{wxWindow::OnPaint}\label{wxwindowonpaint}
1186
1187\func{void}{OnPaint}{\param{wxPaintEvent\& }{event}}
1188
1189Sent to the event handler when the window must be refreshed.
1190
1191\wxheading{Parameters}
1192
1193\docparam{event}{Paint event. For more information, see \helpref{wxPaintEvent}{wxpaintevent}.}
1194
1195\wxheading{Remarks}
1196
1197Use the EVT\_PAINT macro in an event table definition to intercept paint events.
1198
1199In a paint event handler, the application should always create a \helpref{wxPaintDC}{wxpaintdc} object.
1200
1201For example:
1202
1203\small{%
1204\begin{verbatim}
1205 void MyWindow::OnPaint(wxPaintEvent& event)
1206 {
1207 wxPaintDC dc(this);
1208
1209 DrawMyDocument(dc);
1210 }
1211\end{verbatim}
1212}%
1213
1214You can optimize painting by retrieving the rectangles
1215that have been damaged and only repainting these. The rectangles are in
1216terms of the client area, and are unscrolled, so you will need to do
1217some calculations using the current view position to obtain logical,
1218scrolled units.
1219
1220Here is an example of using the \helpref{wxRegionIterator}{wxregioniterator} class:
1221
1222{\small%
1223\begin{verbatim}
1224// Called when window needs to be repainted.
1225void MyWindow::OnPaint(wxPaintEvent& event)
1226{
1227 wxPaintDC dc(this);
1228
1229 // Find Out where the window is scrolled to
1230 int vbX,vbY; // Top left corner of client
1231 ViewStart(&vbX,&vbY);
1232
1233 int vX,vY,vW,vH; // Dimensions of client area in pixels
1234 wxRegionIterator upd(GetUpdateRegion()); // get the update rect list
1235
1236 while (upd)
1237 {
1238 vX = upd.GetX();
1239 vY = upd.GetY();
1240 vW = upd.GetW();
1241 vH = upd.GetH();
1242
1243 // Alternatively we can do this:
1244 // wxRect rect;
1245 // upd.GetRect(&rect);
1246
1247 // Repaint this rectangle
1248 ...some code...
1249
1250 upd ++ ;
1251 }
1252}
1253\end{verbatim}
1254}%
1255
1256\wxheading{See also}
1257
1258\helpref{wxPaintEvent}{wxpaintevent},\rtfsp
1259\helpref{wxPaintDC}{wxpaintdc},\rtfsp
1260\helpref{Event handling overview}{eventhandlingoverview}
1261
1262\membersection{wxWindow::OnScroll}\label{wxwindowonscroll}
1263
1264\func{void}{OnScroll}{\param{wxScrollEvent\& }{event}}
1265
1266Called when a scroll event is received from one of the window's built-in scrollbars.
1267
1268\wxheading{Parameters}
1269
1270\docparam{event}{Command event. Retrieve the new scroll position by
1271calling \helpref{wxScrollEvent::GetPosition}{wxscrolleventgetposition}, and the
1272scrollbar orientation by calling \helpref{wxScrollEvent::GetOrientation}{wxscrolleventgetorientation}.}
1273
1274\wxheading{Remarks}
1275
1276Note that it is not possible to distinguish between horizontal and vertical scrollbars
1277until the function is executing (you can't have one function for vertical, another
1278for horizontal events).
1279
1280\wxheading{See also}
1281
1282\helpref{wxScrollEvent}{wxscrollevent},\rtfsp
1283\helpref{Event handling overview}{eventhandlingoverview}
1284
1285\membersection{wxWindow::OnSetFocus}\label{wxwindowonsetfocus}
1286
1287\func{void}{OnSetFocus}{\param{wxFocusEvent\& }{event}}
1288
1289Called when a window's focus is being set.
1290
1291\wxheading{Parameters}
1292
1293\docparam{event}{The focus event. For more information, see \helpref{wxFocusEvent}{wxfocusevent}.}
1294
1295\wxheading{Remarks}
1296
1297To intercept this event, use the macro EVT\_SET\_FOCUS in an event table definition.
1298
1299Most, but not all, windows respond to this event.
1300
1301\wxheading{See also}
1302
1303\helpref{wxFocusEvent}{wxfocusevent}, \helpref{wxWindow::OnKillFocus}{wxwindowonkillfocus},\rtfsp
1304\helpref{Event handling overview}{eventhandlingoverview}
1305
1306\membersection{wxWindow::OnSize}\label{wxwindowonsize}
1307
1308\func{void}{OnSize}{\param{wxSizeEvent\& }{event}}
1309
1310Called when the window has been resized.
1311
1312\wxheading{Parameters}
1313
1314\docparam{event}{Size event. For more information, see \helpref{wxSizeEvent}{wxsizeevent}.}
1315
1316\wxheading{Remarks}
1317
1318You may wish to use this for frames to resize their child windows as appropriate.
1319
1320Note that the size passed is of
1321the whole window: call \helpref{wxWindow::GetClientSize}{wxwindowgetclientsize} for the area which may be
1322used by the application.
1323
1324\wxheading{See also}
1325
1326\helpref{wxSizeEvent}{wxsizeevent},\rtfsp
1327\helpref{Event handling overview}{eventhandlingoverview}
1328
1329\membersection{wxWindow::OnSysColourChanged}\label{wxwindowonsyscolourchanged}
1330
1331\func{void}{OnSysColourChanged}{\param{wxOnSysColourChangedEvent\& }{event}}
1332
1333Called when the user has changed the system colours.
1334
1335\wxheading{Parameters}
1336
1337\docparam{event}{System colour change event. For more information, see \helpref{wxSysColourChangedEvent}{wxsyscolourchangedevent}.}
1338
1339\wxheading{See also}
1340
1341\helpref{wxSysColourChangedEvent}{wxsyscolourchangedevent},\rtfsp
1342\helpref{Event handling overview}{eventhandlingoverview}
1343
1344\membersection{wxWindow::PopEventHandler}\label{wxwindowpopeventhandler}
1345
1346\constfunc{wxEvtHandler*}{PopEventHandler}{\param{bool }{deleteHandler = FALSE}}
1347
1348Removes and returns the top-most event handler on the event handler stack.
1349
1350\wxheading{Parameters}
1351
1352\docparam{deleteHandler}{If this is TRUE, the handler will be deleted after it is removed. The
1353default value is FALSE.}
1354
1355\wxheading{See also}
1356
1357\helpref{wxWindow::SetEventHandler}{wxwindowseteventhandler},\rtfsp
1358\helpref{wxWindow::GetEventHandler}{wxwindowgeteventhandler},\rtfsp
1359\helpref{wxWindow::PushEventHandler}{wxwindowpusheventhandler},\rtfsp
1360\helpref{wxEvtHandler::ProcessEvent}{wxevthandlerprocessevent},\rtfsp
1361\helpref{wxEvtHandler}{wxevthandler}\rtfsp
1362
1363\membersection{wxWindow::PopupMenu}\label{wxwindowpopupmenu}
1364
1365\func{virtual bool}{PopupMenu}{\param{wxMenu* }{menu}, \param{int }{x}, \param{int }{y}}
1366
1367Pops up the given menu at the specified coordinates, relative to this
1368window, and returns control when the user has dismissed the menu. If a
1369menu item is selected, the callback defined for the menu is called with
1370wxMenu and wxCommandEvent reference arguments. The callback should access
1371the commandInt member of the event to check the selected menu identifier.
1372
1373\wxheading{Parameters}
1374
1375\docparam{menu}{Menu to pop up.}
1376
1377\docparam{x}{Required x position for the menu to appear.}
1378
1379\docparam{y}{Required y position for the menu to appear.}
1380
1381\wxheading{See also}
1382
1383\helpref{wxMenu}{wxmenu}
1384
1385\wxheading{Remarks}
1386
1387Just before the menu is popped up, \helpref{wxMenu::UpdateUI}{wxmenuupdateui} is called
1388to ensure that the menu items are in the correct state.
1389
1390\membersection{wxWindow::PushEventHandler}\label{wxwindowpusheventhandler}
1391
1392\func{void}{PushEventHandler}{\param{wxEvtHandler* }{handler}}
1393
1394Pushes this event handler onto the event stack for the window.
1395
1396\wxheading{Parameters}
1397
1398\docparam{handler}{Specifies the handler to be pushed.}
1399
1400\wxheading{Remarks}
1401
1402An event handler is an object that is capable of processing the events
1403sent to a window. By default, the window is its own event handler, but
1404an application may wish to substitute another, for example to allow
1405central implementation of event-handling for a variety of different
1406window classes.
1407
1408\helpref{wxWindow::PushEventHandler}{wxwindowpusheventhandler} allows
1409an application to set up a chain of event handlers, where an event not handled by one event handler is
1410handed to the next one in the chain. Use \helpref{wxWindow::PopEventHandler}{wxwindowpopeventhandler} to
1411remove the event handler.
1412
1413\wxheading{See also}
1414
1415\helpref{wxWindow::SetEventHandler}{wxwindowseteventhandler},\rtfsp
1416\helpref{wxWindow::GetEventHandler}{wxwindowgeteventhandler},\rtfsp
1417\helpref{wxWindow::PopEventHandler}{wxwindowpusheventhandler},\rtfsp
1418\helpref{wxEvtHandler::ProcessEvent}{wxevthandlerprocessevent},\rtfsp
1419\helpref{wxEvtHandler}{wxevthandler}
1420
1421\membersection{wxWindow::Raise}\label{wxwindowraise}
1422
1423\func{void}{Raise}{\void}
1424
1425Raises the window to the top of the window hierarchy if it is a managed window (dialog
1426or frame).
1427
1428\membersection{wxWindow::Refresh}\label{wxwindowrefresh}
1429
1430\func{virtual void}{Refresh}{\param{const bool}{ eraseBackground = TRUE}, \param{const wxRect* }{rect
1431= NULL}}
1432
1433Causes a message or event to be generated to repaint the
1434window.
1435
1436\wxheading{Parameters}
1437
1438\docparam{eraseBackground}{If TRUE, the background will be
1439erased.}
1440
1441\docparam{rect}{If non-NULL, only the given rectangle will
1442be treated as damaged.}
1443
1444\membersection{wxWindow::ReleaseMouse}\label{wxwindowreleasemouse}
1445
1446\func{virtual void}{ReleaseMouse}{\void}
1447
1448Releases mouse input captured with \helpref{wxWindow::CaptureMouse}{wxwindowcapturemouse}.
1449
1450\wxheading{See also}
1451
1452\helpref{wxWindow::CaptureMouse}{wxwindowcapturemouse}
1453
1454\membersection{wxWindow::RemoveChild}\label{wxwindowremovechild}
1455
1456\func{virtual void}{RemoveChild}{\param{wxWindow* }{child}}
1457
1458Removes a child window. This is called automatically by window deletion
1459functions so should not be required by the application programmer.
1460
1461\wxheading{Parameters}
1462
1463\docparam{child}{Child window to remove.}
1464
1465\membersection{wxWindow::ScreenToClient}\label{wxwindowscreentoclient}
1466
1467\constfunc{virtual void}{ScreenToClient}{\param{int* }{x}, \param{int* }{y}}
1468
1469\constfunc{virtual wxPoint}{ScreenToClient}{\param{const wxPoint\& }{pt}}
1470
1471Converts from screen to client window coordinates.
1472
1473\wxheading{Parameters}
1474
1475\docparam{x}{Stores the screen x coordinate and receives the client x coordinate.}
1476
1477\docparam{y}{Stores the screen x coordinate and receives the client x coordinate.}
1478
1479\docparam{pt}{The screen position for the second form of the function.}
1480
1481\membersection{wxWindow::ScrollWindow}\label{wxwindowscrollwindow}
1482
1483\func{virtual void}{ScrollWindow}{\param{int }{dx}, \param{int }{dy}, \param{const wxRect*}{ rect = NULL}}
1484
1485Physically scrolls the pixels in the window.
1486
1487\wxheading{Parameters}
1488
1489\docparam{dx}{Amount to scroll horizontally.}
1490
1491\docparam{dy}{Amount to scroll vertically.}
1492
1493\docparam{rect}{Rectangle to invalidate. If this is NULL, the whole window is invalidated. If you
1494pass a rectangle corresponding to the area of the window exposed by the scroll, your painting handler
1495can optimise painting by checking for the invalidated region.}
1496
1497\wxheading{Remarks}
1498
1499Available only under Windows.
1500
1501Use this function to optimise your scrolling implementations, to minimise the area that must be
1502redrawn.
1503
1504\membersection{wxWindow::SetAcceleratorTable}\label{wxwindowsetacceleratortable}
1505
1506\func{virtual void}{SetAcceleratorTable}{\param{const wxAcceleratorTable\&}{ accel}}
1507
1508Sets the accelerator table for this window. See \helpref{wxAcceleratorTable}{wxacceleratortable}.
1509
1510\membersection{wxWindow::SetAutoLayout}\label{wxwindowsetautolayout}
1511
1512\func{void}{SetAutoLayout}{\param{const bool}{ autoLayout}}
1513
1514Determines whether the \helpref{wxWindow::Layout}{wxwindowlayout} function will
1515be called automatically when the window is resized.
1516
1517\wxheading{Parameters}
1518
1519\docparam{autoLayout}{Set this to TRUE if you wish the Layout function to be called
1520from within wxWindow::OnSize functions.}
1521
1522\wxheading{See also}
1523
1524\helpref{wxWindow::SetConstraints}{wxwindowsetconstraints}
1525
1526\membersection{wxWindow::SetBackgroundColour}\label{wxwindowsetbackgroundcolour}
1527
1528\func{virtual void}{SetBackgroundColour}{\param{const wxColour\& }{colour}}
1529
1530Sets the background colour of the window.
1531
1532\wxheading{Parameters}
1533
1534\docparam{colour}{The colour to be used as the background colour.}
1535
1536\wxheading{Remarks}
1537
1538The background colour is usually painted by the default\rtfsp
1539\helpref{wxWindow::OnEraseBackground}{wxwindowonerasebackground} event handler function.
1540
1541Note that setting the background colour does not cause an immediate refresh, so you
1542may wish to call \helpref{wxWindow::Clear}{wxwindowclear} or \helpref{wxWindow::Refresh}{wxwindowrefresh} after
1543calling this function.
1544
1545\wxheading{See also}
1546
1547\helpref{wxWindow::GetBackgroundColour}{wxwindowgetbackgroundcolour},\rtfsp
1548\helpref{wxWindow::SetForegroundColour}{wxwindowsetforegroundcolour},\rtfsp
1549\helpref{wxWindow::GetForegroundColour}{wxwindowgetforegroundcolour},\rtfsp
1550\helpref{wxWindow::Clear}{wxwindowclear},\rtfsp
1551\helpref{wxWindow::Refresh}{wxwindowrefresh},\rtfsp
1552\helpref{wxWindow::OnEraseBackground}{wxwindowonerasebackground}
1553
1554\membersection{wxWindow::SetClientSize}\label{wxwindowsetclientsize}
1555
1556\func{virtual void}{SetClientSize}{\param{int}{ width}, \param{int}{ height}}
1557
1558\func{virtual void}{SetClientSize}{\param{const wxSize\&}{ size}}
1559
1560This sets the size of the window client area in pixels. Using this function to size a window
1561tends to be more device-independent than \helpref{wxWindow::SetSize}{wxwindowsetsize}, since the application need not
1562worry about what dimensions the border or title bar have when trying to fit the window
1563around panel items, for example.
1564
1565\wxheading{Parameters}
1566
1567\docparam{width}{The required client area width.}
1568
1569\docparam{height}{The required client area height.}
1570
1571\docparam{size}{The required client size.}
1572
1573\membersection{wxWindow::SetCursor}\label{wxwindowsetcursor}
1574
1575\func{virtual void}{SetCursor}{\param{const wxCursor\&}{cursor}}
1576
1577Sets the window's cursor.
1578
1579\wxheading{Parameters}
1580
1581\docparam{cursor}{Specifies the cursor that the window should normally display.}
1582
1583\wxheading{Remarks}
1584
1585Under Windows, you sometimes need to call ::wxSetCursor in addition to this
1586function if you want the cursor to change immediately, because under Windows,
1587wxWindows only sets the global cursor when it detects mouse movement.
1588
1589\wxheading{See also}
1590
1591\helpref{::wxSetCursor}{wxsetcursor}, \helpref{wxCursor}{wxcursor}
1592
1593\membersection{wxWindow::SetEventHandler}\label{wxwindowseteventhandler}
1594
1595\func{void}{SetEventHandler}{\param{wxEvtHandler* }{handler}}
1596
1597Sets the event handler for this window.
1598
1599\wxheading{Parameters}
1600
1601\docparam{handler}{Specifies the handler to be set.}
1602
1603\wxheading{Remarks}
1604
1605An event handler is an object that is capable of processing the events
1606sent to a window. By default, the window is its own event handler, but
1607an application may wish to substitute another, for example to allow
1608central implementation of event-handling for a variety of different
1609window classes.
1610
1611It is usually better to use \helpref{wxWindow::PushEventHandler}{wxwindowpusheventhandler} since
1612this sets up a chain of event handlers, where an event not handled by one event handler is
1613handed to the next one in the chain.
1614
1615\wxheading{See also}
1616
1617\helpref{wxWindow::GetEventHandler}{wxwindowgeteventhandler},\rtfsp
1618\helpref{wxWindow::PushEventHandler}{wxwindowpusheventhandler},\rtfsp
1619\helpref{wxWindow::PopEventHandler}{wxwindowpusheventhandler},\rtfsp
1620\helpref{wxEvtHandler::ProcessEvent}{wxevthandlerprocessevent},\rtfsp
1621\helpref{wxEvtHandler}{wxevthandler}
1622
1623\membersection{wxWindow::SetConstraints}\label{wxwindowsetconstraints}
1624
1625\func{void}{SetConstraints}{\param{wxLayoutConstraints* }{constraints}}
1626
1627Sets the window to have the given layout constraints. The window
1628will then own the object, and will take care of its deletion.
1629If an existing layout constraints object is already owned by the
1630window, it will be deleted.
1631
1632\wxheading{Parameters}
1633
1634\docparam{constraints}{The constraints to set. Pass NULL to disassociate and delete the window's
1635constraints.}
1636
1637\wxheading{Remarks}
1638
1639You must call \helpref{wxWindow::SetAutoLayout}{wxwindowsetautolayout} to tell a window to use
1640the constraints automatically in OnSize; otherwise, you must
1641override OnSize and call Layout explicitly.
1642
1643\membersection{wxWindow::SetDropTarget}\label{wxwindowsetdroptarget}
1644
1645\func{void}{SetDropTarget}{\param{wxDropTarget*}{ target}}
1646
1647Associates a drop target with this window.
1648
1649If the window already has a drop target, it is deleted.
1650
1651\wxheading{See also}
1652
1653\helpref{wxWindow::GetDropTarget}{wxwindowgetdroptarget},
1654\helpref{Drag and drop overview}{wxdndoverview}
1655
1656\membersection{wxWindow::SetFocus}\label{wxwindowsetfocus}
1657
1658\func{virtual void}{SetFocus}{\void}
1659
1660This sets the window to receive keyboard input.
1661
1662\membersection{wxWindow::SetFont}\label{wxwindowsetfont}
1663
1664\func{void}{SetFont}{\param{const wxFont\& }{font}}
1665
1666Sets the font for this window.
1667
1668\wxheading{Parameters}
1669
1670\docparam{font}{Font to associate with this window.}
1671
1672\wxheading{See also}
1673
1674\helpref{wxWindow::GetFont}{wxwindowgetfont}
1675
1676\membersection{wxWindow::SetForegroundColour}\label{wxwindowsetforegroundcolour}
1677
1678\func{virtual void}{SetForegroundColour}{\param{const wxColour\& }{colour}}
1679
1680Sets the foreground colour of the window.
1681
1682\wxheading{Parameters}
1683
1684\docparam{colour}{The colour to be used as the foreground colour.}
1685
1686\wxheading{Remarks}
1687
1688The interpretation of foreground colour is open to interpretation according
1689to the window class; it may be the text colour or other colour, or it may not
1690be used at all.
1691
1692\wxheading{See also}
1693
1694\helpref{wxWindow::GetForegroundColour}{wxwindowgetforegroundcolour},\rtfsp
1695\helpref{wxWindow::SetBackgroundColour}{wxwindowsetbackgroundcolour},\rtfsp
1696\helpref{wxWindow::GetBackgroundColour}{wxwindowgetbackgroundcolour}
1697
1698\membersection{wxWindow::SetId}\label{wxwindowsetid}
1699
1700\func{void}{SetId}{\param{int}{ id}}
1701
1702Sets the identifier of the window.
1703
1704\wxheading{Remarks}
1705
1706Each window has an integer identifier. If the application has not provided one,
1707an identifier will be generated. Normally, the identifier should be provided
1708on creation and should not be modified subsequently.
1709
1710\wxheading{See also}
1711
1712\helpref{wxWindow::GetId}{wxwindowgetid},\rtfsp
1713\helpref{Window identifiers}{windowids}
1714
1715\membersection{wxWindow::SetName}\label{wxwindowsetname}
1716
1717\func{virtual void}{SetName}{\param{const wxString\& }{name}}
1718
1719Sets the window's name.
1720
1721\wxheading{Parameters}
1722
1723\docparam{name}{A name to set for the window.}
1724
1725\wxheading{See also}
1726
1727\helpref{wxWindow::GetName}{wxwindowgetname}
1728
1729\membersection{wxWindow::SetPalette}\label{wxwindowsetpalette}
1730
1731\func{virtual void}{SetPalette}{\param{wxPalette* }{palette}}
1732
1733Obsolete - use \helpref{wxDC::SetPalette}{wxdcsetpalette} instead.
1734
1735\membersection{wxWindow::SetReturnCode}\label{wxwindowsetreturncode}
1736
1737\func{void}{SetReturnCode}{\param{int }{retCode}}
1738
1739Sets the return code for this window.
1740
1741\wxheading{Parameters}
1742
1743\docparam{retCode}{The integer return code, usually a control identifier.}
1744
1745\wxheading{Remarks}
1746
1747A return code is normally associated with a modal dialog, where \helpref{wxDialog::ShowModal}{wxdialogshowmodal} returns
1748a code to the application. The function \helpref{wxDialog::EndModal}{wxdialogendmodal} calls {\bf SetReturnCode}.
1749
1750\wxheading{See also}
1751
1752\helpref{wxWindow::GetReturnCode}{wxwindowgetreturncode}, \helpref{wxDialog::ShowModal}{wxdialogshowmodal},\rtfsp
1753\helpref{wxDialog::EndModal}{wxdialogendmodal}
1754
1755\membersection{wxWindow::SetScrollbar}\label{wxwindowsetscrollbar}
1756
1757\func{virtual void}{SetScrollbar}{\param{int }{orientation}, \param{int }{position},\rtfsp
1758\param{int }{thumbSize}, \param{int }{range},\rtfsp
1759\param{const bool }{refresh = TRUE}}
1760
1761Sets the scrollbar properties of a built-in scrollbar.
1762
1763\wxheading{Parameters}
1764
1765\docparam{orientation}{Determines the scrollbar whose page size is to be set. May be wxHORIZONTAL or wxVERTICAL.}
1766
1767\docparam{position}{The position of the scrollbar in scroll units.}
1768
1769\docparam{thumbSize}{The size of the thumb, or visible portion of the scrollbar, in scroll units.}
1770
1771\docparam{range}{The maximum position of the scrollbar.}
1772
1773\docparam{refresh}{TRUE to redraw the scrollbar, FALSE otherwise.}
1774
1775\wxheading{Remarks}
1776
1777Let's say you wish to display 50 lines of text, using the same font.
1778The window is sized so that you can only see 16 lines at a time.
1779
1780You would use:
1781
1782{\small%
1783\begin{verbatim}
1784 SetScrollbar(wxVERTICAL, 0, 16, 50);
1785\end{verbatim}
1786}
1787
1788Note that with the window at this size, the thumb position can never go
1789above 50 minus 16, or 34.
1790
1791You can determine how many lines are currently visible by dividing the current view
1792size by the character height in pixels.
1793
1794When defining your own scrollbar behaviour, you will always need to recalculate
1795the scrollbar settings when the window size changes. You could therefore put your
1796scrollbar calculations and SetScrollbar
1797call into a function named AdjustScrollbars, which can be called initially and also
1798from your \helpref{wxWindow::OnSize}{wxwindowonsize} event handler function.
1799
1800\wxheading{See also}
1801
1802\helpref{Scrolling overview}{scrollingoverview},\rtfsp
1803\helpref{wxScrollBar}{wxscrollbar}, \helpref{wxScrolledWindow}{wxscrolledwindow}
1804
1805\begin{comment}
1806\membersection{wxWindow::SetScrollPage}\label{wxwindowsetscrollpage}
1807
1808\func{virtual void}{SetScrollPage}{\param{int }{orientation}, \param{int }{pageSize}, \param{const bool }{refresh = TRUE}}
1809
1810Sets the page size of one of the built-in scrollbars.
1811
1812\wxheading{Parameters}
1813
1814\docparam{orientation}{Determines the scrollbar whose page size is to be set. May be wxHORIZONTAL or wxVERTICAL.}
1815
1816\docparam{pageSize}{Page size in scroll units.}
1817
1818\docparam{refresh}{TRUE to redraw the scrollbar, FALSE otherwise.}
1819
1820\wxheading{Remarks}
1821
1822The page size of a scrollbar is the number of scroll units that the scroll thumb travels when you
1823click on the area above/left of or below/right of the thumb. Normally you will want a whole visible
1824page to be scrolled, i.e. the size of the current view (perhaps the window client size). This
1825value has to be adjusted when the window is resized, since the page size will have changed.
1826
1827In addition to specifying how far the scroll thumb travels when paging, in Motif and some versions of Windows
1828the thumb changes size to reflect the page size relative to the length of the document. When the
1829document size is only slightly bigger than the current view (window) size, almost all of the scrollbar
1830will be taken up by the thumb. When the two values become the same, the scrollbar will (on some systems)
1831disappear.
1832
1833Currently, this function should be called before SetPageRange, because of a quirk in the Windows
1834handling of pages and ranges.
1835
1836\wxheading{See also}
1837
1838\helpref{wxWindow::SetScrollPos}{wxwindowsetscrollpos},\rtfsp
1839\helpref{wxWindow::GetScrollPos}{wxwindowsetscrollpos},\rtfsp
1840\helpref{wxWindow::GetScrollPage}{wxwindowsetscrollpage},\rtfsp
1841\helpref{wxScrollBar}{wxscrollbar}, \helpref{wxScrolledWindow}{wxscrolledwindow}
1842\end{comment}
1843
1844\membersection{wxWindow::SetScrollPos}\label{wxwindowsetscrollpos}
1845
1846\func{virtual void}{SetScrollPos}{\param{int }{orientation}, \param{int }{pos}, \param{const bool }{refresh = TRUE}}
1847
1848Sets the position of one of the built-in scrollbars.
1849
1850\wxheading{Parameters}
1851
1852\docparam{orientation}{Determines the scrollbar whose position is to be set. May be wxHORIZONTAL or wxVERTICAL.}
1853
1854\docparam{pos}{Position in scroll units.}
1855
1856\docparam{refresh}{TRUE to redraw the scrollbar, FALSE otherwise.}
1857
1858\wxheading{Remarks}
1859
1860This function does not directly affect the contents of the window: it is up to the
1861application to take note of scrollbar attributes and redraw contents accordingly.
1862
1863\wxheading{See also}
1864
1865\helpref{wxWindow::SetScrollbar}{wxwindowsetscrollbar},\rtfsp
1866\helpref{wxWindow::GetScrollPos}{wxwindowsetscrollpos},\rtfsp
1867\helpref{wxWindow::GetScrollThumb}{wxwindowgetscrollthumb},\rtfsp
1868\helpref{wxScrollBar}{wxscrollbar}, \helpref{wxScrolledWindow}{wxscrolledwindow}
1869
1870\begin{comment}
1871\membersection{wxWindow::SetScrollRange}\label{wxwindowsetscrollrange}
1872
1873\func{virtual void}{SetScrollRange}{\param{int }{orientation}, \param{int }{range}, \param{const bool }{refresh = TRUE}}
1874
1875Sets the range of one of the built-in scrollbars.
1876
1877\wxheading{Parameters}
1878
1879\docparam{orientation}{Determines the scrollbar whose range is to be set. May be wxHORIZONTAL or wxVERTICAL.}
1880
1881\docparam{range}{Scroll range.}
1882
1883\docparam{refresh}{TRUE to redraw the scrollbar, FALSE otherwise.}
1884
1885\wxheading{Remarks}
1886
1887The range of a scrollbar is the number of steps that the thumb may travel, rather than the total
1888object length of the scrollbar. If you are implementing a scrolling window, for example, you
1889would adjust the scroll range when the window is resized, by subtracting the window view size from the
1890total virtual window size. When the two sizes are the same (all the window is visible), the range goes to zero
1891and usually the scrollbar will be automatically hidden.
1892
1893\wxheading{See also}
1894
1895\helpref{wxWindow::SetScrollPos}{wxwindowsetscrollpos},\rtfsp
1896\helpref{wxWindow::SetScrollPage}{wxwindowsetscrollpage},\rtfsp
1897\helpref{wxWindow::GetScrollPos}{wxwindowsetscrollpos},\rtfsp
1898\helpref{wxWindow::GetScrollPage}{wxwindowsetscrollpage},\rtfsp
1899\helpref{wxScrollBar}{wxscrollbar}, \helpref{wxScrolledWindow}{wxscrolledwindow}
1900\end{comment}
1901
1902\membersection{wxWindow::SetSize}\label{wxwindowsetsize}
1903
1904\func{virtual void}{SetSize}{\param{int}{ x}, \param{int}{ y}, \param{int}{ width}, \param{int}{ height},
1905 \param{int}{ sizeFlags = wxSIZE\_AUTO}}
1906
1907\func{virtual void}{SetSize}{\param{const wxRect\&}{ rect}}
1908
1909Sets the size and position of the window in pixels.
1910
1911\func{virtual void}{SetSize}{\param{int}{ width}, \param{int}{ height}}
1912
1913\func{virtual void}{SetSize}{\param{const wxSize\&}{ size}}
1914
1915Sets the size of the window in pixels.
1916
1917\wxheading{Parameters}
1918
1919\docparam{x}{Required x position in pixels, or -1 to indicate that the existing
1920value should be used.}
1921
1922\docparam{y}{Required y position in pixels, or -1 to indicate that the existing
1923value should be used.}
1924
1925\docparam{width}{Required width in pixels, or -1 to indicate that the existing
1926value should be used.}
1927
1928\docparam{height}{Required height position in pixels, or -1 to indicate that the existing
1929value should be used.}
1930
1931\docparam{size}{\helpref{wxSize}{wxsize} object for setting the size.}
1932
1933\docparam{rect}{\helpref{wxRect}{wxrect} object for setting the position and size.}
1934
1935\docparam{sizeFlags}{Indicates the interpretation of other parameters. It is a bit list of the following:
1936
1937{\bf wxSIZE\_AUTO\_WIDTH}: a -1 width value is taken to indicate
1938a wxWindows-supplied default width.\\
1939{\bf wxSIZE\_AUTO\_HEIGHT}: a -1 height value is taken to indicate
1940a wxWindows-supplied default width.\\
1941{\bf wxSIZE\_AUTO}: -1 size values are taken to indicate
1942a wxWindows-supplied default size.\\
1943{\bf wxSIZE\_USE\_EXISTING}: existing dimensions should be used
1944if -1 values are supplied.\\
1945{\bf wxSIZE\_ALLOW\_MINUS\_ONE}: allow dimensions of -1 and less to be interpreted
1946as real dimensions, not default values.
1947}
1948
1949\wxheading{Remarks}
1950
1951The second form is a convenience for calling the first form with default
1952x and y parameters, and must be used with non-default width and height values.
1953
1954The first form sets the position and optionally size, of the window.
1955Parameters may be -1 to indicate either that a default should be supplied
1956by wxWindows, or that the current value of the dimension should be used.
1957
1958\wxheading{See also}
1959
1960\helpref{wxWindow::Move}{wxwindowmove}
1961
1962\membersection{wxWindow::SetSizeHints}\label{wxwindowsetsizehints}
1963
1964\func{virtual void}{SetSizeHints}{\param{int}{ minW=-1}, \param{int}{ minH=-1}, \param{int}{ maxW=-1}, \param{int}{ maxH=-1},
1965 \param{int}{ incW=-1}, \param{int}{ incH=-1}}
1966
1967Allows specification of minimum and maximum window sizes, and window size increments.
1968If a pair of values is not set (or set to -1), the default values will be used.
1969
1970\wxheading{Parameters}
1971
1972\docparam{minW}{Specifies the minimum width allowable.}
1973
1974\docparam{minH}{Specifies the minimum height allowable.}
1975
1976\docparam{maxW}{Specifies the maximum width allowable.}
1977
1978\docparam{maxH}{Specifies the maximum height allowable.}
1979
1980\docparam{incW}{Specifies the increment for sizing the width (Motif/Xt only).}
1981
1982\docparam{incH}{Specifies the increment for sizing the height (Motif/Xt only).}
1983
1984\wxheading{Remarks}
1985
1986If this function is called, the user will not be able to size the window outside the
1987given bounds.
1988
1989The resizing increments are only significant under Motif or Xt.
1990
1991\membersection{wxWindow::SetTitle}\label{wxwindowsettitle}
1992
1993\func{virtual void}{SetTitle}{\param{const wxString\& }{title}}
1994
1995Sets the window's title. Applicable only to frames and dialogs.
1996
1997\wxheading{Parameters}
1998
1999\docparam{title}{The window's title.}
2000
2001\wxheading{See also}
2002
2003\helpref{wxWindow::GetTitle}{wxwindowgettitle}
2004
2005\membersection{wxWindow::Show}
2006
2007\func{virtual bool}{Show}{\param{const bool}{ show}}
2008
2009Shows or hides the window.
2010
2011\wxheading{Parameters}
2012
2013\docparam{show}{If TRUE, displays the window and brings it to the front. Otherwise,
2014hides the window.}
2015
2016\wxheading{See also}
2017
2018\helpref{wxWindow::IsShown}{wxwindowisshown}
2019
2020\membersection{wxWindow::TransferDataFromWindow}\label{wxwindowtransferdatafromwindow}
2021
2022\func{virtual bool}{TransferDataFromWindow}{\void}
2023
2024Transfers values from child controls to data areas specified by their validators. Returns
2025FALSE if a transfer failed.
2026
2027\wxheading{See also}
2028
2029\helpref{wxWindow::TransferDataToWindow}{wxwindowtransferdatatowindow},\rtfsp
2030\helpref{wxValidator}{wxvalidator}, \helpref{wxWindow::Validate}{wxwindowvalidate}
2031
2032\membersection{wxWindow::TransferDataToWindow}\label{wxwindowtransferdatatowindow}
2033
2034\func{virtual bool}{TransferDataToWindow}{\void}
2035
2036Transfers values to child controls from data areas specified by their validators.
2037
2038\wxheading{Return value}
2039
2040Returns FALSE if a transfer failed.
2041
2042\wxheading{See also}
2043
2044\helpref{wxWindow::TransferDataFromWindow}{wxwindowtransferdatafromwindow},\rtfsp
2045\helpref{wxValidator}{wxvalidator}, \helpref{wxWindow::Validate}{wxwindowvalidate}
2046
2047\membersection{wxWindow::Validate}\label{wxwindowvalidate}
2048
2049\func{virtual bool}{Validate}{\void}
2050
2051Validates the current values of the child controls using their validators.
2052
2053\wxheading{Return value}
2054
2055Returns FALSE if any of the validations failed.
2056
2057\wxheading{See also}
2058
2059\helpref{wxWindow::TransferDataFromWindow}{wxwindowtransferdatafromwindow},\rtfsp
2060\helpref{wxWindow::TransferDataFromWindow}{wxwindowtransferdatafromwindow},\rtfsp
2061\helpref{wxValidator}{wxvalidator}
2062
2063\membersection{wxWindow::WarpPointer}\label{wxwindowwarppointer}
2064
2065\func{void}{WarpPointer}{\param{int}{ x}, \param{int}{ y}}
2066
2067Moves the pointer to the given position on the window.
2068
2069\wxheading{Parameters}
2070
2071\docparam{x}{The new x position for the cursor.}
2072
2073\docparam{y}{The new y position for the cursor.}
2074