]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/window.tex
Added possibility of 2-step initialisation, and wxWIZARD_EX_HELPBUTTON style.
[wxWidgets.git] / docs / latex / wx / window.tex
index 4ffb1a704d8d5c0687ca64ec3984730e5443e716..4332f54142ff33dd3b18b6479faec66660e775eb 100644 (file)
@@ -178,7 +178,7 @@ centered relative to the screen anyhow.
 
 \func{void}{CentreOnParent}{\param{int}{ direction = wxBOTH}}
 
 
 \func{void}{CentreOnParent}{\param{int}{ direction = wxBOTH}}
 
-Centres the window on its parent. This is a more readable synonym for 
+Centres the window on its parent. This is a more readable synonym for
 \helpref{Centre}{wxwindowcentre}.
 
 \wxheading{Parameters}
 \helpref{Centre}{wxwindowcentre}.
 
 \wxheading{Parameters}
@@ -190,7 +190,7 @@ or {\tt wxBOTH}.}
 
 This methods provides for a way to center top level windows over their
 parents instead of the entire screen.  If there is no parent or if the
 
 This methods provides for a way to center top level windows over their
 parents instead of the entire screen.  If there is no parent or if the
-window is not a top level window, then behaviour is the same as 
+window is not a top level window, then behaviour is the same as
 \helpref{wxWindow::Centre}{wxwindowcentre}.
 
 \wxheading{See also}
 \helpref{wxWindow::Centre}{wxwindowcentre}.
 
 \wxheading{See also}
@@ -224,6 +224,9 @@ cause an erase background event to be generated.
 
 \constfunc{virtual void}{ClientToScreen}{\param{int* }{x}, \param{int* }{y}}
 
 
 \constfunc{virtual void}{ClientToScreen}{\param{int* }{x}, \param{int* }{y}}
 
+\perlnote{In wxPerl this method returns a 2-element list intead of
+modifying its parameters.}
+
 \constfunc{virtual wxPoint}{ClientToScreen}{\param{const wxPoint\&}{ pt}}
 
 Converts to screen coordinates from coordinates relative to this window.
 \constfunc{virtual wxPoint}{ClientToScreen}{\param{const wxPoint\&}{ pt}}
 
 Converts to screen coordinates from coordinates relative to this window.
@@ -244,7 +247,6 @@ implements the following methods:\par
 \end{twocollist}}
 }
 
 \end{twocollist}}
 }
 
-
 \membersection{wxWindow::Close}\label{wxwindowclose}
 
 \func{virtual bool}{Close}{\param{bool}{ force = FALSE}}
 \membersection{wxWindow::Close}\label{wxwindowclose}
 
 \func{virtual bool}{Close}{\param{bool}{ force = FALSE}}
@@ -385,6 +387,12 @@ to the list of windows pending real deletion.
 
 Destroys all children of a window.  Called automatically by the destructor.
 
 
 Destroys all children of a window.  Called automatically by the destructor.
 
+\membersection{wxWindow::Disable}\label{wxwindowdisable}
+
+\func{void}{Disable}{\void}
+
+Disables the window, same as \helpref{Enable(FALSE)}{wxwindowenable}.
+
 \membersection{wxWindow::DragAcceptFiles}\label{wxwindowdragacceptfiles}
 
 \func{virtual void}{DragAcceptFiles}{\param{bool}{ accept}}
 \membersection{wxWindow::DragAcceptFiles}\label{wxwindowdragacceptfiles}
 
 \func{virtual void}{DragAcceptFiles}{\param{bool}{ accept}}
@@ -406,7 +414,7 @@ Windows only.
 
 \membersection{wxWindow::Enable}\label{wxwindowenable}
 
 
 \membersection{wxWindow::Enable}\label{wxwindowenable}
 
-\func{virtual void}{Enable}{\param{bool}{ enable}}
+\func{virtual void}{Enable}{\param{bool}{ enable = TRUE}}
 
 Enable or disable the window for user input.
 
 
 Enable or disable the window for user input.
 
@@ -416,7 +424,8 @@ Enable or disable the window for user input.
 
 \wxheading{See also}
 
 
 \wxheading{See also}
 
-\helpref{wxWindow::IsEnabled}{wxwindowisenabled}
+\helpref{wxWindow::IsEnabled}{wxwindowisenabled},\rtfsp
+\helpref{wxWindow::Disable}{wxwindowdisable}
 
 \membersection{wxWindow::FindFocus}\label{wxwindowfindfocus}
 
 
 \membersection{wxWindow::FindFocus}\label{wxwindowfindfocus}
 
