]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/window.tex
slight warnings in wxprinterdc docs about constructor confusion - see http://www...
[wxWidgets.git] / docs / latex / wx / window.tex
index ecd5b6798c2ee96be3ce099ba8a06b380972b370..236aa313eb61010c8d048375a6cf27cb6d74cf1d 100644 (file)
@@ -1,6 +1,6 @@
 \section{\class{wxWindow}}\label{wxwindow}
 
-wxWindow is the base class for all windows and represents any visible objectn
+wxWindow is the base class for all windows and represents any visible object on
 screen. All controls, top level windows and so on are windows. Sizers and
 device contexts are not, however, as they don't appear on screen themselves.
 
@@ -142,7 +142,7 @@ correctly sized. }
 \docparam{name}{Window name.}
 
 
-\membersection{wxWindow::\destruct{wxWindow}}
+\membersection{wxWindow::\destruct{wxWindow}}\label{wxwindowdtor}
 
 \func{}{\destruct{wxWindow}}{\void}
 
@@ -158,7 +158,7 @@ can delete a window only when it is safe to do so, in idle time.
 \helpref{wxCloseEvent}{wxcloseevent}
 
 
-\membersection{wxWindow::AddChild}
+\membersection{wxWindow::AddChild}\label{wxwindowaddchild}
 
 \func{virtual void}{AddChild}{\param{wxWindow* }{child}}
 
@@ -173,6 +173,13 @@ called by the user code.
 \docparam{child}{Child window to add.}
 
 
+\membersection{wxWindow::CacheBestSize}\label{wxwindowcachebestsize}
+
+\constfunc{void}{CacheBestSize}{\param{const wxSize\& }{size}}
+
+Sets the cached best size value.
+
+
 \membersection{wxWindow::CaptureMouse}\label{wxwindowcapturemouse}
 
 \func{virtual void}{CaptureMouse}{\void}
@@ -287,7 +294,7 @@ Clears the window by filling it with the current background colour. Does not
 cause an erase background event to be generated.
 
 
-\membersection{wxWindow::ClientToScreen}
+\membersection{wxWindow::ClientToScreen}\label{wxwindowclienttoscreen}
 
 \constfunc{virtual void}{ClientToScreen}{\param{int* }{x}, \param{int* }{y}}
 
@@ -426,7 +433,7 @@ Dialog units are used for maintaining a dialog's proportions even if the font ch
 
 \helpref{wxWindow::ConvertDialogToPixels}{wxwindowconvertdialogtopixels}
 
