X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/94b49b9303a9fd119e24d1b07263f5bb0643afa5..dbddf573912254bb14b4ca70c5c5db6248051294:/docs/latex/wx/frame.tex diff --git a/docs/latex/wx/frame.tex b/docs/latex/wx/frame.tex index 6e03a81d2d..017a133f34 100644 --- a/docs/latex/wx/frame.tex +++ b/docs/latex/wx/frame.tex @@ -1,12 +1,14 @@ \section{\class{wxFrame}}\label{wxframe} -A frame is a window whose size and position can (usually) be changed by the user. It usually has -thick borders and a title bar, and can optionally contain a menu bar, toolbar and -status bar. A frame can contain any window that is not a frame or dialog. +A frame is a window whose size and position can (usually) be changed by the +user. It usually has thick borders and a title bar, and can optionally contain +a menu bar, toolbar and status bar. A frame can contain any window that is not +a frame or dialog. -A frame that has a status bar and toolbar created via the CreateStatusBar/CreateToolBar functions -manages these windows, and adjusts the value returned by GetClientSize to reflect -the remaining size available to application windows. +A frame that has a status bar and toolbar created via the +CreateStatusBar/CreateToolBar functions manages these windows, and adjusts the +value returned by GetClientSize to reflect the remaining size available to +application windows. \wxheading{Derived from} @@ -14,21 +16,31 @@ the remaining size available to application windows. \helpref{wxEvtHandler}{wxevthandler}\\ \helpref{wxObject}{wxobject} +\wxheading{Include files} + + + \wxheading{Window styles} \twocolwidtha{5cm} \begin{twocollist}\itemsep=0pt -\twocolitem{\windowstyle{wxICONIZE}}{Display the frame iconized (minimized) (Windows only).} +\twocolitem{\windowstyle{wxICONIZE}}{Display the frame iconized (minimized). Windows only. } \twocolitem{\windowstyle{wxCAPTION}}{Puts a caption on the frame.} \twocolitem{\windowstyle{wxDEFAULT\_FRAME\_STYLE}}{Defined as {\bf wxMINIMIZE\_BOX \pipe wxMAXIMIZE\_BOX \pipe wxTHICK\_FRAME \pipe wxSYSTEM\_MENU \pipe wxCAPTION}.} -\twocolitem{\windowstyle{wxMINIMIZE}}{Identical to {\bf wxICONIZE}.} -\twocolitem{\windowstyle{wxMINIMIZE\_BOX}}{Displays a minimize box on the frame (Windows and Motif only).} -\twocolitem{\windowstyle{wxMAXIMIZE}}{Displays the frame maximized (Windows only).} -\twocolitem{\windowstyle{wxMAXIMIZE\_BOX}}{Displays a maximize box on the frame (Windows and Motif only).} -\twocolitem{\windowstyle{wxSTAY\_ON\_TOP}}{Stay on top of other windows (Windows only).} -\twocolitem{\windowstyle{wxSYSTEM\_MENU}}{Displays a system menu (Windows and Motif only).} -\twocolitem{\windowstyle{wxTHICK\_FRAME}}{Displays a thick frame around the window (Windows and Motif only).} -\twocolitem{\windowstyle{wxRESIZE\_BORDER}}{Displays a resizeable border around the window (Motif only).} +\twocolitem{\windowstyle{wxMINIMIZE}}{Identical to {\bf wxICONIZE}. Windows only. } +\twocolitem{\windowstyle{wxMINIMIZE\_BOX}}{Displays a minimize box on the frame. } +\twocolitem{\windowstyle{wxMAXIMIZE}}{Displays the frame maximized. Windows only. } +\twocolitem{\windowstyle{wxMAXIMIZE\_BOX}}{Displays a maximize box on the frame. } +\twocolitem{\windowstyle{wxSTAY\_ON\_TOP}}{Stay on top of other windows. Windows only. } +\twocolitem{\windowstyle{wxSYSTEM\_MENU}}{Displays a system menu. } +\twocolitem{\windowstyle{wxTHICK\_FRAME}}{Displays a thick frame around the window. Windows and Motif only.} +\twocolitem{\windowstyle{wxSIMPLE\_BORDER}}{Displays no border or decorations. GTK and Windows only (?). } +\twocolitem{\windowstyle{wxRESIZE\_BORDER}}{Displays a resizeable border around the window (Unix only).} +\twocolitem{\windowstyle{wxFRAME\_FLOAT\_ON\_PARENT}}{Causes the frame to be above the parent window in the +z-order and not shown in the taskbar. Without this style, frames are created as top-level windows that may be obscured by +the parent window, and frame titles are shown in the taskbar. Windows only. } +\twocolitem{\windowstyle{wxFRAME\_TOOL\_WINDOW}}{Causes a frame with a small titlebar to be created; +the frame title does not appear in the taskbar. Windows only. } \end{twocollist} See also \helpref{window styles overview}{windowstyles}. @@ -204,6 +216,13 @@ reflect the available space for application windows. \helpref{wxFrame::SetToolBar}{wxframesettoolbar},\rtfsp \helpref{wxFrame::GetToolBar}{wxframegettoolbar} +\membersection{wxFrame::GetClientAreaOrigin}\label{wxframegetclientareaorigin} + +\constfunc{wxPoint}{GetClientAreaOrigin}{\void} + +Returns the origin of the frame client area (in client coordinates). It may be +different from (0, 0) if the frame has a toolbar. + \membersection{wxFrame::GetMenuBar}\label{wxframegetmenubar} \constfunc{wxMenuBar*}{GetMenuBar}{\void} @@ -246,7 +265,7 @@ Returns a pointer to the toolbar currently associated with the frame (if any). \func{void}{Iconize}{\param{const bool}{ iconize}} -Iconizes or restores the frame. +Iconizes or restores the frame. Windows only. \wxheading{Parameters} @@ -260,7 +279,7 @@ Iconizes or restores the frame. \constfunc{bool}{IsIconized}{\void} -Returns TRUE if the frame is iconized. +Returns TRUE if the frame is iconized. Windows only. \membersection{wxFrame::IsMaximized}\label{wxframeismaximized} @@ -268,43 +287,6 @@ Returns TRUE if the frame is iconized. Returns TRUE if the frame is maximized. -\membersection{wxFrame::LoadAccelerators}\label{wxframeloadaccelerators} - -\func{void}{LoadAccelerators}{\param{const wxString\& }{table}} - -Loads a keyboard accelerator table for this frame. - -\wxheading{Parameters} - -\docparam{table}{Accelerator table to load.} - -\wxheading{Return value} - -TRUE if the operation was successful, FALSE otherwise. - -\wxheading{Remarks} - -Accelerator tables map keystrokes onto control and menu identifiers, so the -programmer does not have to explicitly program this correspondence. - -See the hello demo ({\tt hello.cpp} and {\tt hello.rc}) for -an example of accelerator usage. This is a fragment from {\tt hello.rc}: - -\begin{verbatim} -#define HELLO_LOAD_FILE 111 - -menus_accel ACCELERATORS -{ - -"^L", HELLO_LOAD_FILE - -} -\end{verbatim} - -This function only works under Windows. - -% huh? If you call LoadAccelerators, you need to override wxFrame::OnActivate to do nothing. - \membersection{wxFrame::Maximize}\label{wxframemaximize} \func{void}{Maximize}{\param{const bool }{maximize}} @@ -325,21 +307,14 @@ This function only works under Windows. \membersection{wxFrame::OnActivate} -\func{void}{OnActivate}{\param{bool}{ active}} +\func{void}{OnActivate}{\param{wxActivateEvent\&}{ event}} Called when a window is activated or deactivated (MS Windows -only). If the window is being activated, {\it active} is TRUE, else it -is FALSE. - -If you call wxFrame::LoadAccelerators, you need to override this function e.g. - -\begin{verbatim} - void OnActivate(bool) {}; -\end{verbatim} +only). See also \helpref{wxActivateEvent}{wxactivateevent}. \membersection{wxFrame::OnCreateStatusBar}\label{wxframeoncreatestatusbar} -\func{virtual wxStatusBar*}{OnCreateStatusBar}{\param{int }{number} +\func{virtual wxStatusBar*}{OnCreateStatusBar}{\param{int }{number}, \param{long}{ style}, \param{wxWindowID}{ id}, \param{const wxString\&}{ name}} @@ -547,9 +522,12 @@ field must be -1. You should delete this array after calling {\bf SetStatusWidth \wxheading{Remarks} The widths of the variable fields are calculated from the total width of all fields, -minus the sum of widths of the non-variable fields, divided by the number of +minus the sum of widths of the non-variable fields, divided by the number of variable fields. +\pythonnote{Only a single parameter is required, a Python list of +integers.} + \membersection{wxFrame::SetToolBar}\label{wxframesettoolbar} \func{void}{SetToolBar}{\param{wxToolBar*}{ toolBar}} @@ -575,3 +553,22 @@ Sets the frame title. \helpref{wxFrame::GetTitle}{wxframegettitle} +\membersection{wxFrame::ShowFullScreen}\label{wxframeshowfullscreen} + +\func{bool}{ShowFullScreen}{\param{bool}{ show}, \param{long}{ style = wxFULLSCREEN\_ALL}} + +Passing TRUE to {\it shows} shows the frame full-screen, and passing FALSE restores the frame +again. {\it style} is a bit list containing some or all of the following values, which +indicate what elements of the frame to hide in full-screen mode: + +\begin{itemize}\itemsep=0pt +\item wxFULLSCREEN\_NOMENUBAR +\item wxFULLSCREEN\_NOTOOLBAR +\item wxFULLSCREEN\_NOSTATUSBAR +\item wxFULLSCREEN\_NOBORDER +\item wxFULLSCREEN\_NOCAPTION +\item wxFULLSCREEN\_ALL (all of the above) +\end{itemize} + +This function only works on Windows and has not been tested with MDI frames. +