// Purpose: interface of wxDialog
// Author: wxWidgets team
// RCS-ID: $Id$
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
/**
managers recognizing the MHM hints should be running for any of these
styles to have an effect.
+
+ @beginEventEmissionTable{wxCloseEvent}
+ @event{EVT_CLOSE(func)}
+ The dialog is being closed by the user or programmatically (see wxWindow::Close).
+ The user may generate this event clicking the close button
+ (typically the 'X' on the top-right of the title bar) if it's present
+ (see the @c wxCLOSE_BOX style) or by clicking a button with the
+ @c wxID_CANCEL or @c wxID_OK ids.
+ @event{EVT_INIT_DIALOG(func)}
+ Process a @c wxEVT_INIT_DIALOG event. See wxInitDialogEvent.
+ @endEventTable
+
@library{wxcore}
@category{cmndlg}
const wxString& name = wxDialogNameStr);
/**
- Destructor. Deletes any child windows before deleting the physical
- window.
+ Destructor.
+
+ Deletes any child windows before deleting the physical window.
+
+ See @ref overview_windowdeletion for more info.
*/
virtual ~wxDialog();
@note Just like CreateButtonSizer(), this function may return @NULL if
no buttons were created.
+
+ This is a combination of CreateButtonSizer() and
+ CreateSeparatedSizer().
*/
wxSizer* CreateSeparatedButtonSizer(long flags);
+ /**
+ Returns the sizer containing the given one with a separating
+ wxStaticLine if necessarily.
+
+ This function is useful for creating the sizer containing footer-like
+ contents in dialog boxes. It will add a separating static line only if
+ it conforms to the current platform convention (currently it is not
+ added under Mac where the use of static lines for grouping is
+ discouraged and is added elsewhere).
+
+ @since 2.9.2
+
+ @param sizer The sizer to wrap, must be non-@NULL.
+ @return The sizer wrapping the input one or possibly the input sizer
+ itself if no wrapping is necessary.
+ */
+ wxSizer *CreateSeparatedSizer(wxSizer *sizer);
+
/**
Creates a wxStdDialogButtonSizer with standard buttons. @a flags is a
bit list of the following flags: wxOK, wxCANCEL, wxYES, wxNO, wxAPPLY,
Sets the identifier to be used as OK button. When the button with this
identifier is pressed, the dialog calls wxWindow::Validate() and
wxWindow::TransferDataFromWindow() and, if they both return @true,
- closes the dialog with wxID_OK return code.
+ closes the dialog with the affirmative id return code.
Also, when the user presses a hardware OK button on the devices having
one or the special OK button in the PocketPC title bar, an event with
modeless dialog modal. However ShowModal() can't be called twice
without intervening EndModal() calls.
+ Note that this function creates a temporary event loop which takes
+ precedence over the application's main event loop (see wxEventLoopBase)
+ and which is destroyed when the dialog is dismissed.
+ This also results in a call to wxApp::ProcessPendingEvents().
+
@return The value set with SetReturnCode().
@see EndModal(), GetReturnCode(), SetReturnCode()