-\pythonnote{In place of a single overloaded method name, wxPythonimplements the following methods:\par
+\pythonnote{In place of a single overloaded method name, wxPython implements the following methods:\par
 \indented{2cm}{\begin{twocollist}
 \twocolitem{{\bf ConvertDialogPointToPixels(point)}}{Accepts and returns a wxPoint}
 \twocolitem{{\bf ConvertDialogSizeToPixels(size)}}{Accepts and returns a wxSize}
@@ -451,7 +458,7 @@ windows.
 to the list of windows pending real deletion.
 
 
-\membersection{wxWindow::DestroyChildren}
+\membersection{wxWindow::DestroyChildren}\label{wxwindowdestroychildren}
 
 \func{virtual void}{DestroyChildren}{\void}
 
@@ -470,6 +477,15 @@ Returns {\tt true} if the window has been disabled, {\tt false} if it had been
 already disabled before the call to this function.
 
 
+\membersection{wxWindow::DoGetBestSize}\label{wxwindowdogetbestsize}
+
+\constfunc{virtual wxSize}{DoGetBestSize}{\void}
+
+Gets the size which best suits the window: for a control, it would be
+the minimal size which doesn't truncate the control, for a panel - the
+same size as it would have after a call to \helpref{Fit()}{wxwindowfit}.
+
+
 \membersection{wxWindow::DoUpdateWindowUI}\label{wxwindowdoupdatewindowui}
 
 \func{virtual void}{DoUpdateWindowUI}{\param{wxUpdateUIEvent\&}{ event}}
@@ -554,11 +570,11 @@ Note that this is a static function, so it can be called without needing a wxWin
 
 \membersection{wxWindow::FindWindow}\label{wxwindowfindwindow}
 
-\func{wxWindow*}{FindWindow}{\param{long}{ id}}
+\constfunc{wxWindow*}{FindWindow}{\param{long}{ id}}
 
 Find a child of this window, by identifier.
 
-\func{wxWindow*}{FindWindow}{\param{const wxString\&}{ name}}
+\constfunc{wxWindow*}{FindWindow}{\param{const wxString\&}{ name}}
 
 Find a child of this window, by name.
 
@@ -655,8 +671,8 @@ be called to reenable window redrawing. Calls to these two functions may be
 nested.
 
 This method is useful for visual appearance optimization (for example, it
-is a good idea to use it before inserting large amount of text into a
-wxTextCtrl under wxGTK) but is not implemented on all platforms nor for all
+is a good idea to use it before doing many large text insertions in a row into
+wxTextCtrl under wxGTK) but is not implemented on all platforms nor for all
 controls so it is mostly just a hint to wxWidgets and not a mandatory
 directive.
 
@@ -670,7 +686,7 @@ Gets the accelerator table for this window. See \helpref{wxAcceleratorTable}{wxa
 
 \membersection{wxWindow::GetAccessible}\label{wxwindowgetaccessible}
 
-\func{wxAccessibile*}{GetAccessible}{\void}
+\func{wxAccessible*}{GetAccessible}{\void}
 
 Returns the accessible object for this window, if any.
 
@@ -700,6 +716,36 @@ Returns the background colour of the window.
 \helpref{wxWindow::SetForegroundColour}{wxwindowsetforegroundcolour},\rtfsp
 \helpref{wxWindow::GetForegroundColour}{wxwindowgetforegroundcolour}
 
+\membersection{wxWindow::GetBackgroundStyle}\label{wxwindowgetbackgroundstyle}
+
+\constfunc{virtual wxBackgroundStyle}{GetBackgroundStyle}{\void}
+
+Returns the background style of the window. The background style indicates
+whether background colour should be determined by the system (wxBG\_STYLE\_SYSTEM),
+be set to a specific colour (wxBG\_STYLE\_COLOUR), or should be left to the
+application to implement (wxBG\_STYLE\_CUSTOM).
+
+On GTK+, use of wxBG\_STYLE\_CUSTOM allows the flicker-free drawing of a custom
+background, such as a tiled bitmap. Currently the style has no effect on other platforms.
+
+\wxheading{See also}
+
+\helpref{wxWindow::SetBackgroundColour}{wxwindowsetbackgroundcolour},\rtfsp
+\helpref{wxWindow::GetForegroundColour}{wxwindowgetforegroundcolour},\rtfsp
+\helpref{wxWindow::SetBackgroundStyle}{wxwindowsetbackgroundstyle}
+
+\membersection{wxWindow::GetBestFittingSize}\label{wxwindowgetbestfittingsize}
+
+\constfunc{wxSize}{GetBestFittingSize}{\void}
+
+Merges the window's best size into the min size and returns the result.
+
+\wxheading{See also}
+
+\helpref{wxWindow::GetBestSize}{wxwindowgetbestsize},\rtfsp
+\helpref{wxWindow::SetBestFittingSize}{wxwindowsetbestfittingsize},\rtfsp
+\helpref{wxWindow::SetSizeHints}{wxwindowsetsizehints}
+
 
 \membersection{wxWindow::GetBestSize}\label{wxwindowgetbestsize}
 
@@ -734,28 +780,28 @@ Returns the currently captured window.
 \helpref{wxMouseCaptureChangedEvent}{wxmousecapturechangedevent}
 
 
-\membersection{wxWindow::GetCharHeight}
+\membersection{wxWindow::GetCharHeight}\label{wxwindowgetcharheight}
 
 \constfunc{virtual int}{GetCharHeight}{\void}
 
 Returns the character height for this window.
 
 
-\membersection{wxWindow::GetCharWidth}
+\membersection{wxWindow::GetCharWidth}\label{wxwindowgetcharwidth}
 
 \constfunc{virtual int}{GetCharWidth}{\void}
 
 Returns the average character width for this window.
 
 
-\membersection{wxWindow::GetChildren}
+\membersection{wxWindow::GetChildren}\label{wxwindowgetchildren}
 
 \func{wxList\&}{GetChildren}{\void}
 
 Returns a reference to the list of the window's children.
 
 
-\membersection{wxControl::GetClassDefaultAttributes}\label{wxwindowgetclassdefaultattributes}
+\membersection{wxWindow::GetClassDefaultAttributes}\label{wxwindowgetclassdefaultattributes}
 
 \func{static wxVisualAttributes}{GetClassDefaultAttributes}{\param{wxWindowVariant}{ variant = \texttt{wxWINDOW\_VARIANT\_NORMAL}}}
 
@@ -846,7 +892,7 @@ Return the cursor associated with this window.
 \helpref{wxWindow::SetCursor}{wxwindowsetcursor}
 
 
-\membersection{wxControl::GetDefaultAttributes}\label{wxwindowgetdefaultattributes}
+\membersection{wxWindow::GetDefaultAttributes}\label{wxwindowgetdefaultattributes}
 
 \constfunc{virtual wxVisualAttributes}{GetDefaultAttributes}{\void}
 
@@ -902,9 +948,9 @@ Returns the extra style bits for the window.
 
 \membersection{wxWindow::GetFont}\label{wxwindowgetfont}
 
-\constfunc{wxFont\&}{GetFont}{\void}
+\constfunc{wxFont}{GetFont}{\void}
 
-Returns a reference to the font for this window.
+Returns the font for this window.
 
 \wxheading{See also}
 
@@ -930,7 +976,7 @@ be used at all.
 \helpref{wxWindow::GetBackgroundColour}{wxwindowgetbackgroundcolour}
 
 
-\membersection{wxWindow::GetGrandParent}
+\membersection{wxWindow::GetGrandParent}\label{wxwindowgetgrandparent}
 
 \constfunc{wxWindow*}{GetGrandParent}{\void}
 
@@ -980,7 +1026,7 @@ Each window has an integer identifier. If the application has not provided one
 \helpref{Window identifiers}{windowids}
 
 
-\membersection{wxWindow::GetLabel}
+\membersection{wxWindow::GetLabel}\label{wxwindowgetlabel}
 
 \constfunc{virtual wxString }{GetLabel}{\void}
 
@@ -995,6 +1041,19 @@ the button text. This function can be useful for meta-programs (such as testing
 tools or special-needs access programs) which need to identify windows
 by name.
 
+\membersection{wxWindow::GetMaxSize}\label{wxwindowgetmaxsize}
+
+\constfunc{wxSize}{GetMaxSize}{\void}
+
+Returns the maximum size of the window, an indication to the sizer layout mechanism
+that this is the maximum possible size.
+
+\membersection{wxWindow::GetMinSize}\label{wxwindowgetminsize}
+
+\constfunc{wxSize}{GetMinSize}{\void}
+
+Returns the minimum size of the window, an indication to the sizer layout mechanism
+that this is the minimum required size.
 
 \membersection{wxWindow::GetName}\label{wxwindowgetname}
 
@@ -1012,7 +1071,7 @@ name in the window constructor or via \helpref{wxWindow::SetName}{wxwindowsetnam
 \helpref{wxWindow::SetName}{wxwindowsetname}
 
 
-\membersection{wxWindow::GetParent}
+\membersection{wxWindow::GetParent}\label{wxwindowgetparent}
 
 \constfunc{virtual wxWindow*}{GetParent}{\void}
 
@@ -1053,22 +1112,23 @@ method:\par
 }}
 
 
-\membersection{wxWindow::GetRect}\label{wxwindowgetrect}
-
-\constfunc{virtual wxRect}{GetRect}{\void}
+\membersection{wxWindow::GetPureVirtualSize}\label{wxwindowgetpurevirtualsize}
 
-Returns the size and position of the window as a \helpref{wxRect}{wxrect} object.
+\constfunc{wxSize}{GetPureVirtualSize}{\void}
 
+This gets the virtual size of the window in pixels as it has been set
+by \helpref{SetVirtualSize}{wxwindowsetvirtualsize}.
 
-\membersection{wxWindow::GetScrollThumb}\label{wxwindowgetscrollthumb}
+\helpref{GetSize}{wxwindowgetsize},\rtfsp
+\helpref{GetClientSize}{wxwindowgetclientsize},\rtfsp
+\helpref{GetVirtualSize}{wxwindowgetvirtualsize}
 
-\func{virtual int}{GetScrollThumb}{\param{int }{orientation}}
 
-Returns the built-in scrollbar thumb size.
+\membersection{wxWindow::GetRect}\label{wxwindowgetrect}
 
-\wxheading{See also}
+\constfunc{virtual wxRect}{GetRect}{\void}
 
-\helpref{wxWindow::SetScrollbar}{wxwindowsetscrollbar}
+Returns the size and position of the window as a \helpref{wxRect}{wxrect} object.
 
 
 \membersection{wxWindow::GetScrollPos}\label{wxwindowgetscrollpos}
@@ -1093,6 +1153,17 @@ Returns the built-in scrollbar range.
 \helpref{wxWindow::SetScrollbar}{wxwindowsetscrollbar}
 
 
+\membersection{wxWindow::GetScrollThumb}\label{wxwindowgetscrollthumb}
+
+\func{virtual int}{GetScrollThumb}{\param{int }{orientation}}
+
+Returns the built-in scrollbar thumb size.
+
+\wxheading{See also}
+
+\helpref{wxWindow::SetScrollbar}{wxwindowsetscrollbar}
+
+
 \membersection{wxWindow::GetSize}\label{wxwindowgetsize}
 
 \constfunc{void}{GetSize}{\param{int* }{width}, \param{int* }{height}}
@@ -1222,7 +1293,11 @@ Returns a pointer to the current validator for the window, or NULL if there is n
 
 \constfunc{wxSize}{GetVirtualSize}{\void}
 
-This gets the virtual size of the window in pixels.
+This gets the virtual size of the window in pixels as it has been set
+by \helpref{SetVirtualSize}{wxwindowsetvirtualsize} or the size of the
+client area, if it is larger. Use 
+\helpref{GetPureVirtualSize}{wxwindowgetpurevirtualsize} if you want
+to get the actual virtual height independent of the client size.
 
 \wxheading{Parameters}
 
@@ -1254,7 +1329,7 @@ Returns the value previous passed to
 
 \constfunc{virtual bool}{HasCapture}{\void}
 
-Returns true if this window has the current mouse capture.
+Returns {\tt true} if this window has the current mouse capture.
 
 \wxheading{See also}
 
@@ -1263,6 +1338,29 @@ Returns true if this window has the current mouse capture.
 \helpref{wxMouseCaptureChangedEvent}{wxmousecapturechangedevent}
 
 
+\membersection{wxWindow::HasScrollbar}\label{wxwindowhasscrollbar}
+
+\constfunc{virtual bool}{HasScrollbar}{\param{int }{orient}}
+
+Returns {\tt true} if this window has a scroll bar for this orientation.
+
+\wxheading{Parameters}
+
+\docparam{orient}{Orientation to check, either {\tt wxHORIZONTAL} or {\tt wxVERTICAL}.}
+
+
+\membersection{wxWindow::HasTransparentBackground}\label{wxwindowhastransparentbackground}
+
+\constfunc{virtual bool}{HasTransparentBackground}{\void}
+
+Returns \true if this window background is transparent (as, for example, for
+wxStaticText) and should show the parent window background.
+
+This method is mostly used internally by the library itself and you normally
+shouldn't have to call it. You may, however, have to override it in your
+wxWindow-derived class to ensure that background is painted correctly.
+
+
 \membersection{wxWindow::Hide}\label{wxwindowhide}
 
 \func{bool}{Hide}{\void}
@@ -1282,15 +1380,15 @@ By ``intelligently'' the following is meant: by default, all windows use their
 own \helpref{default}{wxwindowgetclassdefaultattributes} attributes. However
 if some of the parents attributes are explicitly (that is, using 
 \helpref{SetFont}{wxwindowsetfont} and not 
-\helpref{SetDefaultFont}{wxwindowsetdefaultfont}) changed \emph{and} if the
+\helpref{SetOwnFont}{wxwindowsetownfont}) changed \emph{and} if the
 corresponding attribute hadn't been explicitly set for this window itself,
 then this window takes the same value as used by the parent. In addition, if
 the window overrides \helpref{ShouldInheritColours}{wxwindowshouldinheritcolours} 
 to return \false, the colours will not be changed no matter what and only the
 font might.
 
-This rather complicated logic is necessary in order to accomodate the
-different usage scenarius. The most common one is when all default attributes
+This rather complicated logic is necessary in order to accommodate the
+different usage scenarios. The most common one is when all default attributes
 are used and in this case, nothing should be inherited as in modern GUIs
 different controls use different fonts (and colours) than their siblings so
 they can't inherit the same value from the parent. However it was also deemed
@@ -1307,6 +1405,13 @@ Sends an {\tt wxEVT\_INIT\_DIALOG} event, whose handler usually transfers data
 to the dialog via validators.
 
 
+\membersection{wxWindow::InvalidateBestSize}\label{wxwindowinvalidatebestsize}
+
+\func{void}{InvalidateBestSize}{\void}
+
+Resets the cached best size value so it will be recalculated the next time it is needed.
+
+
 \membersection{wxWindow::IsEnabled}\label{wxwindowisenabled}
 
 \constfunc{virtual bool}{IsEnabled}{\void}
@@ -1448,6 +1553,52 @@ implements the following methods:\par
 \end{twocollist}}
 }
 
