]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/carbon/textctrl.cpp
no changes, just corrected the comment for wxConvLocal
[wxWidgets.git] / src / mac / carbon / textctrl.cpp
index 61cdda06539b4a876a42097ca12939f7bf47e85f..95729897ce59657883d7661b58a6c07ae2c5fabf 100644 (file)
@@ -435,6 +435,7 @@ void wxTextCtrl::Init()
 
     m_maxLength = 0;
     m_privateContextMenu = NULL;
+    m_triggerOnSetValue = true ;
 }
 
 wxTextCtrl::~wxTextCtrl()
@@ -545,10 +546,13 @@ void wxTextCtrl::SetValue(const wxString& str)
 
     GetPeer()->SetStringValue( str ) ;
 
-    wxCommandEvent event( wxEVT_COMMAND_TEXT_UPDATED, m_windowId );
-    event.SetString( GetValue() );
-    event.SetEventObject( this );
-    GetEventHandler()->ProcessEvent( event );
+    if ( m_triggerOnSetValue )
+    {
+        wxCommandEvent event( wxEVT_COMMAND_TEXT_UPDATED, m_windowId );
+        event.SetString( GetValue() );
+        event.SetEventObject( this );
+        GetEventHandler()->ProcessEvent( event );
+    }
 }
 
 void wxTextCtrl::SetMaxLength(unsigned long len)
@@ -876,6 +880,13 @@ void wxTextCtrl::OnChar(wxKeyEvent& event)
     int key = event.GetKeyCode() ;
     bool eat_key = false ;
 
+    if ( key == 'a' && event.MetaDown() )
+    {
+        SelectAll() ;     
+        
+        return ;
+    }
+
     if ( key == 'c' && event.MetaDown() )
     {
         if ( CanCopy() )
@@ -885,7 +896,7 @@ void wxTextCtrl::OnChar(wxKeyEvent& event)
     }
 
     if ( !IsEditable() && key != WXK_LEFT && key != WXK_RIGHT && key != WXK_DOWN && key != WXK_UP && key != WXK_TAB &&
-        !( key == WXK_RETURN && ( (m_windowStyle & wxPROCESS_ENTER) || (m_windowStyle & wxTE_MULTILINE) ) )
+        !( key == WXK_RETURN && ( (m_windowStyle & wxTE_PROCESS_ENTER) || (m_windowStyle & wxTE_MULTILINE) ) )
 //        && key != WXK_PAGEUP && key != WXK_PAGEDOWN && key != WXK_HOME && key != WXK_END
         )
     {
@@ -897,7 +908,7 @@ void wxTextCtrl::OnChar(wxKeyEvent& event)
     // allow navigation and deletion
     if ( !IsMultiLine() && m_maxLength && GetValue().length() >= m_maxLength &&
         key != WXK_LEFT && key != WXK_RIGHT && key != WXK_TAB &&
-        key != WXK_BACK && !( key == WXK_RETURN && (m_windowStyle & wxPROCESS_ENTER) )
+        key != WXK_BACK && !( key == WXK_RETURN && (m_windowStyle & wxTE_PROCESS_ENTER) )
        )
     {
         // eat it, we don't want to add more than allowed # of characters
@@ -928,7 +939,7 @@ void wxTextCtrl::OnChar(wxKeyEvent& event)
     switch ( key )
     {
         case WXK_RETURN:
-            if (m_windowStyle & wxPROCESS_ENTER)
+            if (m_windowStyle & wxTE_PROCESS_ENTER)
             {
                 wxCommandEvent event(wxEVT_COMMAND_TEXT_ENTER, m_windowId);
                 event.SetEventObject( this );