X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/17c0e08c61c69b77e58b3e9ffc78d58fcf105940..71aba8333cc915afff9e740c944f7fa7247abacb:/wxPython/src/frames.i diff --git a/wxPython/src/frames.i b/wxPython/src/frames.i index b100fc2501..ea407d7766 100644 --- a/wxPython/src/frames.i +++ b/wxPython/src/frames.i @@ -16,7 +16,7 @@ %{ #include "helpers.h" #include -#include +#include %} //---------------------------------------------------------------------- @@ -35,6 +35,16 @@ //---------------------------------------------------------------------- +%{ + // Put some wx default wxChar* values into wxStrings. + DECLARE_DEF_STRING(FrameNameStr); + DECLARE_DEF_STRING(DialogNameStr); + DECLARE_DEF_STRING(StatusLineNameStr); + DECLARE_DEF_STRING(ToolBarNameStr); +%} + +//---------------------------------------------------------------------- + enum { wxFULLSCREEN_NOMENUBAR, wxFULLSCREEN_NOTOOLBAR, @@ -60,7 +70,7 @@ public: const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, - const char* name = "frame"); + const wxString& name = wxPyFrameNameStr); %name(wxPreTopLevelWindow)wxTopLevelWindow(); bool Create(wxWindow *parent, @@ -69,7 +79,7 @@ public: const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, - const char* name = "frame"); + const wxString& name = wxPyFrameNameStr); %pragma(python) addtomethod = "__init__:self._setOORInfo(self)" %pragma(python) addtomethod = "wxPreTopLevelWindow:val._setOORInfo(val)" @@ -90,11 +100,13 @@ public: virtual bool IsIconized() const; // get the frame icon - const wxIcon& GetIcon() const; + wxIcon GetIcon() const; // set the frame icon virtual void SetIcon(const wxIcon& icon); + // set the frame icons + virtual void SetIcons(const wxIconBundle& icons ); // maximize the window to cover entire screen virtual bool ShowFullScreen(bool show, long style = wxFULLSCREEN_ALL); @@ -104,6 +116,12 @@ public: virtual void SetTitle(const wxString& title); virtual wxString GetTitle() const; + + // Set the shape of the window to the given region. + // Returns TRUE if the platform supports this feature (and the operation + // is successful.) + virtual bool SetShape(const wxRegion& region); + }; //---------------------------------------------------------------------- @@ -115,14 +133,14 @@ public: const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, - char* name = "frame"); + const wxString& name = wxPyFrameNameStr); %name(wxPreFrame)wxFrame(); bool Create(wxWindow* parent, const wxWindowID id, const wxString& title, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, - char* name = "frame"); + const wxString& name = wxPyFrameNameStr); %pragma(python) addtomethod = "__init__:self._setOORInfo(self)" %pragma(python) addtomethod = "wxPreFrame:val._setOORInfo(val)" @@ -133,17 +151,15 @@ public: wxMenuBar *GetMenuBar(); - // call this to simulate a menu command - bool Command(int id); - // process menu command: returns TRUE if processed bool ProcessCommand(int id); + %pragma(python) addtoclass = "Command = ProcessCommand" // create the main status bar wxStatusBar* CreateStatusBar(int number = 1, long style = wxST_SIZEGRIP, wxWindowID id = -1, - char* name = "statusBar"); + const wxString& name = wxPyStatusLineNameStr); // get the main status bar wxStatusBar *GetStatusBar(); @@ -154,17 +170,38 @@ public: // forward these to status bar virtual void SetStatusText(const wxString &text, int number = 0); virtual void SetStatusWidths(int LCOUNT, int* choices); // uses typemap + void PushStatusText(const wxString &text, int number = 0); + void PopStatusText(int number = 0); + + // show help text (typically in the statusbar); show is FALSE + // if you are hiding the help, TRUE otherwise + virtual void DoGiveHelp(const wxString& text, bool show); + + // set the status bar pane the help will be shown in + void SetStatusBarPane(int n); + int GetStatusBarPane() const; // create main toolbar - virtual wxToolBar* CreateToolBar(long style = wxNO_BORDER|wxTB_HORIZONTAL, + virtual wxToolBar* CreateToolBar(long style = -1, //wxNO_BORDER|wxTB_HORIZONTAL, wxWindowID id = -1, - const char* name = "toolBar"); + const wxString& name = wxPyToolBarNameStr); // get/set the main toolbar virtual wxToolBar *GetToolBar() const { return m_frameToolBar; } virtual void SetToolBar(wxToolBar *toolbar) { m_frameToolBar = toolbar; } + // sends a size event to the window using its current size -- this has an + // effect of refreshing the window layout + virtual void SendSizeEvent(); + + + // send wxUpdateUIEvents for all menu items in the menubar, + // or just for menu if non-NULL + void DoMenuUpdates(wxMenu* menu = NULL); + + // do the UI update processing for this window + virtual void UpdateWindowUI(long flags = wxUPDATE_UI_NONE); }; //--------------------------------------------------------------------------- @@ -177,7 +214,7 @@ public: const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, - const char* name = "dialogBox"); + const wxString& name = wxPyDialogNameStr); %name(wxPreDialog)wxDialog(); bool Create(wxWindow* parent, @@ -186,7 +223,7 @@ public: const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_DIALOG_STYLE, - const char* name = "dialogBox"); + const wxString& name = wxPyDialogNameStr); %pragma(python) addtomethod = "__init__:self._setOORInfo(self)" %pragma(python) addtomethod = "wxPreDialog:val._setOORInfo(val)" @@ -214,14 +251,14 @@ public: const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, - char* name = "frame"); + const wxString& name = wxPyFrameNameStr); %name(wxPreMiniFrame)wxMiniFrame(); bool Create(wxWindow* parent, const wxWindowID id, const wxString& title, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxDEFAULT_FRAME_STYLE, - char* name = "frame"); + const wxString& name = wxPyFrameNameStr); %pragma(python) addtomethod = "__init__:self._setOORInfo(self)" %pragma(python) addtomethod = "wxPreMiniFrame:val._setOORInfo(val)" @@ -230,14 +267,44 @@ public: //--------------------------------------------------------------------------- -class wxTipWindow : public wxFrame +enum { + wxSPLASH_CENTRE_ON_PARENT, + wxSPLASH_CENTRE_ON_SCREEN, + wxSPLASH_NO_CENTRE, + wxSPLASH_TIMEOUT, + wxSPLASH_NO_TIMEOUT, +}; + + +class wxSplashScreenWindow: public wxWindow { public: - wxTipWindow(wxWindow *parent, - const wxString& text, - wxCoord maxLength = 100); + wxSplashScreenWindow(const wxBitmap& bitmap, + wxWindow* parent, wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxNO_BORDER); %pragma(python) addtomethod = "__init__:self._setOORInfo(self)" + + void SetBitmap(const wxBitmap& bitmap); + wxBitmap& GetBitmap(); +}; + + +class wxSplashScreen : public wxFrame { +public: + wxSplashScreen(const wxBitmap& bitmap, long splashStyle, int milliseconds, + wxWindow* parent, wxWindowID id, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxSIMPLE_BORDER|wxFRAME_NO_TASKBAR|wxSTAY_ON_TOP); + + %pragma(python) addtomethod = "__init__:self._setOORInfo(self)" + + long GetSplashStyle() const; + wxSplashScreenWindow* GetSplashWindow() const; + int GetTimeout() const; }; @@ -247,3 +314,4 @@ public: +