]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/toplevel_osx.cpp
Correct format specifiers used to show wxIPV4address.
[wxWidgets.git] / src / osx / toplevel_osx.cpp
index 3b6f61c6a23722fa2d472df3200811bc7d77cd45..3c1c8ae4d339d92bafc64f4d2ec1fb6241f05cc4 100644 (file)
@@ -6,7 +6,7 @@
 // Created:     24.09.01
 // RCS-ID:      $Id$
 // Copyright:   (c) 2001-2004 Stefan Csomor
 // Created:     24.09.01
 // RCS-ID:      $Id$
 // Copyright:   (c) 2001-2004 Stefan Csomor
-// License:     wxWindows licence
+// Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
 
 // ============================================================================
 ///////////////////////////////////////////////////////////////////////////////
 
 // ============================================================================
@@ -86,6 +86,17 @@ bool wxTopLevelWindowMac::Create(wxWindow *parent,
     return true;
 }
 
     return true;
 }
 
+bool wxTopLevelWindowMac::Create(wxWindow *parent,
+                                 WXWindow nativeWindow)
+{
+    if ( !wxNonOwnedWindow::Create(parent, nativeWindow ) )
+        return false;
+    
+    wxTopLevelWindows.Append(this);
+    
+    return true;
+}
+
 wxTopLevelWindowMac::~wxTopLevelWindowMac()
 {
 }
 wxTopLevelWindowMac::~wxTopLevelWindowMac()
 {
 }
@@ -95,7 +106,7 @@ bool wxTopLevelWindowMac::Destroy()
     // NB: this will get called during destruction if we don't do it now,
     // and may fire a kill focus event on a control being destroyed
 #if wxOSX_USE_CARBON
     // NB: this will get called during destruction if we don't do it now,
     // and may fire a kill focus event on a control being destroyed
 #if wxOSX_USE_CARBON
-    if (m_nowpeer->GetWXWindow())
+    if (m_nowpeer && m_nowpeer->GetWXWindow())
         ClearKeyboardFocus( (WindowRef)m_nowpeer->GetWXWindow() );
 #endif
     return wxTopLevelWindowBase::Destroy();
         ClearKeyboardFocus( (WindowRef)m_nowpeer->GetWXWindow() );
 #endif
     return wxTopLevelWindowBase::Destroy();
@@ -114,6 +125,9 @@ void wxTopLevelWindowMac::Maximize(bool maximize)
 
 bool wxTopLevelWindowMac::IsMaximized() const
 {
 
 bool wxTopLevelWindowMac::IsMaximized() const
 {
+    if ( m_nowpeer == NULL )
+        return false;
+    
     return m_nowpeer->IsMaximized();
 }
 
     return m_nowpeer->IsMaximized();
 }
 
@@ -125,6 +139,9 @@ void wxTopLevelWindowMac::Iconize(bool iconize)
 
 bool wxTopLevelWindowMac::IsIconized() const
 {
 
 bool wxTopLevelWindowMac::IsIconized() const
 {
+    if ( m_nowpeer == NULL )
+        return false;
+
     return m_nowpeer->IsIconized();
 }
 
     return m_nowpeer->IsIconized();
 }
 
@@ -147,7 +164,8 @@ wxPoint wxTopLevelWindowMac::GetClientAreaOrigin() const
 
 void wxTopLevelWindowMac::SetTitle(const wxString& title)
 {
 
 void wxTopLevelWindowMac::SetTitle(const wxString& title)
 {
-    wxWindow::SetLabel( title ) ;
+    m_label = title ;
+
     if ( m_nowpeer )
         m_nowpeer->SetTitle(title, GetFont().GetEncoding() );
 }
     if ( m_nowpeer )
         m_nowpeer->SetTitle(title, GetFont().GetEncoding() );
 }
@@ -159,7 +177,9 @@ wxString wxTopLevelWindowMac::GetTitle() const
 
 void wxTopLevelWindowMac::ShowWithoutActivating()
 {
 
 void wxTopLevelWindowMac::ShowWithoutActivating()
 {
-    if ( !wxTopLevelWindowBase::Show(true) )
+    // wxTopLevelWindowBase is derived from wxNonOwnedWindow, so don't
+    // call it here.
+    if ( !wxWindow::Show(true) )
         return;
 
     m_nowpeer->ShowWithoutActivating();
         return;
 
     m_nowpeer->ShowWithoutActivating();