+
+\membersection{wxWindow::MoveAfterInTabOrder}\label{wxwindowmoveafterintaborder}
+
+\func{void}{MoveAfterInTabOrder}{\param{wxWindow *}{win}}
+
+Moves this window in the tab navigation order after the specified \arg{win}.
+This means that when the user presses \texttt{TAB} key on that other window,
+the focus switches to this window.
+
+Default tab order is the same as creation order, this function and 
+\helpref{MoveBeforeInTabOrder()}{wxwindowmovebeforeintaborder} allow to change
+it after creating all the windows.
+
+\wxheading{Parameters}
+
+\docparam{win}{A sibling of this window which should precede it in tab order,
+must not be NULL}
+
+
+\membersection{wxWindow::MoveBeforeInTabOrder}\label{wxwindowmovebeforeintaborder}
+
+\func{void}{MoveBeforeInTabOrder}{\param{wxWindow *}{win}}
+
+Same as \helpref{MoveAfterInTabOrder}{wxwindowmoveafterintaborder} except that
+it inserts this window just before \arg{win} instead of putting it right after
+it.
+
+
+\membersection{wxWindow::Navigate}\label{wxwindownavigate}
+
+\func{bool}{Navigate}{\param{int}{ flags = wxNavigationKeyEvent::IsForward}}
+
+Does keyboard navigation from this window to another, by sending
+a wxNavigationKeyEvent.
+
+\wxheading{Parameters}
+
+\docparam{flags}{A combination of wxNavigationKeyEvent::IsForward and wxNavigationKeyEvent::WinChange.}
+
+\wxheading{Remarks}
+
+You may wish to call this from a text control custom keypress handler to do the default
+navigation behaviour for the tab key, since the standard default behaviour for
+a multiline text control with the wxTE\_PROCESS\_TAB style is to insert a tab
+and not navigate to the next control.
+
 %% VZ: wxWindow::OnXXX() functions should not be documented but I'm leaving
 %%     the old docs here in case we want to move any still needed bits to
 %%     the right location (i.e. probably the corresponding events docs)
