X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/b14cca2a84340b5411accff8fc440fbf3cc9b723..7344108e8a129a3f9b4df5ab0f98a1713db03b89:/interface/wx/dialog.h diff --git a/interface/wx/dialog.h b/interface/wx/dialog.h index 69a58d43a8..736b97488d 100644 --- a/interface/wx/dialog.h +++ b/interface/wx/dialog.h @@ -16,6 +16,8 @@ enum wxDialogLayoutAdaptationMode wxDIALOG_ADAPTATION_MODE_DISABLED = 2 ///< Disable this dialog overriding global status. }; +#define wxDEFAULT_DIALOG_STYLE (wxCAPTION | wxSYSTEM_MENU | wxCLOSE_BOX) + /** @class wxDialog @@ -88,7 +90,7 @@ enum wxDialogLayoutAdaptationMode Equivalent to a combination of wxCAPTION, wxCLOSE_BOX and wxSYSTEM_MENU (the last one is not used under Unix). @style{wxRESIZE_BORDER} - Display a resizeable frame around the window. + Display a resizable frame around the window. @style{wxSYSTEM_MENU} Display a system menu. @style{wxCLOSE_BOX} @@ -102,8 +104,8 @@ enum wxDialogLayoutAdaptationMode @style{wxSTAY_ON_TOP} The dialog stays on top of all other windows. @style{wxNO_3D} - Under Windows, specifies that the child controls should not have 3D - borders unless specified in the control. + This style is obsolete and doesn't do anything any more, don't use + it in any new code. @style{wxDIALOG_NO_PARENT} By default, a dialog created with a @NULL parent window will be given the @ref wxApp::GetTopWindow() "application's top level window" @@ -112,7 +114,7 @@ enum wxDialogLayoutAdaptationMode @style{wxDIALOG_EX_CONTEXTHELP} Under Windows, puts a query button on the caption. When pressed, Windows will go into a context-sensitive help mode and wxWidgets - will send a wxEVT_HELP event if the user clicked on an application + will send a @c wxEVT_HELP event if the user clicked on an application window. Note that this is an extended style and must be set by calling SetExtraStyle() before Create is called (two-step construction). @@ -281,6 +283,12 @@ public: */ wxStdDialogButtonSizer* CreateStdDialogButtonSizer(long flags); + /** + Splits text up at newlines and places the lines into wxStaticText + objects in a vertical wxBoxSizer. + */ + wxSizer *CreateTextSizer( const wxString& message ); + /** Performs layout adaptation, usually if the dialog is too large to fit on the display. @@ -451,28 +459,11 @@ public: */ virtual bool IsModal() const; - /** - The default handler for wxEVT_SYS_COLOUR_CHANGED. - - @param event - The colour change event. - - @remarks Changes the dialog's colour to conform to the current settings - (Windows only). Add an event table entry for your dialog class - if you wish the behaviour to be different (such as keeping a - user-defined background colour). If you do override this - function, call wxEvent::Skip() to propagate the notification - to child windows and controls. - - @see wxSysColourChangedEvent - */ - void OnSysColourChanged(wxSysColourChangedEvent& event); - /** 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 @@ -594,7 +585,7 @@ public: virtual bool Show(bool show = 1); /** - Shows a modal dialog. + Shows an application-modal dialog. Program flow does not return until the dialog has been dismissed with EndModal(). @@ -611,9 +602,26 @@ public: @return The value set with SetReturnCode(). - @see EndModal(), GetReturnCode(), SetReturnCode() + @see ShowWindowModal(), EndModal(), GetReturnCode(), SetReturnCode() */ virtual int ShowModal(); + + /** + Shows a dialog modal to the parent top level window only. + + Unlike ShowModal(), dialogs shown with this function only prevent the + user from interacting with their parent frame only but not with the + rest of the application. They also don't block the program execution + but instead return immediately, as Show(), and generate a + wxEVT_WINDOW_MODAL_DIALOG_CLOSED event later when the dialog is closed. + + Currently this function is only fully implemented in wxOSX ports, under + the other platforms it behaves like ShowModal() (but also sends the + above mentioned event). + + @since 2.9.0 + */ + void ShowWindowModal(); }; @@ -621,7 +629,7 @@ public: /** @class wxDialogLayoutAdapter - This abstract class is the base for classes that help wxWidgets peform + This abstract class is the base for classes that help wxWidgets perform run-time layout adaptation of dialogs. Principally, this is to cater for small displays by making part of the dialog scroll, but the application developer may find other uses for layout adaption. @@ -656,3 +664,13 @@ public: virtual bool DoLayoutAdaptation(wxDialog* dialog) = 0; }; + +class wxWindowModalDialogEvent : public wxCommandEvent +{ +public: + wxWindowModalDialogEvent (wxEventType commandType = wxEVT_NULL, int id = 0); + + wxDialog *GetDialog() const; + int GetReturnCode() const; + virtual wxEvent *Clone() const; +};