@@ -457,6 +466,20 @@ implements the following methods:\par
 Sizes the window so that it fits around its subwindows. This function won't do
 anything if there are no subwindows.
 
 Sizes the window so that it fits around its subwindows. This function won't do
 anything if there are no subwindows.
 
+\membersection{wxWindow::Freeze}\label{wxwindowfreeze}
+
+\func{virtual void}{Freeze}{\void}
+
+Freezes the window or, in other words, prevents any updates from taking place
+on screen, the window is not redrawn at all. \helpref{Thaw}{wxwindowthaw} must
+be called to reenable window redrawing.
+
+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
+controls so it is mostly just a hint to wxWindows and not a mandatory
+directive.
+
 \membersection{wxWindow::GetBackgroundColour}\label{wxwindowgetbackgroundcolour}
 
 \constfunc{virtual wxColour}{GetBackgroundColour}{\void}
 \membersection{wxWindow::GetBackgroundColour}\label{wxwindowgetbackgroundcolour}
 
 \constfunc{virtual wxColour}{GetBackgroundColour}{\void}
@@ -509,6 +532,9 @@ Returns a reference to the list of the window's children.
 
 \constfunc{virtual void}{GetClientSize}{\param{int* }{width}, \param{int* }{height}}
 
 
 \constfunc{virtual void}{GetClientSize}{\param{int* }{width}, \param{int* }{height}}
 
+\perlnote{In wxPerl this method takes no parameter and returns
+a 2-element list {\tt ( width, height )}.}
+
 \constfunc{virtual wxSize}{GetClientSize}{\void}
 
 This gets the size of the window `client area' in pixels.  The client area is the
 \constfunc{virtual wxSize}{GetClientSize}{\void}
 
 This gets the size of the window `client area' in pixels.  The client area is the
@@ -523,8 +549,8 @@ area which may be drawn on by the programmer, excluding title bar, border etc.
 \pythonnote{In place of a single overloaded method name, wxPython
 implements the following methods:\par
 \indented{2cm}{\begin{twocollist}
 \pythonnote{In place of a single overloaded method name, wxPython
 implements the following methods:\par
 \indented{2cm}{\begin{twocollist}
-\twocolitem{{\bf wxGetClientSizeTuple()}}{Returns a 2-tuple of (width, height)}
-\twocolitem{{\bf wxGetClientSize()}}{Returns a wxSize object}
+\twocolitem{{\bf GetClientSizeTuple()}}{Returns a 2-tuple of (width, height)}
+\twocolitem{{\bf GetClientSize()}}{Returns a wxSize object}
 \end{twocollist}}
 }
 
 \end{twocollist}}
 }
 
@@ -542,7 +568,7 @@ Returns the associated drop target, which may be NULL.
 
 \wxheading{See also}
 
 
 \wxheading{See also}
 
-\helpref{wxWindow::SetDropTarget}{wxwindowsetdroptarget}, 
+\helpref{wxWindow::SetDropTarget}{wxwindowsetdroptarget},
 \helpref{Drag and drop overview}{wxdndoverview}
 
 \membersection{wxWindow::GetEventHandler}\label{wxwindowgeteventhandler}
 \helpref{Drag and drop overview}{wxdndoverview}
 
 \membersection{wxWindow::GetEventHandler}\label{wxwindowgeteventhandler}
@@ -600,7 +626,7 @@ be used at all.
 
 Returns the grandparent of a window, or NULL if there isn't one.
 
 
 Returns the grandparent of a window, or NULL if there isn't one.
 
-\membersection{wxWindow::GetHandle}
+\membersection{wxWindow::GetHandle}\label{wxwindowgethandle}
 
 \constfunc{void*}{GetHandle}{\void}
 
 
 \constfunc{void*}{GetHandle}{\void}
 
@@ -609,6 +635,19 @@ handle, such as {\bf HWND} for Windows, {\bf Widget} for Motif or {\bf GtkWidget
 
 \pythonnote{This method will return an integer in wxPython.}
 
 
 \pythonnote{This method will return an integer in wxPython.}
 
+\membersection{wxWindow::GetHelpText}\label{wxwindowgethelptext}
+
+\constfunc{virtual wxString}{GetHelpText}{\void}
+
+Gets the help text to be used as context-sensitive help for this window.
+
+Note that the text is actually stored by the current \helpref{wxHelpProvider}{wxhelpprovider} implementation,
+and not in the window object itself.
+
+\wxheading{See also}
+
+\helpref{SetHelpText}{wxwindowsethelptext}, \helpref{wxHelpProvider}{wxhelpprovider}
+
 \membersection{wxWindow::GetId}\label{wxwindowgetid}
 
 \constfunc{int}{GetId}{\void}
 \membersection{wxWindow::GetId}\label{wxwindowgetid}
 
 \constfunc{int}{GetId}{\void}
@@ -684,6 +723,15 @@ implements the following methods:\par
 \end{twocollist}}
 }
 
 \end{twocollist}}
 }
 