@@ -1533,7 +1684,7 @@ implements the following methods:\par
 %%
 %% This function is only relevant to top-level windows (frames and dialogs), and under
 %% Windows only. Under GTK the normal EVT\_CHAR\_ event has the functionality, i.e.
-%% you can intercepts it and if you don't call \helpref{wxEvent::Skip}{wxeventskip}
+%% you can intercept it, and if you don't call \helpref{wxEvent::Skip}{wxeventskip}
 %% the window won't get the event.
 %%
 %% \wxheading{See also}
@@ -1987,9 +2138,7 @@ default value is {\tt false}.}
 
 \membersection{wxWindow::PopupMenu}\label{wxwindowpopupmenu}
 
-\func{bool}{PopupMenu}{\param{wxMenu* }{menu}}
-
-\func{bool}{PopupMenu}{\param{wxMenu* }{menu}, \param{const wxPoint\& }{pos}}
+\func{bool}{PopupMenu}{\param{wxMenu* }{menu}, \param{const wxPoint\& }{pos = wxDefaultPosition}}
 
 \func{bool}{PopupMenu}{\param{wxMenu* }{menu}, \param{int }{x}, \param{int }{y}}
 
@@ -2095,12 +2244,14 @@ be treated as damaged.}
 
 \membersection{wxWindow::RefreshRect}\label{wxwindowrefreshrect}
 
