Disables the window, same as \helpref{Enable({\tt FALSE})}{wxwindowenable}.
+\wxheading{Return value}
+
+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::DragAcceptFiles}\label{wxwindowdragacceptfiles}
\func{virtual void}{DragAcceptFiles}{\param{bool}{ accept}}
\membersection{wxWindow::Enable}\label{wxwindowenable}
-\func{virtual void}{Enable}{\param{bool}{ enable = {\tt TRUE}}}
+\func{virtual bool}{Enable}{\param{bool}{ enable = {\tt TRUE}}}
Enable or disable the window for user input.
\docparam{enable}{If {\tt TRUE}, enables the window for input. If {\tt FALSE}, disables the window.}
+\wxheading{Return value}
+
+Returns {\tt TRUE} if the window has been enabled or disabled, {\tt FALSE} if
+nothing was done, i.e. if the window had already been in the specified state.
+
\wxheading{See also}
\helpref{wxWindow::IsEnabled}{wxwindowisenabled},\rtfsp
Returns the \helpref{caret}{wxcaret} associated with the window.
+\membersection{wxWindow::GetCapture}\label{wxwindowgetcapture}
+
+\func{static wxWindow *}{GetCapture}{\void}
+
+Returns the currently captured window.
+
+\wxheading{See also}
+
+\helpref{wxWindow::HasCapture}{wxwindowhascapture},
+\helpref{wxWindow::CaptureMouse}{wxwindowcapturemouse},
+\helpref{wxWindow::ReleaseMouse}{wxwindowreleasemouse},
+\helpref{wxMouseCaptureChangedEvent}{wxmousecapturechangedevent}
+
\membersection{wxWindow::GetCharHeight}
\constfunc{virtual int}{GetCharHeight}{\void}
\wxheading{See also}
\helpref{GetSize}{wxwindowgetsize}
+\helpref{GetVirtualSize}{wxwindowgetvirtualsize}
\membersection{wxWindow::GetConstraints}\label{wxwindowgetconstraints}
\wxheading{See also}
-\helpref{GetClientSize}{wxwindowgetclientsize}
+\helpref{GetClientSize}{wxwindowgetclientsize},\rtfsp
+\helpref{GetVirtualSize}{wxwindowgetvirtualsize}
\membersection{wxWindow::GetSizer}\label{wxwindowgetsizer}
\constfunc{virtual wxRegion}{GetUpdateRegion}{\void}
Returns the region specifying which parts of the window have been damaged. Should
-only be called within an \helpref{OnPaint}{wxwindowonpaint} event handler.
+only be called within an \helpref{wxPaintEvent}{wxpaintevent} handler.
\wxheading{See also}
Returns a pointer to the current validator for the window, or NULL if there is none.
+\membersection{wxWindow::GetVirtualSize}\label{wxwindowgetvirtualsize}
+
+\constfunc{void}{GetVirtualSize}{\param{int* }{width}, \param{int* }{height}}
+
+\constfunc{wxSize}{GetVirtualSize}{\void}
+
+This gets the virtual size of the window in pixels.
+
+\wxheading{Parameters}
+
+\docparam{width}{Receives the window virtual width.}
+
+\docparam{height}{Receives the window virtual height.}
+
+\helpref{GetSize}{wxwindowgetsize},\rtfsp
+\helpref{GetClientSize}{wxwindowgetclientsize}
+
\membersection{wxWindow::GetWindowStyleFlag}\label{wxwindowgetwindowstyleflag}
\constfunc{long}{GetWindowStyleFlag}{\void}
Gets the window style that was passed to the constructor or {\bf Create}
method. {\bf GetWindowStyle()} is another name for the same function.
+\membersection{wxWindow::HasCapture}\label{wxwindowhascapture}
+
+\constfunc{virtual bool}{HasCapture}{\void}
+
+Returns TRUE if this window has the current mouse capture.
+
+\wxheading{See also}
+
+\helpref{wxWindow::CaptureMouse}{wxwindowcapturemouse},
+\helpref{wxWindow::ReleaseMouse}{wxwindowreleasemouse},
+\helpref{wxMouseCaptureChangedEvent}{wxmousecapturechangedevent}
+
\membersection{wxWindow::Hide}\label{wxwindowhide}
\func{bool}{Hide}{\void}
%% \helpref{wxWindow::OnCloseWindow}{wxwindowonclosewindow},\rtfsp
%% \helpref{wxCloseEvent}{wxcloseevent}
%%
-%% \membersection{wxWindow::OnCloseWindow}\label{wxwindowonclosewindow}
-%%
-%% \func{void}{OnCloseWindow}{\param{wxCloseEvent\& }{event}}
-%%
-%% This is an event handler function called when the user has tried to close a a frame
-%% or dialog box using the window manager (X) or system menu (Windows). It is
-%% called via the \helpref{wxWindow::Close}{wxwindowclose} function, so
-%% that the application can also invoke the handler programmatically.
-%%
-%% Use the EVT\_CLOSE event table macro to handle close events.
-%%
-%% You should check whether the application is forcing the deletion of the window
-%% using \helpref{wxCloseEvent::GetForce}{wxcloseeventgetforce}. If this is {\tt TRUE},
-%% destroy the window using \helpref{wxWindow::Destroy}{wxwindowdestroy}.
-%% If not, it is up to you whether you respond by destroying the window.
-%%
-%% (Note: GetForce is now superceded by CanVeto. So to test whether forced destruction of
-%% the window is required, test for the negative of CanVeto. If CanVeto returns {\tt FALSE},
-%% it is not possible to skip window deletion.)
-%%
-%% If you don't destroy the window, you should call \helpref{wxCloseEvent::Veto}{wxcloseeventveto} to
-%% let the calling code know that you did not destroy the window. This allows the \helpref{wxWindow::Close}{wxwindowclose} function
-%% to return {\tt TRUE} or {\tt FALSE} depending on whether the close instruction was honoured or not.
-%%
-%% \wxheading{Remarks}
-%%
-%% The \helpref{wxWindow::OnClose}{wxwindowonclose} virtual function remains
-%% for backward compatibility with earlier versions of wxWindows. The
-%% default {\bf OnCloseWindow} handler for wxFrame and wxDialog will call {\bf OnClose},
-%% destroying the window if it returns {\tt TRUE} or if the close is being forced.
-%%
-%% \wxheading{See also}
-%%
-%% \helpref{Window deletion overview}{windowdeletionoverview},\rtfsp
-%% \helpref{wxWindow::Close}{wxwindowclose},\rtfsp
-%% \helpref{wxWindow::OnClose}{wxwindowonclose},\rtfsp
-%% \helpref{wxWindow::Destroy}{wxwindowdestroy},\rtfsp
-%% \helpref{wxCloseEvent}{wxcloseevent},\rtfsp
-%% \helpref{wxApp::OnQueryEndSession}{wxapponqueryendsession}
-%% %% GD: OnXXX functions are not documented
-%% %%\helpref{wxApp::OnEndSession}{wxapponendsession}
-%%
-%% \membersection{wxWindow::OnDropFiles}\label{wxwindowondropfiles}
-%%
-%% \func{void}{OnDropFiles}{\param{wxDropFilesEvent\&}{ event}}
-%%
-%% Called when files have been dragged from the file manager to the window.
-%%
-%% \wxheading{Parameters}
-%%
-%% \docparam{event}{Drop files event. For more information, see \helpref{wxDropFilesEvent}{wxdropfilesevent}.}
-%%
-%% \wxheading{Remarks}
-%%
-%% The window must have previously been enabled for dropping by calling
-%% \rtfsp\helpref{wxWindow::DragAcceptFiles}{wxwindowdragacceptfiles}.
-%%
-%% This event is only generated under Windows.
-%%
-%% To intercept this event, use the EVT\_DROP\_FILES macro in an event table definition.
-%%
-%% \wxheading{See also}
-%%
-%% \helpref{wxDropFilesEvent}{wxdropfilesevent}, \helpref{wxWindow::DragAcceptFiles}{wxwindowdragacceptfiles},\rtfsp
-%% \helpref{Event handling overview}{eventhandlingoverview}
-%%
-%% \membersection{wxWindow::OnEraseBackground}\label{wxwindowonerasebackground}
-%%
-%% \func{void}{OnEraseBackground}{\param{wxEraseEvent\&}{ event}}
-%%
-%% Called when the background of the window needs to be erased.
-%%
-%% \wxheading{Parameters}
-%%
-%% \docparam{event}{Erase background event. For more information, see \helpref{wxEraseEvent}{wxeraseevent}.}
-%%
-%% \wxheading{Remarks}
-%%
-%% Under non-Windows platforms, this event is simulated (simply generated just before the
-%% paint event) and may cause flicker. It is therefore recommended that
-%% you set the text background colour explicitly in order to prevent flicker.
-%% The default background colour under GTK is grey.
-%%
-%% To intercept this event, use the EVT\_ERASE\_BACKGROUND macro in an event table definition.
-%%
-%% \wxheading{See also}
-%%
-%% \helpref{wxEraseEvent}{wxeraseevent}, \helpref{Event handling overview}{eventhandlingoverview}
-%%
%% \membersection{wxWindow::OnKeyDown}\label{wxwindowonkeydown}
%%
%% \func{void}{OnKeyDown}{\param{wxKeyEvent\&}{ event}}
%% \helpref{wxKeyEvent}{wxkeyevent}, \helpref{wxWindow::OnCharHook}{wxwindowoncharhook},\rtfsp
%% \helpref{Event handling overview}{eventhandlingoverview}
%%
-%% \membersection{wxWindow::OnKillFocus}\label{wxwindowonkillfocus}
-%%
-%% \func{void}{OnKillFocus}{\param{wxFocusEvent\& }{event}}
-%%
-%% Called when a window's focus is being killed.
-%%
-%% \wxheading{Parameters}
-%%
-%% \docparam{event}{The focus event. For more information, see \helpref{wxFocusEvent}{wxfocusevent}.}
-%%
-%% \wxheading{Remarks}
-%%
-%% To intercept this event, use the macro EVT\_KILL\_FOCUS in an event table definition.
-%%
-%% Most, but not all, windows respond to this event.
-%%
-%% \wxheading{See also}
-%%
-%% \helpref{wxFocusEvent}{wxfocusevent}, \helpref{wxWindow::OnSetFocus}{wxwindowonsetfocus},\rtfsp
-%% \helpref{Event handling overview}{eventhandlingoverview}
-%%
-%% \membersection{wxWindow::OnIdle}\label{wxwindowonidle}
-%%
-%% \func{void}{OnIdle}{\param{wxIdleEvent\& }{event}}
-%%
-%% Provide this member function for any processing which needs to be done
-%% when the application is idle.
-%%
-%% \wxheading{See also}
-%%
-%% %% GD: OnXXX functions are not documented
-%% %%\helpref{wxApp::OnIdle}{wxapponidle}
-%% \helpref{wxIdleEvent}{wxidleevent}
-%%
%% \membersection{wxWindow::OnInitDialog}\label{wxwindowoninitdialog}
%%
%% \func{void}{OnInitDialog}{\param{wxInitDialogEvent\&}{ event}}
\wxheading{See also}
-\helpref{wxWindow::CaptureMouse}{wxwindowcapturemouse}
+\helpref{wxWindow::CaptureMouse}{wxwindowcapturemouse},
+\helpref{wxWindow::HasCapture}{wxwindowhascapture},
+\helpref{wxWindow::ReleaseMouse}{wxwindowreleasemouse},
+\helpref{wxMouseCaptureChangedEvent}{wxmousecapturechangedevent}
\membersection{wxWindow::RemoveChild}\label{wxwindowremovechild}
\docparam{child}{Child window to remove.}
-\membersection{wxWindow::RemoveEventHandler}{wxwindowremoveeventhandler}
+\membersection{wxWindow::RemoveEventHandler}\label{wxwindowremoveeventhandler}
\func{bool}{RemoveEventHandler}{\param{wxEvtHandler *}{handler}}
\wxheading{Remarks}
The background colour is usually painted by the default\rtfsp
-\helpref{wxWindow::OnEraseBackground}{wxwindowonerasebackground} event handler function
+\helpref{wxEraseEvent}{wxeraseevent} event handler function
under Windows and automatically under GTK.
Note that setting the background colour does not cause an immediate refresh, so you
\helpref{wxWindow::GetForegroundColour}{wxwindowgetforegroundcolour},\rtfsp
\helpref{wxWindow::Clear}{wxwindowclear},\rtfsp
\helpref{wxWindow::Refresh}{wxwindowrefresh},\rtfsp
-\helpref{wxWindow::OnEraseBackground}{wxwindowonerasebackground}
+\helpref{wxEraseEvent}{wxeraseevent}
\membersection{wxWindow::SetCaret}\label{wxwindowsetcaret}
a wxEVT\_HELP event if the user clicked on an application window.
This style cannot be used together with wxMAXIMIZE\_BOX or wxMINIMIZE\_BOX, so
you should use the style of
-{\tt wxDEFAULT\_FRAME\_STYLE & ~(wxMINIMIZE\_BOX | wxMAXIMIZE\_BOX)} for the
+{\tt wxDEFAULT\_FRAME\_STYLE \& \textasciitilde(wxMINIMIZE\_BOX | wxMAXIMIZE\_BOX)} for the
frames having this style (the dialogs don't have minimize nor maximize box by
default)}
\end{twocollist}
This sets the window to receive keyboard input.
+\wxheading{See also}
+
+\helpref{wxFocusEvent}{wxfocusevent}
+
+\membersection{wxWindow::SetFocusFromKbd}\label{wxwindowsetfocusfromkbd}
+
+\func{virtual void}{SetFocusFromKbd}{\void}
+
+This function is called by wxWindows keyboard navigation code when the user
+gives the focus to this window from keyboard (e.g. using {\tt TAB} key).
+By default this method simply calls \helpref{SetFocus}{wxwindowsetfocus} but
+can be overridden to do something in addition to this in the derived classes.
+
\membersection{wxWindow::SetFont}\label{wxwindowsetfont}
\func{void}{SetFont}{\param{const wxFont\& }{font}}
the scrollbar settings when the window size changes. You could therefore put your
scrollbar calculations and SetScrollbar
call into a function named AdjustScrollbars, which can be called initially and also
-from your \helpref{wxWindow::OnSize}{wxwindowonsize} event handler function.
+from your \helpref{wxSizeEvent}{wxsizeevent} handler function.
\wxheading{See also}
\wxheading{Remarks}
+SetSizer now enables and disables Layout automatically, but prior to wxWindows 2.3.3
+the following applied:
+
You must call \helpref{wxWindow::SetAutoLayout}{wxwindowsetautolayout} to tell a window to use
the sizer automatically in OnSize; otherwise, you must override OnSize and call Layout()
explicitly. When setting both a wxSizer and a \helpref{wxLayoutConstraints}{wxlayoutconstraints},
only the sizer will have effect.
+\membersection{wxWindow::SetSizerAndFit}\label{wxwindowsetsizerandfit}
+
+\func{void}{SetSizerAndFit}{\param{wxSizer* }{sizer}, \param{bool }{deleteOld=TRUE}}
+
+The same as \helpref{SetSizer}{wxwindowsetsizer}, except it also sets the size hints
+for the window based on the sizer's minimum size.
+
\membersection{wxWindow::SetTitle}\label{wxwindowsettitle}
\func{virtual void}{SetTitle}{\param{const wxString\& }{title}}
Get the associated tooltip or NULL if none.
+\membersection{wxWindow::SetVirtualSize}\label{wxwindowsetvirtualsize}
+
+\func{void}{SetVirtualSize}{\param{int}{ width}, \param{int}{ height}}
+
+\func{void}{SetVirtualSize}{\param{const wxSize\&}{ size}}
+
+Sets the virtual size of the window in pixels.
+
+
+\membersection{wxWindow::SetVirtualSizeHints}\label{wxwindowsetvirtualsizehints}
+
+\func{virtual void}{SetVirtualSizeHints}{\param{int}{ minW},\param{int}{ minH}, \param{int}{ maxW=-1}, \param{int}{ maxH=-1}}
+
+Allows specification of minimum and maximum virtual window sizes.
+If a pair of values is not set (or set to -1), the default values
+will be used.
+
+\wxheading{Parameters}
+
+\docparam{minW}{Specifies the minimum width allowable.}
+
+\docparam{minH}{Specifies the minimum height allowable.}
+
+\docparam{maxW}{Specifies the maximum width allowable.}
+
+\docparam{maxH}{Specifies the maximum height allowable.}
+
+\wxheading{Remarks}
+
+If this function is called, the user will not be able to size the virtual area
+of the window outside the given bounds.
\membersection{wxWindow::SetWindowStyle}\label{wxwindowsetwindowstyle}