X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/dd9f7fea29e3f8bb61861f52984b7943512346ac..da397248d3293b4336ec900e1eeac3d75a62c631:/wxPython/src/_toplvl.i diff --git a/wxPython/src/_toplvl.i b/wxPython/src/_toplvl.i index 5ca8ae9b09..d615218244 100644 --- a/wxPython/src/_toplvl.i +++ b/wxPython/src/_toplvl.i @@ -15,17 +15,48 @@ //--------------------------------------------------------------------------- -%{ - // Put some wx default wxChar* values into wxStrings. - DECLARE_DEF_STRING(FrameNameStr); - DECLARE_DEF_STRING(DialogNameStr); - DECLARE_DEF_STRING(StatusLineNameStr); - DECLARE_DEF_STRING(ToolBarNameStr); -%} +MAKE_CONST_WXSTRING(FrameNameStr); +MAKE_CONST_WXSTRING(DialogNameStr); +MAKE_CONST_WXSTRING(StatusLineNameStr); +MAKE_CONST_WXSTRING(ToolBarNameStr); //--------------------------------------------------------------------------- %newgroup +enum +{ + wxSTAY_ON_TOP, + wxICONIZE, + wxMINIMIZE, + wxMAXIMIZE, + wxCLOSE_BOX, + wxTHICK_FRAME, + wxSYSTEM_MENU, + wxMINIMIZE_BOX, + wxMAXIMIZE_BOX, + wxTINY_CAPTION_HORIZ, + wxTINY_CAPTION_VERT, + wxRESIZE_BOX, + wxRESIZE_BORDER, + + wxDIALOG_NO_PARENT, + + wxDEFAULT_FRAME_STYLE, + wxDEFAULT_DIALOG_STYLE, + + wxFRAME_TOOL_WINDOW, + wxFRAME_FLOAT_ON_PARENT, + wxFRAME_NO_WINDOW_MENU, + wxFRAME_NO_TASKBAR, + wxFRAME_SHAPED, + + // Obsolete + wxDIALOG_MODAL, + wxDIALOG_MODELESS, + wxUSER_COLOURS, + wxNO_3D, +}; + enum { wxFULLSCREEN_NOMENUBAR, @@ -97,6 +128,10 @@ public: // is successful.) virtual bool SetShape(const wxRegion& region); +#ifdef __WXMAC__ + void MacSetMetalAppearance( bool on ) ; + bool MacGetMetalAppearance() const ; +#endif }; @@ -110,19 +145,23 @@ public: // is accounted for in client size calculations - all others should be taken // care of manually. +MustHaveApp(wxFrame); + class wxFrame : public wxTopLevelWindow { public: - %addtofunc wxFrame "self._setOORInfo(self)" - %addtofunc wxFrame() "" + %pythonAppend wxFrame "self._setOORInfo(self)" + %pythonAppend wxFrame() "" - wxFrame(wxWindow* parent, const wxWindowID id, const wxString& title, + wxFrame(wxWindow* parent, const wxWindowID id=-1, + const wxString& title = wxPyEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, const wxString& name = wxPyFrameNameStr); %name(PreFrame)wxFrame(); - bool Create(wxWindow* parent, const wxWindowID id, const wxString& title, + bool Create(wxWindow* parent, const wxWindowID id=-1, + const wxString& title = wxPyEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, @@ -159,7 +198,7 @@ public: // create the main status bar by calling OnCreateStatusBar() virtual wxStatusBar* CreateStatusBar(int number = 1, - long style = wxST_SIZEGRIP, + long style = wxDEFAULT_STATUSBAR_STYLE, wxWindowID winid = 0, const wxString& name = wxPyStatusLineNameStr); // TODO: with directors? @@ -212,19 +251,24 @@ public: // send wxUpdateUIEvents for all menu items in the menubar, // or just for menu if non-NULL void DoMenuUpdates(wxMenu* menu = NULL); + + static wxVisualAttributes + GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); }; //--------------------------------------------------------------------------- %newgroup +MustHaveApp(wxDialog); + class wxDialog : public wxTopLevelWindow { public: - %addtofunc wxDialog "self._setOORInfo(self)" - %addtofunc wxDialog() "" + %pythonAppend wxDialog "self._setOORInfo(self)" + %pythonAppend wxDialog() "" wxDialog(wxWindow* parent, - const wxWindowID id, - const wxString& title, + const wxWindowID id=-1, + const wxString& title = wxPyEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, @@ -232,8 +276,8 @@ public: %name(PreDialog)wxDialog(); bool Create(wxWindow* parent, - const wxWindowID id, - const wxString& title, + const wxWindowID id=-1, + const wxString& title = wxPyEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, @@ -253,7 +297,9 @@ public: wxSizer *CreateButtonSizer( long flags ); - void SetModal(bool flag); + //void SetModal(bool flag); + + // is the dialog in modal state right now? virtual bool IsModal() const; // Shows the dialog and starts a nested event loop that returns when @@ -263,35 +309,31 @@ public: // may be called to terminate the dialog with the given return code virtual void EndModal(int retCode); - // returns True if we're in a modal loop - %extend { - bool IsModalShowing() { - #ifdef __WXGTK__ - return self->m_modalShowing; - #else - return self->IsModalShowing(); - #endif - } - } + static wxVisualAttributes + GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); }; //--------------------------------------------------------------------------- %newgroup +MustHaveApp(wxMiniFrame); + class wxMiniFrame : public wxFrame { public: - %addtofunc wxMiniFrame "self._setOORInfo(self)" - %addtofunc wxMiniFrame() "" + %pythonAppend wxMiniFrame "self._setOORInfo(self)" + %pythonAppend wxMiniFrame() "" - wxMiniFrame(wxWindow* parent, const wxWindowID id, const wxString& title, + wxMiniFrame(wxWindow* parent, const wxWindowID id=-1, + const wxString& title = wxPyEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, const wxString& name = wxPyFrameNameStr); %name(PreMiniFrame)wxMiniFrame(); - bool Create(wxWindow* parent, const wxWindowID id, const wxString& title, + bool Create(wxWindow* parent, const wxWindowID id=-1, + const wxString& title = wxPyEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, @@ -313,10 +355,12 @@ enum { }; +MustHaveApp(wxSplashScreenWindow); + class wxSplashScreenWindow: public wxWindow { public: - %addtofunc wxSplashScreenWindow "self._setOORInfo(self)" + %pythonAppend wxSplashScreenWindow "self._setOORInfo(self)" wxSplashScreenWindow(const wxBitmap& bitmap, wxWindow* parent, wxWindowID id, @@ -329,12 +373,14 @@ public: }; +MustHaveApp(wxSplashScreen); + class wxSplashScreen : public wxFrame { public: - %addtofunc wxSplashScreen "self._setOORInfo(self)" + %pythonAppend wxSplashScreen "self._setOORInfo(self)" wxSplashScreen(const wxBitmap& bitmap, long splashStyle, int milliseconds, - wxWindow* parent, wxWindowID id, + wxWindow* parent, wxWindowID id=-1, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxSIMPLE_BORDER|wxFRAME_NO_TASKBAR|wxSTAY_ON_TOP);