+\perlnote{In wxPerl there are two methods instead of a single overloaded
+method:\par
+\indented{2cm}{\begin{twocollist}
+\twocolitem{{\bf GetPosition()}}{Returns a Wx::Point}
+\twocolitem{{\bf GetPositionXY()}}{Returns a 2-element list
+ {\tt ( x, y )}}
+\end{twocollist}
+}}
+
 \membersection{wxWindow::GetRect}\label{wxwindowgetrect}
 
 \constfunc{virtual wxRect}{GetRect}{\void}
 \membersection{wxWindow::GetRect}\label{wxwindowgetrect}
 
 \constfunc{virtual wxRect}{GetRect}{\void}
@@ -742,7 +790,21 @@ implements the following methods:\par
 \end{twocollist}}
 }
 
 \end{twocollist}}
 }
 
-\membersection{wxWindow::GetTextExtent}
+\perlnote{In wxPerl there are two methods instead of a single overloaded
+method:\par
+\indented{2cm}{\begin{twocollist}
+\twocolitem{{\bf GetSize()}}{Returns a Wx::Size}
+\twocolitem{{\bf GetSizeWH()}}{Returns a 2-element list
+ {\tt ( width, height )}}
+\end{twocollist}
+}}
+
+\membersection{wxWindow::GetSizer}\label{wxwindowgetsizer}
+
+\constfunc{const wxSizer *}{GetSizer}{\void}
+
+Return the sizer associated with the window by a previous call to 
+\helpref{SetSizer()}{wxwindowsetsizer} or {\tt NULL}.
 
 \constfunc{virtual void}{GetTextExtent}{\param{const wxString\& }{string}, \param{int* }{x}, \param{int* }{y},
  \param{int* }{descent = NULL}, \param{int* }{externalLeading = NULL},
 
 \constfunc{virtual void}{GetTextExtent}{\param{const wxString\& }{string}, \param{int* }{x}, \param{int* }{y},
  \param{int* }{descent = NULL}, \param{int* }{externalLeading = NULL},
@@ -777,6 +839,9 @@ implements the following methods:\par
 \end{twocollist}}
 }
 
 \end{twocollist}}
 }
 
+\perlnote{In wxPerl this method takes only the {\tt string} and optionally
+ {\tt font} parameters, and returns a 4-element list
+ {\tt ( x, y, descent, externalLeading )}.}
 
 \membersection{wxWindow::GetTitle}\label{wxwindowgettitle}
 
 
 \membersection{wxWindow::GetTitle}\label{wxwindowgettitle}
 
@@ -1008,11 +1073,14 @@ Note that the ASCII values do not have explicit key codes: they are passed as AS
 values.
 
 Note that not all keypresses can be intercepted this way. If you wish to intercept modifier
 values.
 
 Note that not all keypresses can be intercepted this way. If you wish to intercept modifier
-keypresses, then you will need to use \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown} or 
+keypresses, then you will need to use \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown} or
 \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup}.
 
 Most, but not all, windows allow keypresses to be intercepted.
 
 \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup}.
 
 Most, but not all, windows allow keypresses to be intercepted.
 
+{\bf Tip:} be sure to call {\tt event.Skip()} for events that you don't process in this function,
+otherwise menu shortcuts may cease to work under Windows.
+
 \wxheading{See also}
 
 \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown}, \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup},\rtfsp
 \wxheading{See also}
 
 \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown}, \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup},\rtfsp
@@ -1045,7 +1113,7 @@ values.
 
 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.
 
 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 intercepts it and if you don't call \helpref{wxEvent::Skip}{wxeventskip}
 the window won't get the event.
 
 \wxheading{See also}
 the window won't get the event.
 
 \wxheading{See also}
@@ -1208,11 +1276,14 @@ use the EVT\_KEY\_DOWN macro in an event table definition. Your {\bf OnKeyDown}
 default function to achieve default keypress functionality.
 
 Note that not all keypresses can be intercepted this way. If you wish to intercept special
 default function to achieve default keypress functionality.
 
 Note that not all keypresses can be intercepted this way. If you wish to intercept special
