]> git.saurik.com Git - wxWidgets.git/commitdiff
Honor value of SetMaxLength, at least when typing (pasting still circumvents it)...
authorKevin Hock <hockkn@yahoo.com>
Thu, 2 Dec 2004 21:35:40 +0000 (21:35 +0000)
committerKevin Hock <hockkn@yahoo.com>
Thu, 2 Dec 2004 21:35:40 +0000 (21:35 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30847 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

src/mac/carbon/textctrl.cpp

index d1b9fa2325ebf9c1aa20cb04f3d6879c9917ec2b..3b06665ebf5bfd7f8d3a8c41eccf7755d517270d 100644 (file)
@@ -791,6 +791,16 @@ void wxTextCtrl::OnChar(wxKeyEvent& event)
         return ;
     }
 
+    // Check if we have reached the max # of chars, but still allow navigation and deletion
+    if ( !IsMultiLine() && GetValue().Length() >= m_maxLength &&
+        key != WXK_LEFT && key != WXK_RIGHT && key != WXK_TAB &&
+        key != WXK_BACK && !( key == WXK_RETURN && (m_windowStyle & wxPROCESS_ENTER) )
+       )
+    {
+        // eat it, we don't want to add more than allowed # of characters
+        return;
+    }
+
     // assume that any key not processed yet is going to modify the control
     m_dirty = true;