]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk1/frame.cpp
Fix for unsafe use of a global pointer for focus window: now checks at destruct
[wxWidgets.git] / src / gtk1 / frame.cpp
index a0be42f520404ac819abbc5fd4a2009dfed5f1dd..71d58cae4d26fb01e701b0be41bf426fe5670144 100644 (file)
@@ -447,18 +447,32 @@ void wxFrame::Init()
     m_menuBarDetached = FALSE;
     m_toolBarDetached = FALSE;
     m_insertInClientArea = TRUE;
     m_menuBarDetached = FALSE;
     m_toolBarDetached = FALSE;
     m_insertInClientArea = TRUE;
+    m_isFrame = TRUE;
     m_isIconized = FALSE;
     m_fsIsShowing = FALSE;
     m_isIconized = FALSE;
     m_fsIsShowing = FALSE;
+    m_themeEnabled = TRUE;
 }
 
 bool wxFrame::Create( wxWindow *parent,
                       wxWindowID id,
 }
 
 bool wxFrame::Create( wxWindow *parent,
                       wxWindowID id,
-                      const wxString &title,
-                      const wxPoint &pos,
-                      const wxSize &size,
+                      const wxStringtitle,
+                      const wxPointpos,
+                      const wxSize& sizeOrig,
                       long style,
                       const wxString &name )
 {
                       long style,
                       const wxString &name )
 {
+    // always create a frame of some reasonable, even if arbitrary, size (at
+    // least for MSW compatibility)
+    wxSize size = sizeOrig;
+    if ( size.x == -1 || size.y == -1 )
+    {
+        wxSize sizeDpy = wxGetDisplaySize();
+        if ( size.x == -1 )
+            size.x = sizeDpy.x / 3;
+        if ( size.y == -1 )
+            size.y = sizeDpy.y / 5;
+    }
+
     wxTopLevelWindows.Append( this );
 
     m_needParent = FALSE;
     wxTopLevelWindows.Append( this );
 
     m_needParent = FALSE;
@@ -1177,8 +1191,9 @@ void wxFrame::Maximize(bool WXUNUSED(maximize))
 
 bool wxFrame::IsMaximized() const
 {
 
 bool wxFrame::IsMaximized() const
 {
-    wxFAIL_MSG( _T("not implemented") );
+  //    wxFAIL_MSG( _T("not implemented") );
 
 
+    // This is an approximation
     return FALSE;
 }
 
     return FALSE;
 }