X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/684e5b95a6c8157d7e1ba29d9140b23e377ae581..fc17828ab2cb3dc5dd22d5634ce4f6764e1373fc:/docs/latex/wx/dialog.tex?ds=sidebyside diff --git a/docs/latex/wx/dialog.tex b/docs/latex/wx/dialog.tex index 19389b7a5c..78ac30db30 100644 --- a/docs/latex/wx/dialog.tex +++ b/docs/latex/wx/dialog.tex @@ -13,7 +13,25 @@ A dialog box is a window with a title bar and sometimes a system menu, which can be moved around the screen. It can contain controls and other windows and -is usually used to allow the user to make some choice or to answer a question. +is often used to allow the user to make some choice or to answer a question. + + +\wxheading{Dialog Buttons} + +The dialog usually contains either a single button allowing to close the +dialog or two buttons, one accepting the changes and the other one discarding +them (such button, if present, is automatically activated if the user presses +the \texttt{"Esc"} key). By default, buttons with the standard \texttt{wxID\_OK} +and \texttt{wxID\_CANCEL} identifiers behave as expected. Starting with +wxWidgets 2.7 it is also possible to use a button with a different identifier +instead, see \helpref{SetAffirmativeId}{wxdialogsetaffirmativeid} and +\helpref{SetEscapeId}{wxdialogsetescapeid}. + +Also notice that the \helpref{CreateButtonSizer()}{wxdialogcreatebuttonsizer} +should be used to create the buttons appropriate for the current platform and +positioned correctly (including their order which is platform-dependent). + + \wxheading{Derived from} @@ -26,7 +44,7 @@ is usually used to allow the user to make some choice or to answer a question. -\wxheading{Remarks} +\wxheading{Modal and modeless dialogs} There are two kinds of dialog -- {\it modal}\ and {\it modeless}. A modal dialog blocks program flow and user input on other windows until it is dismissed, @@ -185,11 +203,28 @@ for details. \func{wxSizer*}{CreateButtonSizer}{\param{long}{ flags}} Creates a sizer with standard buttons. {\it flags} is a bit list -of the following flags: wxOK, wxCANCEL, wxYES, wxNO, wxHELP, wxNO\_DEFAULT. +of the following flags: wxOK, wxCANCEL, wxYES, wxNO, wxAPPLY, wxCLOSE, +wxHELP, wxNO\_DEFAULT. The sizer lays out the buttons in a manner appropriate to the platform. -This function simply calls \helpref{CreateStdDialogButtonSizer}{wxdialogcreatestddialogbuttonsizer}. +This function uses \helpref{CreateStdDialogButtonSizer}{wxdialogcreatestddialogbuttonsizer} +internally for most platforms but doesn't create the sizer at all for the +platforms with hardware buttons (such as smartphones) for which it sets up the +hardware buttons appropriately and returns \NULL, so don't forget to test that +the return value is valid before using it. + + +\membersection{wxDialog::CreateSeparatedButtonSizer}\label{wxdialogcreateseparatedbuttonsizer} + +\func{wxSizer*}{CreateSeparatedButtonSizer}{\param{long}{ flags}} + +Creates a sizer with standard buttons using +\helpref{CreateButtonSizer}{wxdialogcreatebuttonsizer} separated from the rest +of the dialog contents by a horizontal \helpref{wxStaticLine}{wxstaticline}. + +Please notice that just like CreateButtonSizer() this function may return \NULL +if no buttons were created. \membersection{wxDialog::CreateStdDialogButtonSizer}\label{wxdialogcreatestddialogbuttonsizer} @@ -197,7 +232,8 @@ This function simply calls \helpref{CreateStdDialogButtonSizer}{wxdialogcreatest \func{wxStdDialogButtonSizer*}{CreateStdDialogButtonSizer}{\param{long}{ flags}} Creates a \helpref{wxStdDialogButtonSizer}{wxstddialogbuttonsizer} with standard buttons. {\it flags} is a bit list -of the following flags: wxOK, wxCANCEL, wxYES, wxNO, wxHELP, wxNO\_DEFAULT. +of the following flags: wxOK, wxCANCEL, wxYES, wxNO, wxAPPLY, wxCLOSE, +wxHELP, wxNO\_DEFAULT. The sizer lays out the buttons in a manner appropriate to the platform. @@ -319,54 +355,6 @@ Always returns false under Windows since dialogs cannot be iconized. Returns true if the dialog box is modal, false otherwise. -\membersection{wxDialog::OnApply}\label{wxdialogonapply} - -\func{void}{OnApply}{\param{wxCommandEvent\& }{event}} - -The default handler for the wxID\_APPLY identifier. - -\wxheading{Remarks} - -This function calls \helpref{wxWindow::Validate}{wxwindowvalidate} and \helpref{wxWindow::TransferDataFromWindow}{wxwindowtransferdatafromwindow}. - -\wxheading{See also} - -\helpref{wxDialog::OnOK}{wxdialogonok}, \helpref{wxDialog::OnCancel}{wxdialogoncancel} - - -\membersection{wxDialog::OnCancel}\label{wxdialogoncancel} - -\func{void}{OnCancel}{\param{wxCommandEvent\& }{event}} - -The default handler for the wxID\_CANCEL identifier. - -\wxheading{Remarks} - -The function either calls {\bf EndModal(wxID\_CANCEL)} if the dialog is modal, or -sets the return value to wxID\_CANCEL and calls {\bf Show(false)} if the dialog is modeless. - -\wxheading{See also} - -\helpref{wxDialog::OnOK}{wxdialogonok}, \helpref{wxDialog::OnApply}{wxdialogonapply} - - -\membersection{wxDialog::OnOK}\label{wxdialogonok} - -\func{void}{OnOK}{\param{wxCommandEvent\& }{event}} - -The default handler for the wxID\_OK identifier. - -\wxheading{Remarks} - -The function calls -\rtfsp\helpref{wxWindow::Validate}{wxwindowvalidate}, then \helpref{wxWindow::TransferDataFromWindow}{wxwindowtransferdatafromwindow}. -If this returns true, the function either calls {\bf EndModal(wxID\_OK)} if the dialog is modal, or -sets the return value to wxID\_OK and calls {\bf Show(false)} if the dialog is modeless. - -\wxheading{See also} - -\helpref{wxDialog::OnCancel}{wxdialogoncancel}, \helpref{wxDialog::OnApply}{wxdialogonapply} - \membersection{wxDialog::OnSysColourChanged}\label{wxdialogonsyscolourchanged} @@ -525,3 +513,4 @@ The return value is the value set with \helpref{wxDialog::SetReturnCode}{wxdialo \helpref{wxDialog::EndModal}{wxdialogendmodal},\rtfsp \helpref{wxDialog:GetReturnCode}{wxdialoggetreturncode},\rtfsp \helpref{wxDialog::SetReturnCode}{wxdialogsetreturncode} +