-keys, such as shift, control, and function keys, then you will need to use \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown} or 
+keys, such as shift, control, and function keys, then you will need to use \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown} or
 \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup}.
 
 Most, but not all, windows allow keypresses to be intercepted.
 
 \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup}.
 
 Most, but not all, windows allow keypresses to be intercepted.
 
+{\bf Tip:} be sure to call {\tt event.Skip()} for events that you don't process in this function,
+otherwise menu shortcuts may cease to work under Windows.
+
 \wxheading{See also}
 
 \helpref{wxWindow::OnChar}{wxwindowonchar}, \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup},\rtfsp
 \wxheading{See also}
 
 \helpref{wxWindow::OnChar}{wxwindowonchar}, \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup},\rtfsp
@@ -1237,7 +1308,7 @@ use the EVT\_KEY\_UP macro in an event table definition. Your {\bf OnKeyUp} hand
 default function to achieve default keypress functionality.
 
 Note that not all keypresses can be intercepted this way. If you wish to intercept special
 default function to achieve default keypress functionality.
 
 Note that not all keypresses can be intercepted this way. If you wish to intercept special
-keys, such as shift, control, and function keys, then you will need to use \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown} or 
+keys, such as shift, control, and function keys, then you will need to use \helpref{wxWindow::OnKeyDown}{wxwindowonkeydown} or
 \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup}.
 
 Most, but not all, windows allow key up events to be intercepted.
 \helpref{wxWindow::OnKeyUp}{wxwindowonkeyup}.
 
 Most, but not all, windows allow key up events to be intercepted.
@@ -1412,8 +1483,6 @@ Sent to the event handler when the window must be refreshed.
 
 \wxheading{Remarks}
 
 
 \wxheading{Remarks}
 
-
-
 Use the EVT\_PAINT macro in an event table definition to intercept paint events.
 
 Note that In a paint event handler, the application must {\it always} create a \helpref{wxPaintDC}{wxpaintdc} object,
 Use the EVT\_PAINT macro in an event table definition to intercept paint events.
 
 Note that In a paint event handler, the application must {\it always} create a \helpref{wxPaintDC}{wxpaintdc} object,
@@ -1736,6 +1805,49 @@ implements the following methods:\par
 \end{twocollist}}
 }
 
 \end{twocollist}}
 }
 
+\membersection{wxWindow::ScrollLines}\label{wxwindowscrolllines}
+
+\func{virtual bool}{ScrollLines}{\param{int }{lines}}
+
+Scrolls the window by the given number of lines down (if {\it lines} is
+positive) or up.
+
+\wxheading{Return value}
+
+Returns {\tt TRUE} if the window was scrolled, {\tt FALSE} if it was already
+on top/bottom and nothing was done.
+
+\wxheading{Remarks}
+
+This function is currently only implemented under MSW and wxTextCtrl under
+wxGTK (it also works for wxScrolledWindow derived classes under all
+platforms).
+
+\wxheading{See also}
+
+\helpref{ScrollPages}{wxwindowscrollpages}
+
+\membersection{wxWindow::ScrollPages}\label{wxwindowscrollpages}
+
+\func{virtual bool}{ScrollPages}{\param{int }{pages}}
+
+Scrolls the window by the given number of pages down (if {\it pages} is
+positive) or up.
+
+\wxheading{Return value}
+
+Returns {\tt TRUE} if the window was scrolled, {\tt FALSE} if it was already
+on top/bottom and nothing was done.
+
+\wxheading{Remarks}
+
+This function is currently only implemented under MSW and wxTextCtrl under
+wxGTK (it also works for wxScrolledWindow derived classes under all
+platforms).
+
+\wxheading{See also}
+
+\helpref{ScrollLines}{wxwindowscrolllines}
 
 \membersection{wxWindow::ScrollWindow}\label{wxwindowscrollwindow}
 
 
 \membersection{wxWindow::ScrollWindow}\label{wxwindowscrollwindow}
 