-\func{void}{RefreshRect}{\param{const wxRect\& }{rect}}
+\func{void}{RefreshRect}{\param{const wxRect\& }{rect}, \param{bool }{eraseBackground = \true}}
 
-Redraws the contents of the given rectangle: the area inside it will be
+Redraws the contents of the given rectangle: only the area inside it will be
 repainted.
 
-This is the same as \helpref{Refresh}{wxwindowrefresh} but has a nicer syntax.
+This is the same as \helpref{Refresh}{wxwindowrefresh} but has a nicer syntax
+as it can be called with a temporary wxRect object as argument like this 
+\texttt{RefreshRect(wxRect(x, y, w, h))}.
 
 
 \membersection{wxWindow::RegisterHotKey}\label{wxwindowregisterhotkey}
@@ -2305,7 +2456,7 @@ Sets the accelerator table for this window. See \helpref{wxAcceleratorTable}{wxa
 
 \membersection{wxWindow::SetAccessible}\label{wxwindowsetaccessible}
 
-\func{void}{SetAccessible}{\param{wxAccessibile*}{ accessible}}
+\func{void}{SetAccessible}{\param{wxAccessible*}{ accessible}}
 
 Sets the accessible for this window. Any existing accessible for this window
 will be deleted first, if not identical to {\it accessible}.
@@ -2336,17 +2487,18 @@ from within wxWindow::OnSize functions.}
 
 \membersection{wxWindow::SetBackgroundColour}\label{wxwindowsetbackgroundcolour}
 
