]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/textctrl.cpp
fixes to dependency problems in win32 makefiles
[wxWidgets.git] / src / mac / textctrl.cpp
index 852aa49750da80b291a6195fa10cbedd92b85d0a..ac6399deb895b4c76a5cd334af60f9c013d914a5 100644 (file)
@@ -722,7 +722,7 @@ bool wxTextCtrl::Create(wxWindow *parent, wxWindowID id,
         m_macControl = ::NewControl( MAC_WXHWND(parent->MacGetRootWindow()) , &bounds , "\p" , true , 0 , 0 , 1,
             (style & wxTE_PASSWORD) ? kControlEditTextPasswordProc : kControlEditTextProc , (long) this ) ;
         long size ;
-        ::GetControlData((ControlHandle)  m_macControl , 0, kControlEditTextTEHandleTag , sizeof( TEHandle ) , (char*) &((TEHandle) m_macTE) , &size ) ;
+        ::GetControlData((ControlHandle)  m_macControl , 0, kControlEditTextTEHandleTag , sizeof( TEHandle ) , (char*)((TEHandle *)&m_macTE) , &size ) ;
 
     }
     else
@@ -931,8 +931,10 @@ bool wxTextCtrl::SetStyle(long start, long end, const wxTextAttr& style)
 
         if ( attrCounter > 0 )
         {
-            OSStatus status = TXNSetTypeAttributes ((TXNObject)m_macTXN, attrCounter , typeAttr,
-                start,end);
+#ifdef __WXDEBUG__
+            OSStatus status =
+#endif // __WXDEBUG__
+                TXNSetTypeAttributes ((TXNObject)m_macTXN, attrCounter , typeAttr, start,end);
             wxASSERT_MSG( status == noErr , wxT("Couldn't set text attributes") ) ;
         }
         if ( !formerEditable )
@@ -1344,6 +1346,10 @@ void wxTextCtrl::Undo()
 {
     if (CanUndo())
     {
+        if ( m_macUsesTXN ) 
+        {
+            TXNUndo((TXNObject)m_macTXN); 
+        }
     }
 }
 
@@ -1351,16 +1357,36 @@ void wxTextCtrl::Redo()
 {
     if (CanRedo())
     {
+        if ( m_macUsesTXN ) 
+        {
+            TXNRedo((TXNObject)m_macTXN); 
+        }
     }
 }
 
 bool wxTextCtrl::CanUndo() const
 {
+    if ( !IsEditable() ) 
+    {
+        return false ; 
+    }
+    if ( m_macUsesTXN ) 
+    {
+        return TXNCanUndo((TXNObject)m_macTXN,NULL); 
+    }
     return FALSE ;
 }
 
 bool wxTextCtrl::CanRedo() const
 {
+    if ( !IsEditable() ) 
+    {
+        return false ; 
+    }
+    if ( m_macUsesTXN ) 
+    {
+        return TXNCanRedo((TXNObject)m_macTXN,NULL); 
+    }
     return FALSE ;
 }