]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/gauge_osx.cpp
fix memory leak in wxScreenDC, fixes #13249
[wxWidgets.git] / src / osx / gauge_osx.cpp
index 426e858daa916c93a32c296735eb6e111308fa3c..9e353f1f8498a7546c8f09f11f854121b645548a 100644 (file)
@@ -4,7 +4,7 @@
 // Author:      Stefan Csomor
 // Modified by:
 // Created:     1998-01-01
 // Author:      Stefan Csomor
 // Modified by:
 // Created:     1998-01-01
-// RCS-ID:      $Id: gauge.cpp 54820 2008-07-29 20:04:11Z SC $
+// RCS-ID:      $Id$
 // Copyright:   (c) Stefan Csomor
 // Licence:       wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 // Copyright:   (c) Stefan Csomor
 // Licence:       wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
@@ -15,8 +15,6 @@
 
 #include "wx/gauge.h"
 
 
 #include "wx/gauge.h"
 
-IMPLEMENT_DYNAMIC_CLASS(wxGauge, wxControl)
-
 #include "wx/osx/private.h"
 
 bool wxGauge::Create( wxWindow *parent,
 #include "wx/osx/private.h"
 
 bool wxGauge::Create( wxWindow *parent,
@@ -27,15 +25,15 @@ bool wxGauge::Create( wxWindow *parent,
     long style,
     const wxValidator& validator,
     const wxString& name )
     long style,
     const wxValidator& validator,
     const wxString& name )
-{
-    m_macIsUserPane = false;
-
+{    
+    DontCreatePeer();
+    
     if ( !wxGaugeBase::Create( parent, id, range, pos, s, style & 0xE0FFFFFF, validator, name ) )
         return false;
 
     wxSize size = s;
 
     if ( !wxGaugeBase::Create( parent, id, range, pos, s, style & 0xE0FFFFFF, validator, name ) )
         return false;
 
     wxSize size = s;
 
-    m_peer = wxWidgetImpl::CreateGauge( this, parent, id, GetValue() , 0, GetRange(), pos, size, style, GetExtraStyle() );
+    SetPeer(wxWidgetImpl::CreateGauge( this, parent, id, GetValue() , 0, GetRange(), pos, size, style, GetExtraStyle() ));
 
     MacPostControlCreate( pos, size );
 
 
     MacPostControlCreate( pos, size );
 
@@ -47,8 +45,8 @@ void wxGauge::SetRange(int r)
     // we are going via the base class in case there is
     // some change behind the values by it
     wxGaugeBase::SetRange( r ) ;
     // we are going via the base class in case there is
     // some change behind the values by it
     wxGaugeBase::SetRange( r ) ;
-    if ( m_peer )
-        m_peer->SetMaximum( GetRange() ) ;
+    if ( GetPeer() )
+        GetPeer()->SetMaximum( GetRange() ) ;
 }
 
 void wxGauge::SetValue(int pos)
 }
 
 void wxGauge::SetValue(int pos)
@@ -57,8 +55,8 @@ void wxGauge::SetValue(int pos)
     // some change behind the values by it
     wxGaugeBase::SetValue( pos ) ;
 
     // some change behind the values by it
     wxGaugeBase::SetValue( pos ) ;
 
-    if ( m_peer )
-        m_peer->SetValue( GetValue() ) ;
+    if ( GetPeer() )
+        GetPeer()->SetValue( GetValue() ) ;
 }
 
 int wxGauge::GetValue() const
 }
 
 int wxGauge::GetValue() const
@@ -68,7 +66,7 @@ int wxGauge::GetValue() const
 
 void wxGauge::Pulse()
 {
 
 void wxGauge::Pulse()
 {
-    m_peer->PulseGauge();
+    GetPeer()->PulseGauge();
 }
 
 #endif // wxUSE_GAUGE
 }
 
 #endif // wxUSE_GAUGE