wxFRAME_NO_WINDOW_MENU,
wxFRAME_NO_TASKBAR,
wxFRAME_SHAPED,
+ wxFRAME_DRAWER,
+ wxFRAME_EX_METAL,
+ wxDIALOG_EX_METAL,
+
// Obsolete
wxDIALOG_MODAL,
wxDIALOG_MODELESS,
wxTOPLEVEL_EX_DIALOG,
};
-
-
-%typemap(in) (int widths, int* widths_field) {
- $1 = PyList_Size($input);
- $2 = int_LIST_helper($input);
- if ($2 == NULL) SWIG_fail;
-}
-
-%typemap(freearg) (int widths, int* widths_field) {
- if ($2) delete [] $2;
-}
-
+// Styles for RequestUserAttention
+enum
+{
+ wxUSER_ATTENTION_INFO = 1,
+ wxUSER_ATTENTION_ERROR = 2
+};
//---------------------------------------------------------------------------
// No constructor as it can not be used directly from Python
// maximize = True => maximize, otherwise - restore
- virtual void Maximize(bool maximize = True);
+ virtual void Maximize(bool maximize = true);
// undo Maximize() or Iconize()
virtual void Restore();
// iconize = True => iconize, otherwise - restore
- virtual void Iconize(bool iconize = True);
+ virtual void Iconize(bool iconize = true);
// return True if the frame is maximized
virtual bool IsMaximized() const;
// is successful.)
virtual bool SetShape(const wxRegion& region);
+
+ // Attracts the users attention to this window if the application is
+ // inactive (should be called when a background event occurs)
+ virtual void RequestUserAttention(int flags = wxUSER_ATTENTION_INFO);
+
+ // Is this the active frame (highlighted in the taskbar)?
+ virtual bool IsActive();
+
#ifdef __WXMAC__
void MacSetMetalAppearance( bool on ) ;
bool MacGetMetalAppearance() const ;
+#else
+ %extend {
+ // TODO: Should they raise not implemented or just NOP???
+ void MacSetMetalAppearance( bool on ) { /*wxPyRaiseNotImplemented();*/ }
+ bool MacGetMetalAppearance() const { /*wxPyRaiseNotImplemented();*/ return false; }
+ }
#endif
};
// is accounted for in client size calculations - all others should be taken
// care of manually.
+MustHaveApp(wxFrame);
+
class wxFrame : public wxTopLevelWindow {
public:
%pythonAppend wxFrame "self._setOORInfo(self)"
%pythonAppend wxFrame() ""
+ %typemap(out) wxFrame*; // turn off this typemap
- 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();
+ %RenameCtor(PreFrame, wxFrame());
- bool Create(wxWindow* parent, const wxWindowID id, const wxString& title,
+ // Turn it back on again
+ %typemap(out) wxFrame* { $result = wxPyMake_wxObject($1, $owner); }
+
+
+ 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,
// sends a size event to the window using its current size -- this has an
// effect of refreshing the window layout
- //
- virtual void SendSizeEvent() { }
+ virtual void SendSizeEvent();
// menu bar functions
// 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:
%pythonAppend wxDialog "self._setOORInfo(self)"
%pythonAppend wxDialog() ""
+ %typemap(out) wxDialog*; // turn off this typemap
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,
const wxString& name = wxPyDialogNameStr);
- %name(PreDialog)wxDialog();
+ %RenameCtor(PreDialog, wxDialog());
+
+ // Turn it back on again
+ %typemap(out) wxDialog* { $result = wxPyMake_wxObject($1, $owner); }
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,
// the 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; }
+ void SetReturnCode(int returnCode);
+ int GetReturnCode() const;
// splits text up at newlines and places the
// lines into a vertical wxBoxSizer
- wxSizer *CreateTextSizer( const wxString &message );
+ wxSizer* CreateTextSizer( const wxString &message );
// places buttons into a horizontal wxBoxSizer
- wxSizer *CreateButtonSizer( long flags );
-
+ wxSizer* CreateButtonSizer( long flags );
+ wxStdDialogButtonSizer* CreateStdDialogButtonSizer( long flags );
//void SetModal(bool flag);
// may be called to terminate the dialog with the given return code
virtual void EndModal(int retCode);
+
+ static wxVisualAttributes
+ GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
+
+ %pythoncode {
+ def SendSizeEvent(self):
+ self.ProcessEvent(wx.SizeEvent((-1,-1)))
+ }
};
//---------------------------------------------------------------------------
%newgroup
+MustHaveApp(wxMiniFrame);
+
class wxMiniFrame : public wxFrame {
public:
%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();
+ %RenameCtor(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,
};
+MustHaveApp(wxSplashScreenWindow);
+
class wxSplashScreenWindow: public wxWindow
{
public:
};
+MustHaveApp(wxSplashScreen);
+
class wxSplashScreen : public wxFrame {
public:
%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);