]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/_toplvl.i
Forward declare new wxPy classes
[wxWidgets.git] / wxPython / src / _toplvl.i
index 00f54823cee1638eb017018fcd430c677bf1403a..61a7e8ce60f6bcf71bf9042cf079432712b626f5 100644 (file)
@@ -30,13 +30,11 @@ enum
     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,
@@ -54,16 +52,22 @@ enum
     wxFRAME_EX_METAL,
     wxDIALOG_EX_METAL,
     wxWS_EX_CONTEXTHELP,
-    
-    // Obsolete
-    wxDIALOG_MODAL,
-    wxDIALOG_MODELESS,
-    wxUSER_COLOURS,
-    wxNO_3D,
 
     wxFRAME_EX_CONTEXTHELP,
     wxDIALOG_EX_CONTEXTHELP,
-};    
+};
+
+%pythoncode {
+    %# deprecated
+    RESIZE_BOX  = MAXIMIZE_BOX
+    THICK_FRAME = RESIZE_BORDER
+         
+    %# Obsolete
+    wxDIALOG_MODAL = 0
+    wxDIALOG_MODELESS = 0
+    wxUSER_COLOURS = 0
+    wxNO_3D = 0
+}
 
 
 enum
@@ -130,6 +134,9 @@ public:
     virtual void SetTitle(const wxString& title);
     virtual wxString GetTitle() const;
 
+    // enable/disable close button [x]
+    virtual bool EnableCloseButton(bool enable );
+
     // Set the shape of the window to the given region.
     // Returns True if the platform supports this feature
     // (and the operation is successful.)
@@ -168,15 +175,6 @@ public:
         "Center the window on screen", "");
     %pythoncode { CentreOnScreen = CenterOnScreen }
 
-#ifdef __WXMSW__
-    bool EnableCloseButton(bool enable = true);
-#else
-    %extend {
-        bool EnableCloseButton(bool enable = true) { return false; }
-    }
-#endif
-
-    
     
     DocDeclStr(
         virtual wxWindow *, GetDefaultItem() const,
@@ -195,6 +193,10 @@ by pressing <Enter> such as the OK button on a wx.Dialog.", "");
         virtual wxWindow *, GetTmpDefaultItem() const,
         "Return the temporary default item, which can be None.", "");
        
+    %property(DefaultItem, GetDefaultItem, SetDefaultItem, doc="See `GetDefaultItem` and `SetDefaultItem`");
+    %property(Icon, GetIcon, SetIcon, doc="See `GetIcon` and `SetIcon`");
+    %property(Title, GetTitle, SetTitle, doc="See `GetTitle` and `SetTitle`");
+    %property(TmpDefaultItem, GetTmpDefaultItem, SetTmpDefaultItem, doc="See `GetTmpDefaultItem` and `SetTmpDefaultItem`");
 };
 
 
@@ -318,6 +320,11 @@ public:
 
     static wxVisualAttributes
     GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
+
+    %property(MenuBar, GetMenuBar, SetMenuBar, doc="See `GetMenuBar` and `SetMenuBar`");
+    %property(StatusBar, GetStatusBar, SetStatusBar, doc="See `GetStatusBar` and `SetStatusBar`");
+    %property(StatusBarPane, GetStatusBarPane, SetStatusBarPane, doc="See `GetStatusBarPane` and `SetStatusBarPane`");
+    %property(ToolBar, GetToolBar, SetToolBar, doc="See `GetToolBar` and `SetToolBar`");
 };
 
 //---------------------------------------------------------------------------
@@ -379,10 +386,24 @@ public:
     // lines into a vertical wxBoxSizer
     wxSizer* CreateTextSizer( const wxString &message );
 
-    // places buttons into a horizontal wxBoxSizer
-    wxSizer* CreateButtonSizer( long flags,
-                                bool separated = false,
-                                wxCoord distance = 0 );
+
+    // returns a horizontal wxBoxSizer containing the given buttons
+    //
+    // notice that the returned sizer can be NULL if no buttons are put in the
+    // sizer (this mostly happens under smart phones and other atypical
+    // platforms which have hardware buttons replacing OK/Cancel and such)
+   %Rename(_CreateButtonSizer,
+           wxSizer* , CreateButtonSizer( long flags ));
+    %pythoncode {
+        def CreateButtonSizer(self, flags, *ignored):
+            return self._CreateButtonSizer(flags)
+    }
+
+    // returns the sizer containing CreateButtonSizer() below a separating
+    // static line for the platforms which use static lines for items
+    // separation (i.e. not Mac)
+    wxSizer *CreateSeparatedButtonSizer(long flags);
+   
     wxStdDialogButtonSizer* CreateStdDialogButtonSizer( long flags );
 
     //void SetModal( bool flag );
@@ -408,6 +429,14 @@ public:
 //---------------------------------------------------------------------------
 %newgroup
 
+%{
+#define wxDEFAULT_MINIFRAME_STYLE wxCAPTION | wxRESIZE_BORDER | wxTINY_CAPTION_HORIZ
+%}
+
+enum  {
+    wxDEFAULT_MINIFRAME_STYLE
+};
+
 
 MustHaveApp(wxMiniFrame);
 
@@ -422,7 +451,7 @@ public:
             const wxString& title = wxPyEmptyString,
             const wxPoint& pos = wxDefaultPosition,
             const wxSize& size = wxDefaultSize,
-            long style = wxDEFAULT_FRAME_STYLE,
+            long style = wxDEFAULT_MINIFRAME_STYLE,
             const wxString& name = wxPyFrameNameStr);
     %RenameCtor(PreMiniFrame, wxMiniFrame());
 
@@ -431,7 +460,7 @@ public:
             const wxString& title = wxPyEmptyString,
             const wxPoint& pos = wxDefaultPosition,
             const wxSize& size = wxDefaultSize,
-            long style = wxDEFAULT_FRAME_STYLE,
+            long style = wxDEFAULT_MINIFRAME_STYLE,
             const wxString& name = wxPyFrameNameStr);
 };
 
@@ -466,6 +495,8 @@ public:
 
     void SetBitmap(const wxBitmap& bitmap);
     wxBitmap& GetBitmap();
+
+    %property(Bitmap, GetBitmap, SetBitmap, doc="See `GetBitmap` and `SetBitmap`");
 };
 
 
@@ -487,6 +518,10 @@ public:
     long GetSplashStyle() const;
     wxSplashScreenWindow* GetSplashWindow() const;
     int GetTimeout() const;
+
+    %property(SplashStyle, GetSplashStyle, doc="See `GetSplashStyle`");
+    %property(SplashWindow, GetSplashWindow, doc="See `GetSplashWindow`");
+    %property(Timeout, GetTimeout, doc="See `GetTimeout`");
 };