@@ -1771,7 +1883,8 @@ Sets the accelerator table for this window. See \helpref{wxAcceleratorTable}{wxa
 Determines whether the \helpref{wxWindow::Layout}{wxwindowlayout} function will
 be called automatically when the window is resized. Use in connection with 
 \helpref{wxWindow::SetSizer}{wxwindowsetsizer} and 
 Determines whether the \helpref{wxWindow::Layout}{wxwindowlayout} function will
 be called automatically when the window is resized. Use in connection with 
 \helpref{wxWindow::SetSizer}{wxwindowsetsizer} and 
-\helpref{wxWindow::SetConstraints}{wxwindowsetconstraints} for laying out subwindows.
+\helpref{wxWindow::SetConstraints}{wxwindowsetconstraints} for laying out
+subwindows.
 
 \wxheading{Parameters}
 
 
 \wxheading{Parameters}
 
@@ -1899,7 +2012,7 @@ If the window already has a drop target, it is deleted.
 
 \wxheading{See also}
 
 
 \wxheading{See also}
 
-\helpref{wxWindow::GetDropTarget}{wxwindowgetdroptarget}, 
+\helpref{wxWindow::GetDropTarget}{wxwindowgetdroptarget},
 \helpref{Drag and drop overview}{wxdndoverview}
 
 \membersection{wxWindow::SetEventHandler}\label{wxwindowseteventhandler}
 \helpref{Drag and drop overview}{wxdndoverview}
 
 \membersection{wxWindow::SetEventHandler}\label{wxwindowseteventhandler}
@@ -1992,6 +2105,19 @@ their parent windows.
 \helpref{wxWindow::SetBackgroundColour}{wxwindowsetbackgroundcolour},\rtfsp
 \helpref{wxWindow::GetBackgroundColour}{wxwindowgetbackgroundcolour}
 
 \helpref{wxWindow::SetBackgroundColour}{wxwindowsetbackgroundcolour},\rtfsp
 \helpref{wxWindow::GetBackgroundColour}{wxwindowgetbackgroundcolour}
 
+\membersection{wxWindow::SetHelpText}\label{wxwindowsethelptext}
+
+\func{virtual void}{SetHelpText}{\param{const wxString\& }{helpText}}
+
+Sets the help text to be used as context-sensitive help for this window.
+
+Note that the text is actually stored by the current \helpref{wxHelpProvider}{wxhelpprovider} implementation,
+and not in the window object itself.
+
+\wxheading{See also}
+
+\helpref{GetHelpText}{wxwindowgethelptext}, \helpref{wxHelpProvider}{wxhelpprovider}
+
 \membersection{wxWindow::SetId}\label{wxwindowsetid}
 
 \func{void}{SetId}{\param{int}{ id}}
 \membersection{wxWindow::SetId}\label{wxwindowsetid}
 
 \func{void}{SetId}{\param{int}{ id}}
@@ -2322,9 +2448,9 @@ create a new validator of this type.
 
 \func{void}{SetToolTip}{\param{wxToolTip* }{tip}}
 
 
 \func{void}{SetToolTip}{\param{wxToolTip* }{tip}}
 
-Attach a tooltip to the window. 
+Attach a tooltip to the window.
 
 
-See also: \helpref{GetToolTip}{wxwindowgettooltip}, 
+See also: \helpref{GetToolTip}{wxwindowgettooltip},
           \helpref{wxToolTip}{wxtooltip}
 
 
           \helpref{wxToolTip}{wxtooltip}
 
 
@@ -2360,17 +2486,25 @@ See \helpref{Window styles}{windowstyles} for more information about flags.
 
 \func{virtual bool}{Show}{\param{bool}{ show}}
 
 
 \func{virtual bool}{Show}{\param{bool}{ show}}
 
-Shows or hides the window.
+Shows or hides the window. You may need to call \helpref{Raise}{wxwindowraise} 
+for a top level window if you want to bring it to top, although this is not
+needed if Show() is called immediately after the frame creation.
 
 \wxheading{Parameters}
 
 
 \wxheading{Parameters}
 
-\docparam{show}{If TRUE, displays the window and brings it to the front. Otherwise,
-hides the window.}
+\docparam{show}{If TRUE displays the window. Otherwise, hides it.}
 
 \wxheading{See also}
 
 \helpref{wxWindow::IsShown}{wxwindowisshown}
 
 
 \wxheading{See also}
 
 \helpref{wxWindow::IsShown}{wxwindowisshown}
 
+\membersection{wxWindow::Thaw}\label{wxwindowthaw}
+
+\func{virtual void}{Thaw}{\void}
+
+Reenables window updating after a previous call to 
+\helpref{Freeze}{wxwindowfreeze}.
+
 \membersection{wxWindow::TransferDataFromWindow}\label{wxwindowtransferdatafromwindow}
 
 \func{virtual bool}{TransferDataFromWindow}{\void}
 \membersection{wxWindow::TransferDataFromWindow}\label{wxwindowtransferdatafromwindow}
 
 \func{virtual bool}{TransferDataFromWindow}{\void}