-\func{virtual void}{SetBackgroundColour}{\param{const wxColour\& }{colour}}
+\func{virtual bool}{SetBackgroundColour}{\param{const wxColour\& }{colour}}
 
 Sets the background colour of the window.
 
 Please see \helpref{InheritAttributes}{wxwindowinheritattributes} for
 explanation of the difference between this method and 
-\helpref{SetDefaultBackgroundColour}{wxwindowsetdefaultbackgroundcolour}.
+\helpref{SetOwnBackgroundColour}{wxwindowsetownbackgroundcolour}.
 
 \wxheading{Parameters}
 
-\docparam{colour}{The colour to be used as the background colour.}
+\docparam{colour}{The colour to be used as the background colour, pass
+  {\tt wxNullColour} to reset to the default colour.}
 
 \wxheading{Remarks}
 
@@ -2358,9 +2510,11 @@ Note that setting the background colour does not cause an immediate refresh, so
 may wish to call \helpref{wxWindow::ClearBackground}{wxwindowclearbackground} or \helpref{wxWindow::Refresh}{wxwindowrefresh} after
 calling this function.
 
-Use this function with care under GTK+ as the new appearance of the window might
-not look equally well when used with "Themes", i.e GTK+'s ability to change its
-look as the user wishes with run-time loadable modules.
+Using this function will disable attempts to use themes for this
+window, if the system supports them.  Use with care since usually the
+themes represent the appearance chosen by the user to be used for all
+applications on the system.
+
 
 \wxheading{See also}
 
@@ -2371,6 +2525,43 @@ look as the user wishes with run-time loadable modules.
 \helpref{wxWindow::Refresh}{wxwindowrefresh},\rtfsp
 \helpref{wxEraseEvent}{wxeraseevent}
 
+\membersection{wxWindow::SetBackgroundStyle}\label{wxwindowsetbackgroundstyle}
+
+\func{virtual void}{SetBackgroundStyle}{\param{wxBackgroundStyle}{ style}}
+
+Sets the background style of the window. The background style indicates
+whether background colour should be determined by the system (wxBG\_STYLE\_SYSTEM),
+be set to a specific colour (wxBG\_STYLE\_COLOUR), or should be left to the
+application to implement (wxBG\_STYLE\_CUSTOM).
+
+On GTK+, use of wxBG\_STYLE\_CUSTOM allows the flicker-free drawing of a custom
+background, such as a tiled bitmap. Currently the style has no effect on other platforms.
+
+\wxheading{See also}
+
+\helpref{wxWindow::SetBackgroundColour}{wxwindowsetbackgroundcolour},\rtfsp
+\helpref{wxWindow::GetForegroundColour}{wxwindowgetforegroundcolour},\rtfsp
+\helpref{wxWindow::GetBackgroundStyle}{wxwindowgetbackgroundstyle}
+
+
+\membersection{wxWindow::SetBestFittingSize}\label{wxwindowsetbestfittingsize}
+
+\func{void}{SetBestFittingSize}{\param{const wxSize\& }{size = wxDefaultSize}}
+
+A {\it smart} SetSize that will fill in default size components with the
+window's {\it best} size values.  Also sets the window's minsize to
+the value passed in for use with sizers.  This means that if a full or
+partial size is passed to this function then the sizers will use that
+size instead of the results of GetBestSize to determine the minimum
+needs of the window for layout.
+
+\wxheading{See also}
+
+\helpref{wxWindow::SetSize}{wxwindowsetsize},\rtfsp
+\helpref{wxWindow::GetBestSize}{wxwindowgetbestsize},\rtfsp
+\helpref{wxWindow::GetBestFittingSize}{wxwindowgetbestfittingsize},\rtfsp
+\helpref{wxWindow::SetSizeHints}{wxwindowsetsizehints}
+
 
 \membersection{wxWindow::SetCaret}\label{wxwindowsetcaret}
 
@@ -2458,10 +2649,32 @@ the constraints automatically in OnSize; otherwise, you must override OnSize and
 explicitly. When setting both a wxLayoutConstraints and a \helpref{wxSizer}{wxsizer}, only the
 sizer will have effect.
 
