X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0cc1d4ff2a0c78666f35bbfa34fcc609d7862709..b7972e1fa8a66f67262edff466416f6a5bedc48c:/include/wx/dialog.h diff --git a/include/wx/dialog.h b/include/wx/dialog.h index 319e891aec..8d054b7fa1 100644 --- a/include/wx/dialog.h +++ b/include/wx/dialog.h @@ -12,7 +12,7 @@ #ifndef _WX_DIALOG_H_BASE_ #define _WX_DIALOG_H_BASE_ -#if defined(__GNUG__) && !defined(__APPLE__) +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface "dialogbase.h" #endif @@ -20,7 +20,18 @@ #include "wx/containr.h" #include "wx/toplevel.h" -WXDLLEXPORT_DATA(extern const wxChar*) wxDialogNameStr; +class WXDLLEXPORT wxSizer; +class WXDLLEXPORT wxStdDialogButtonSizer; + +#define wxDIALOG_NO_PARENT 0x0001 // Don't make owned by apps top window + +#ifdef __WXWINCE__ +#define wxDEFAULT_DIALOG_STYLE (wxCAPTION | wxMAXIMIZE | wxCLOSE_BOX | wxNO_BORDER) +#else +#define wxDEFAULT_DIALOG_STYLE (wxCAPTION | wxSYSTEM_MENU | wxCLOSE_BOX) +#endif + +extern WXDLLEXPORT_DATA(const wxChar*) wxDialogNameStr; class WXDLLEXPORT wxDialogBase : public wxTopLevelWindow { @@ -30,26 +41,48 @@ public: void Init(); - // the modal dialogs have a return code - usually the id of the last + // Modal dialogs have a return code - usually the id of the last // pressed button void SetReturnCode(int returnCode) { m_returnCode = returnCode; } int GetReturnCode() const { return m_returnCode; } -#if wxUSE_STATTEXT && wxUSE_TEXTCTRL + // The identifier for the affirmative button + void SetAffirmativeId(int affirmativeId) { m_affirmativeId = affirmativeId; } + int GetAffirmativeId() const { return m_affirmativeId; } + + // Identifier for Esc key translation +#if wxCHECK_VERSION(2, 7, 0) + #error "Uncomment SetEscapeId() implementation" + + // this is what we should do in 2.7: remove the "#else" part and add + // m_escapeId declaration and the docs for Set/GetEscapeId() + void SetEscapeId(int escapeId) { m_escapeId = escapeId; } + int GetEscapeId() const { return m_escapeId; } +#elif wxABI_VERSION > 20601 + // just a stub for 2.6 + int GetEscapeId() const { return wxID_ANY; } +#endif + +#if wxUSE_STATTEXT // && wxUSE_TEXTCTRL // splits text up at newlines and places the // lines into a vertical wxBoxSizer wxSizer *CreateTextSizer( const wxString &message ); -#endif // wxUSE_STATTEXT && wxUSE_TEXTCTRL +#endif // wxUSE_STATTEXT // && wxUSE_TEXTCTRL #if wxUSE_BUTTON // places buttons into a horizontal wxBoxSizer wxSizer *CreateButtonSizer( long flags ); + wxStdDialogButtonSizer *CreateStdDialogButtonSizer( long flags ); #endif // wxUSE_BUTTON protected: - // the return code from modal dialog + // The return code from modal dialog int m_returnCode; + // The identifier for the affirmative button (usually wxID_OK) + int m_affirmativeId; + + DECLARE_NO_COPY_CLASS(wxDialogBase) DECLARE_EVENT_TABLE() WX_DECLARE_CONTROL_CONTAINER(); }; @@ -58,7 +91,9 @@ protected: #if defined(__WXUNIVERSAL__) && !defined(__WXMICROWIN__) #include "wx/univ/dialog.h" #else - #if defined(__WXMSW__) + #if defined(__WXPALMOS__) + #include "wx/palmos/dialog.h" + #elif defined(__WXMSW__) #include "wx/msw/dialog.h" #elif defined(__WXMOTIF__) #include "wx/motif/dialog.h"