]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/textctrl.cpp
DC reorganization
[wxWidgets.git] / src / mac / carbon / textctrl.cpp
index 89ab18889a1b5d2ee60d856b40a9cdf0343f8a48..f44ec41d345ec4ae6a4e20abc90b9e5e89731d43 100644 (file)
@@ -170,6 +170,51 @@ private:
     RgnHandle m_newClip;
 };
 
+wxMacPortSaver::wxMacPortSaver( GrafPtr port )
+{
+    ::GetPort( &m_port );
+    ::SetPort( port );
+}
+
+wxMacPortSaver::~wxMacPortSaver()
+{
+    ::SetPort( m_port );
+}
+
+wxMacWindowClipper::wxMacWindowClipper( const wxWindow* win ) :
+wxMacPortSaver( (GrafPtr) GetWindowPort( (WindowRef) win->MacGetTopLevelWindowRef() ) )
+{
+    m_newPort = (GrafPtr) GetWindowPort( (WindowRef) win->MacGetTopLevelWindowRef() ) ;
+    m_formerClip = NewRgn() ;
+    m_newClip = NewRgn() ;
+    GetClip( m_formerClip ) ;
+    
+    if ( win )
+    {
+        // guard against half constructed objects, this just leads to a empty clip
+        if ( win->GetPeer() )
+        {
+            int x = 0 , y = 0;
+            win->MacWindowToRootWindow( &x, &y ) ;
+            
+            // get area including focus rect
+            HIShapeGetAsQDRgn( ((wxWindow*)win)->MacGetVisibleRegion(true).GetWXHRGN() , m_newClip );
+            if ( !EmptyRgn( m_newClip ) )
+                OffsetRgn( m_newClip , x , y ) ;
+        }
+        
+        SetClip( m_newClip ) ;
+    }
+}
+
+wxMacWindowClipper::~wxMacWindowClipper()
+{
+    SetPort( m_newPort ) ;
+    SetClip( m_formerClip ) ;
+    DisposeRgn( m_newClip ) ;
+    DisposeRgn( m_formerClip ) ;
+}
+
 // common parts for implementations based on MLTE
 
 class wxMacMLTEControl : public wxMacTextControl
@@ -2258,51 +2303,6 @@ int wxMacMLTEControl::GetLineLength(long lineNo) const
 // while this can be solved on 10.3 by reassigning them the correct place, on 10.2 there is
 // no way out, therefore we are using our own implementation and our own scrollbars ....
 
-wxMacPortSaver::wxMacPortSaver( GrafPtr port )
-{
-    ::GetPort( &m_port );
-    ::SetPort( port );
-}
-
-wxMacPortSaver::~wxMacPortSaver()
-{
-    ::SetPort( m_port );
-}
-
-wxMacWindowClipper::wxMacWindowClipper( const wxWindow* win ) :
-    wxMacPortSaver( (GrafPtr) GetWindowPort( (WindowRef) win->MacGetTopLevelWindowRef() ) )
-{
-    m_newPort = (GrafPtr) GetWindowPort( (WindowRef) win->MacGetTopLevelWindowRef() ) ;
-    m_formerClip = NewRgn() ;
-    m_newClip = NewRgn() ;
-    GetClip( m_formerClip ) ;
-
-    if ( win )
-    {
-        // guard against half constructed objects, this just leads to a empty clip
-        if ( win->GetPeer() )
-        {
-            int x = 0 , y = 0;
-            win->MacWindowToRootWindow( &x, &y ) ;
-
-            // get area including focus rect
-            HIShapeGetAsQDRgn( ((wxWindow*)win)->MacGetVisibleRegion(true).GetWXHRGN() , m_newClip );
-            if ( !EmptyRgn( m_newClip ) )
-                OffsetRgn( m_newClip , x , y ) ;
-        }
-
-        SetClip( m_newClip ) ;
-    }
-}
-
-wxMacWindowClipper::~wxMacWindowClipper()
-{
-    SetPort( m_newPort ) ;
-    SetClip( m_formerClip ) ;
-    DisposeRgn( m_newClip ) ;
-    DisposeRgn( m_formerClip ) ;
-}
-
 TXNScrollInfoUPP gTXNScrollInfoProc = NULL ;
 ControlActionUPP gTXNScrollActionProc = NULL ;