+\membersection{wxWindow::SetInitialBestSize}\label{wxwindowsetinitialbestsize}
+
+\func{virtual void}{SetInitialBestSize}{\param{const wxSize\& }{size}}
+
+Sets the initial window size if none is given (i.e. at least one of the
+components of the size passed to ctor/Create() is wxDefaultCoord).
+
+\membersection{wxWindow::SetMaxSize}\label{wxwindowsetmaxsize}
+
+\func{void}{SetMaxSize}{\param{const wxSize\& }{size}}
 
-\membersection{wxWindow::SetDefaultBackgroundColour}\label{wxwindowsetdefaultbackgroundcolour}
+Sets the maximum size of the window, to indicate to the sizer layout mechanism
+that this is the maximum possible size.
 
-\func{void}{SetDefaultBackgroundColour}{\param{const wxColour\& }{colour}}
+\membersection{wxWindow::SetMinSize}\label{wxwindowsetminsize}
+
+\func{void}{SetMinSize}{\param{const wxSize\& }{size}}
+
+Sets the minimum size of the window, to indicate to the sizer layout mechanism
+that this is the minimum required size. You may need to call this
+if you change the window size after construction and before adding
+to its parent sizer.
+
+\membersection{wxWindow::SetOwnBackgroundColour}\label{wxwindowsetownbackgroundcolour}
+
+\func{void}{SetOwnBackgroundColour}{\param{const wxColour\& }{colour}}
 
 Sets the background colour of the window but prevents it from being inherited
 by the children of this window.
@@ -2472,9 +2685,9 @@ by the children of this window.
 \helpref{InheritAttributes}{wxwindowinheritattributes}
 
 
-\membersection{wxWindow::SetDefaultFont}\label{wxwindowsetdefaultfont}
+\membersection{wxWindow::SetOwnFont}\label{wxwindowsetownfont}
 
-\func{void}{SetDefaultBackgroundColour}{\param{const wxColour\& }{colour}}
+\func{void}{SetOwnFont}{\param{const wxFont\& }{font}}
 
 Sets the font of the window but prevents it from being inherited by the
 children of this window.
@@ -2485,9 +2698,9 @@ children of this window.
 \helpref{InheritAttributes}{wxwindowinheritattributes}
 
 
-\membersection{wxWindow::SetDefaultForegroundColour}\label{wxwindowsetdefaultforegroundcolour}
+\membersection{wxWindow::SetOwnForegroundColour}\label{wxwindowsetownforegroundcolour}
 
-\func{void}{SetDefaultForegroundColour}{\param{const wxColour\& }{colour}}
+\func{void}{SetOwnForegroundColour}{\param{const wxColour\& }{colour}}
 
 Sets the foreground colour of the window but prevents it from being inherited
 by the children of this window.
@@ -2590,6 +2803,8 @@ This sets the window to receive keyboard input.
 \wxheading{See also}
 
 \helpref{wxFocusEvent}{wxfocusevent}
+\helpref{wxPanel::SetFocus}{wxpanelsetfocus}
+\helpref{wxPanel::SetFocusIgnoringChildren}{wxpanelsetfocusignoringchildren}
 
 
 \membersection{wxWindow::SetFocusFromKbd}\label{wxwindowsetfocusfromkbd}
@@ -2608,13 +2823,14 @@ can be overridden to do something in addition to this in the derived classes.
 
 Sets the font for this window. This function should not be called for the
 parent window if you don't want its font to be inherited by its children,
-use \helpref{SetDefaultFont}{wxwindowsetdefaultfont} instead in this case and
+use \helpref{SetOwnFont}{wxwindowsetownfont} instead in this case and
 see \helpref{InheritAttributes}{wxwindowinheritattributes} for more
 explanations.
 
 \wxheading{Parameters}
 
-\docparam{font}{Font to associate with this window.}
+\docparam{font}{Font to associate with this window, pass
+{\tt wxNullFont} to reset to the default font.}
 
 \wxheading{See also}
 
@@ -2630,11 +2846,12 @@ Sets the foreground colour of the window.
 
 Please see \helpref{InheritAttributes}{wxwindowinheritattributes} for
 explanation of the difference between this method and 
-\helpref{SetDefaultForegroundColour}{wxwindowsetdefaultforegroundcolour}.
+\helpref{SetOwnForegroundColour}{wxwindowsetownforegroundcolour}.
 
 \wxheading{Parameters}
 
-\docparam{colour}{The colour to be used as the foreground colour.}
+\docparam{colour}{The colour to be used as the foreground colour, pass
+  {\tt wxNullColour} to reset to the default colour.}
 
 \wxheading{Remarks}
 
