X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/dbc7ceb9250bcc2f856f87555f8f4273da31c148..e4431849b4f2097edf0e01c5d50bf0ed947befa9:/include/wx/toplevel.h diff --git a/include/wx/toplevel.h b/include/wx/toplevel.h index 93490abc3c..8fcb9830d9 100644 --- a/include/wx/toplevel.h +++ b/include/wx/toplevel.h @@ -32,6 +32,39 @@ class WXDLLIMPEXP_FWD_CORE wxTopLevelWindowBase; // constants // ---------------------------------------------------------------------------- +/* + Summary of the bits used (some of them are defined in wx/frame.g and + wx/dialog.h and not here): + + +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ + |15|14|13|12|11|10| 9| 8| 7| 6| 5| 4| 3| 2| 1| 0| + +--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+--+ + | | | | | | | | | | | | | | | | + | | | | | | | | | | | | | | | \_ wxCENTRE + | | | | | | | | | | | | | | \____ wxFRAME_NO_TASKBAR + | | | | | | | | | | | | | \_______ wxFRAME_TOOL_WINDOW + | | | | | | | | | | | | \__________ wxFRAME_FLOAT_ON_PARENT + | | | | | | | | | | | \_____________ wxFRAME_SHAPED + | | | | | | | | | | \________________ + | | | | | | | | | \___________________ wxRESIZE_BORDER + | | | | | | | | \______________________ wxTINY_CAPTION_VERT + | | | | | | | \_________________________ wxDIALOG_NO_PARENT + | | | | | | \____________________________ wxMAXIMIZE_BOX + | | | | | \_______________________________ wxMINIMIZE_BOX + | | | | \__________________________________ wxSYSTEM_MENU + | | | \_____________________________________ wxCLOSE_BOX + | | \________________________________________ wxMAXIMIZE + | \___________________________________________ wxMINIMIZE + \______________________________________________ wxSTAY_ON_TOP + + + Notice that the 8 lower bits overlap with wxCENTRE and the button selection + bits (wxYES, wxOK wxNO, wxCANCEL, wxAPPLY, wxCLOSE and wxNO_DEFAULT) which + can be combined with the dialog style for several standard dialogs and + hence shouldn't overlap with any styles which can be used for the dialogs. + Additionally, wxCENTRE can be used with frames also. + */ + // style common to both wxFrame and wxDialog #define wxSTAY_ON_TOP 0x8000 #define wxICONIZE 0x4000 @@ -42,10 +75,17 @@ class WXDLLIMPEXP_FWD_CORE wxTopLevelWindowBase; #define wxSYSTEM_MENU 0x0800 #define wxMINIMIZE_BOX 0x0400 #define wxMAXIMIZE_BOX 0x0200 -#define wxTINY_CAPTION_HORIZ 0x0100 -#define wxTINY_CAPTION_VERT 0x0080 + +#define wxTINY_CAPTION 0x0080 // clashes with wxNO_DEFAULT #define wxRESIZE_BORDER 0x0040 +#if WXWIN_COMPATIBILITY_2_8 + // HORIZ and VERT styles are equivalent anyhow so don't use different names + // for them + #define wxTINY_CAPTION_HORIZ wxTINY_CAPTION + #define wxTINY_CAPTION_VERT wxTINY_CAPTION +#endif + #if WXWIN_COMPATIBILITY_2_6 // deprecated versions defined for compatibility reasons @@ -256,6 +296,9 @@ public: // a different API for SetSizeHints virtual void SetMinSize(const wxSize& minSize); virtual void SetMaxSize(const wxSize& maxSize); + + virtual void OSXSetModified(bool modified) { m_modified = modified; } + virtual bool OSXIsModified() const { return m_modified; } protected: // the frame client to screen translation should take account of the @@ -304,6 +347,8 @@ protected: // a temporary override of m_winDefault, use the latter if NULL wxWindowRef m_winTmpDefault; + + bool m_modified; wxDECLARE_NO_COPY_CLASS(wxTopLevelWindowBase); DECLARE_EVENT_TABLE()