X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a660d684eda27638bca0384b2058911a31c8e845..9018abe3ef28d237b0421c8d96987907adbe5532:/docs/latex/wx/frame.tex diff --git a/docs/latex/wx/frame.tex b/docs/latex/wx/frame.tex index 61cad1ee36..ebe13b0449 100644 --- a/docs/latex/wx/frame.tex +++ b/docs/latex/wx/frame.tex @@ -4,12 +4,20 @@ A frame is a window whose size and position can (usually) be changed by the user 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. + \wxheading{Derived from} \helpref{wxWindow}{wxwindow}\\ \helpref{wxEvtHandler}{wxevthandler}\\ \helpref{wxObject}{wxobject} +\wxheading{Include files} + + + \wxheading{Window styles} \twocolwidtha{5cm} @@ -27,7 +35,11 @@ status bar. A frame can contain any window that is not a frame or dialog. \twocolitem{\windowstyle{wxRESIZE\_BORDER}}{Displays a resizeable border around the window (Motif only).} \end{twocollist} -See also \helpref{window styles overview}{windowstyles}. +See also \helpref{window styles overview}{windowstyles}. Currently the GTK port of wxWindows +ignores all the window styles listed above as there is no standard way (yet) to inform the +window manager about such options. Therefore, the only relevant window style flag which +the GTK port recognizes is \windowstyle{wxSIMPLE\_BORDER} which brings up a frame without +any window decorations. This can be used for a splash screen or specialized tooltip etc. \wxheading{Remarks} @@ -47,7 +59,7 @@ frame to respond to system close events, for example so that related data and su Default constructor. -\func{}{wxFrame}{\param{wxWindow* }{parent}, \param{const wxWindowID }{id},\rtfsp +\func{}{wxFrame}{\param{wxWindow* }{parent}, \param{wxWindowID }{id},\rtfsp \param{const wxString\& }{title}, \param{const wxPoint\&}{ pos = wxDefaultPosition},\rtfsp \param{const wxSize\&}{ size = wxDefaultSize}, \param{long}{ style = wxDEFAULT\_FRAME\_STYLE},\rtfsp \param{const wxString\& }{name = ``frame"}} @@ -92,7 +104,7 @@ Destructor. Destroys all child windows and menu bar if present. \membersection{wxFrame::Centre}\label{wxframecentre} -\func{void}{Centre}{\param{const int}{ direction = wxBOTH}} +\func{void}{Centre}{\param{int}{ direction = wxBOTH}} Centres the frame on the display. @@ -112,7 +124,7 @@ Simulate a menu command. \membersection{wxFrame::Create}\label{wxframecreate} -\func{bool}{Create}{\param{wxWindow* }{parent}, \param{const wxWindowID }{id},\rtfsp +\func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID }{id},\rtfsp \param{const wxString\& }{title}, \param{const wxPoint\&}{ pos = wxDefaultPosition},\rtfsp \param{const wxSize\&}{ size = wxDefaultSize}, \param{long}{ style = wxDEFAULT\_FRAME\_STYLE},\rtfsp \param{const wxString\& }{name = ``frame"}} @@ -122,7 +134,9 @@ for further details. \membersection{wxFrame::CreateStatusBar}\label{wxframecreatestatusbar} -\func{virtual bool}{CreateStatusBar}{\param{const int}{ number = 1}} +\func{virtual wxStatusBar*}{CreateStatusBar}{\param{int}{ number = 1}, + \param{long}{ style = 0}, + \param{wxWindowID}{ id = -1}, \param{const wxString\&}{ name = "statusBar"}} Creates a status bar at the bottom of the frame. @@ -131,9 +145,17 @@ Creates a status bar at the bottom of the frame. \docparam{number}{The number of fields to create. Specify a value greater than 1 to create a multi-field status bar.} +\docparam{style}{The status bar style. See \helpref{wxStatusBar}{wxstatusbar} for a list +of valid styles.} + +\docparam{id}{The status bar window identifier. If -1, an identifier will be chosen by +wxWindows.} + +\docparam{name}{The status bar window name.} + \wxheading{Return value} -TRUE if the status bar was created successfully. +A pointer to the the status bar if it was created successfully, NULL otherwise. \wxheading{Remarks} @@ -151,6 +173,45 @@ Note that you can put controls and other windows on the status bar if you wish. \helpref{wxFrame::OnCreateStatusBar}{wxframeoncreatestatusbar},\rtfsp \helpref{wxFrame::GetStatusBar}{wxframegetstatusbar} +\membersection{wxFrame::CreateToolBar}\label{wxframecreatetoolbar} + +\func{virtual wxToolBar*}{CreateToolBar}{\param{long}{ style = wxNO\_BORDER \pipe wxTB\_HORIZONTAL}, + \param{wxWindowID}{ id = -1}, \param{const wxString\&}{ name = "toolBar"}} + +Creates a toolbar at the top or left of the frame. + +\wxheading{Parameters} + +\docparam{style}{The toolbar style. See \helpref{wxToolBar}{wxtoolbar} for a list +of valid styles.} + +\docparam{id}{The toolbar window identifier. If -1, an identifier will be chosen by +wxWindows.} + +\docparam{name}{The toolbar window name.} + +\wxheading{Return value} + +A pointer to the the toolbar if it was created successfully, NULL otherwise. + +\wxheading{Remarks} + +By default, the toolbar is an instance of wxToolBar (which is defined to be +a suitable toolbar class on each platform, such as wxToolBar95). To use a different class, +override \helpref{wxFrame::OnCreateToolBar}{wxframeoncreatetoolbar}. + +When a toolbar has been created with this function, or made known to the frame +with \helpref{wxFrame::SetToolBar}{wxframesettoolbar}, the frame will manage the toolbar +position and adjust the return value from \helpref{wxWindow::GetClientSize}{wxwindowgetclientsize} to +reflect the available space for application windows. + +\wxheading{See also} + +\helpref{wxFrame::CreateStatusBar}{wxframecreatestatusbar},\rtfsp +\helpref{wxFrame::OnCreateToolBar}{wxframeoncreatetoolbar},\rtfsp +\helpref{wxFrame::SetToolBar}{wxframesettoolbar},\rtfsp +\helpref{wxFrame::GetToolBar}{wxframegettoolbar} + \membersection{wxFrame::GetMenuBar}\label{wxframegetmenubar} \constfunc{wxMenuBar*}{GetMenuBar}{\void} @@ -178,6 +239,17 @@ Returns a pointer to the status bar currently associated with the frame (if any) Gets a temporary pointer to the frame title. See \helpref{wxFrame::SetTitle}{wxframesettitle}. +\membersection{wxFrame::GetToolBar}\label{wxframegettoolbar} + +\func{wxToolBar*}{GetToolBar}{\void} + +Returns a pointer to the toolbar currently associated with the frame (if any). + +\wxheading{See also} + +\helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}, \helpref{wxToolBar}{wxtoolbar},\rtfsp +\helpref{wxFrame::SetToolBar}{wxframesettoolbar} + \membersection{wxFrame::Iconize}\label{wxframeiconize} \func{void}{Iconize}{\param{const bool}{ iconize}} @@ -194,46 +266,15 @@ Iconizes or restores the frame. \membersection{wxFrame::IsIconized}\label{wxframeisiconized} -\func{bool}{IsIconized}{\void} +\constfunc{bool}{IsIconized}{\void} Returns TRUE if the frame is iconized. -\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 +\membersection{wxFrame::IsMaximized}\label{wxframeismaximized} -} -\end{verbatim} - -This function only works under Windows. +\constfunc{bool}{IsMaximized}{\void} -% huh? If you call LoadAccelerators, you need to override wxFrame::OnActivate to do nothing. +Returns TRUE if the frame is maximized. \membersection{wxFrame::Maximize}\label{wxframemaximize} @@ -255,21 +296,16 @@ 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{const int }{number}} +\func{virtual wxStatusBar*}{OnCreateStatusBar}{\param{int }{number}, + \param{long}{ style}, + \param{wxWindowID}{ id}, \param{const wxString\&}{ name}} Virtual function called when a status bar is requested by \helpref{wxFrame::CreateStatusBar}{wxframecreatestatusbar}. @@ -277,6 +313,14 @@ Virtual function called when a status bar is requested by \helpref{wxFrame::Crea \docparam{number}{The number of fields to create.} +\docparam{style}{The window style. See \helpref{wxStatusBar}{wxstatusbar} for a list +of valid styles.} + +\docparam{id}{The window identifier. If -1, an identifier will be chosen by +wxWindows.} + +\docparam{name}{The window name.} + \wxheading{Return value} A status bar object. @@ -290,6 +334,36 @@ implementation returns an instance of \helpref{wxStatusBar}{wxstatusbar}. \helpref{wxFrame::CreateStatusBar}{wxframecreatestatusbar}, \helpref{wxStatusBar}{wxstatusbar}. +\membersection{wxFrame::OnCreateToolBar}\label{wxframeoncreatetoolbar} + +\func{virtual wxToolBar*}{OnCreateToolBar}{\param{long}{ style}, + \param{wxWindowID}{ id}, \param{const wxString\&}{ name}} + +Virtual function called when a toolbar is requested by \helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}. + +\wxheading{Parameters} + +\docparam{style}{The toolbar style. See \helpref{wxToolBar}{wxtoolbar} for a list +of valid styles.} + +\docparam{id}{The toolbar window identifier. If -1, an identifier will be chosen by +wxWindows.} + +\docparam{name}{The toolbar window name.} + +\wxheading{Return value} + +A toolbar object. + +\wxheading{Remarks} + +An application can override this function to return a different kind of toolbar. The default +implementation returns an instance of \helpref{wxToolBar}{wxtoolbar}. + +\wxheading{See also} + +\helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}, \helpref{wxToolBar}{wxtoolbar}. + \membersection{wxFrame::OnMenuCommand}\label{wxframeonmenucommand} \func{void}{OnMenuCommand}{\param{wxCommandEvent\&}{ event}} @@ -388,9 +462,20 @@ Note that it is not possible to call this function twice for the same frame obje \helpref{wxFrame::GetMenuBar}{wxframegetmenubar}, \helpref{wxMenuBar}{wxmenubar}, \helpref{wxMenu}{wxmenu}. +\membersection{wxFrame::SetStatusBar}\label{wxframesetstatusbar} + +\func{void}{SetStatusBar}{\param{wxStatusBar*}{ statusBar}} + +Associates a status bar with the frame. + +\wxheading{See also} + +\helpref{wxFrame::CreateStatusBar}{wxframecreatestatusbar}, \helpref{wxStatusBar}{wxstatusbar},\rtfsp +\helpref{wxFrame::GetStatusBar}{wxframegetstatusbar} + \membersection{wxFrame::SetStatusText}\label{wxframesetstatustext} -\func{virtual void}{SetStatusText}{\param{const wxString\& }{ text}, \param{const int}{ number = 0}} +\func{virtual void}{SetStatusText}{\param{const wxString\& }{ text}, \param{int}{ number = 0}} Sets the status bar text and redraws the status bar. @@ -410,7 +495,7 @@ Use an empty string to clear the status bar. \membersection{wxFrame::SetStatusWidths}\label{wxframesetstatuswidths} -\func{virtual void}{SetStatusWidths}{\param{const int}{ n}, \param{const int *}{widths}} +\func{virtual void}{SetStatusWidths}{\param{int}{ n}, \param{int *}{widths}} Sets the widths of the fields in the status bar. @@ -429,6 +514,17 @@ The widths of the variable fields are calculated from the total width of all fie minus the sum of widths of the non-variable fields, divided by the number of variable fields. +\membersection{wxFrame::SetToolBar}\label{wxframesettoolbar} + +\func{void}{SetToolBar}{\param{wxToolBar*}{ toolBar}} + +Associates a toolbar with the frame. + +\wxheading{See also} + +\helpref{wxFrame::CreateToolBar}{wxframecreatetoolbar}, \helpref{wxToolBar}{wxtoolbar},\rtfsp +\helpref{wxFrame::GetToolBar}{wxframegettoolbar} + \membersection{wxFrame::SetTitle}\label{wxframesettitle} \func{virtual void}{SetTitle}{\param{const wxString\& }{ title}}