@@ -2642,9 +2859,10 @@ The interpretation of foreground colour is open to interpretation according
 to the window class; it may be the text colour or other colour, or it may not
 be used at all.
 
-Note that when using this functions under GTK, you will disable the so called "themes",
-i.e. the user chosen appearance of windows and controls, including the themes of
-their parent windows.
+Using this function will disable attempts to use themes for this
+window, if the system supports them.  Use with care since usually the
+themes represent the appearance chosen by the user to be used for all
+applications on the system.
 
 \wxheading{See also}
 
@@ -2687,6 +2905,21 @@ on creation and should not be modified subsequently.
 
 
 
+\membersection{wxWindow::SetLabel}\label{wxwindowsetlabel}
+
+\func{virtual void}{SetLabel}{\param{const wxString\& }{label}}
+
+Sets the window's label.
+
+\wxheading{Parameters}
+
+\docparam{label}{The window label.}
+
+\wxheading{See also}
+
+\helpref{wxWindow::GetLabel}{wxwindowgetlabel}
+
+
 \membersection{wxWindow::SetName}\label{wxwindowsetname}
 
 \func{virtual void}{SetName}{\param{const wxString\& }{name}}
@@ -2795,8 +3028,8 @@ handling of pages and ranges.
 \wxheading{See also}
 
 \helpref{wxWindow::SetScrollPos}{wxwindowsetscrollpos},\rtfsp
-\helpref{wxWindow::GetScrollPos}{wxwindowsetscrollpos},\rtfsp
-\helpref{wxWindow::GetScrollPage}{wxwindowsetscrollpage},\rtfsp
+\helpref{wxWindow::GetScrollPos}{wxwindowgetscrollpos},\rtfsp
+\helpref{wxWindow::GetScrollPage}{wxwindowgetscrollpage},\rtfsp
 \helpref{wxScrollBar}{wxscrollbar}, \helpref{wxScrolledWindow}{wxscrolledwindow}
 \end{comment}
 
@@ -2823,7 +3056,7 @@ application to take note of scrollbar attributes and redraw contents accordingly
 \wxheading{See also}
 
 \helpref{wxWindow::SetScrollbar}{wxwindowsetscrollbar},\rtfsp
-\helpref{wxWindow::GetScrollPos}{wxwindowsetscrollpos},\rtfsp
+\helpref{wxWindow::GetScrollPos}{wxwindowgetscrollpos},\rtfsp
 \helpref{wxWindow::GetScrollThumb}{wxwindowgetscrollthumb},\rtfsp
 \helpref{wxScrollBar}{wxscrollbar}, \helpref{wxScrolledWindow}{wxscrolledwindow}
 
@@ -2856,8 +3089,8 @@ and usually the scrollbar will be automatically hidden.
 
 \helpref{wxWindow::SetScrollPos}{wxwindowsetscrollpos},\rtfsp
 \helpref{wxWindow::SetScrollPage}{wxwindowsetscrollpage},\rtfsp
-\helpref{wxWindow::GetScrollPos}{wxwindowsetscrollpos},\rtfsp
-\helpref{wxWindow::GetScrollPage}{wxwindowsetscrollpage},\rtfsp
+\helpref{wxWindow::GetScrollPos}{wxwindowgetscrollpos},\rtfsp
+\helpref{wxWindow::GetScrollPage}{wxwindowgetscrollpage},\rtfsp
 \helpref{wxScrollBar}{wxscrollbar}, \helpref{wxScrolledWindow}{wxscrolledwindow}
 \end{comment}
 
@@ -3131,7 +3364,7 @@ See \helpref{Window styles}{windowstyles} for more information about flags.
 
 This function can be called under all platforms but only does anything under
 Mac OS X 10.3+ currently. Under this system, each of the standard control can
-exist in several sizes which correpond to the elements of wxWindowVariant
+exist in several sizes which correspond to the elements of wxWindowVariant
 enum:
 \begin{verbatim}
 enum wxWindowVariant
@@ -3326,7 +3559,7 @@ Returns {\tt false} if any of the validations failed.
 \wxheading{See also}
 
 \helpref{wxWindow::TransferDataFromWindow}{wxwindowtransferdatafromwindow},\rtfsp
-\helpref{wxWindow::TransferDataFromWindow}{wxwindowtransferdatafromwindow},\rtfsp
+\helpref{wxWindow::TransferDataToWindow}{wxwindowtransferdatatowindow},\rtfsp
 \helpref{wxValidator}{wxvalidator}