removing duplicated method, wiring native maxlength support, see #10269

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70355 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Stefan Csomor
2012-01-15 15:54:53 +00:00
parent 4386db06ba
commit 6d155f1f31
2 changed files with 13 additions and 19 deletions

View File

@@ -154,11 +154,6 @@ void wxTextCtrl::MacCheckSpelling(bool check)
GetTextPeer()->CheckSpelling(check);
}
void wxTextCtrl::SetMaxLength(unsigned long len)
{
m_maxLength = len ;
}
bool wxTextCtrl::SetFont( const wxFont& font )
{
if ( !wxTextCtrlBase::SetFont( font ) )
@@ -381,18 +376,21 @@ void wxTextCtrl::OnChar(wxKeyEvent& event)
return ;
}
// Check if we have reached the max # of chars (if it is set), but still
// allow navigation and deletion
GetSelection( &from, &to );
if ( !IsMultiLine() && m_maxLength && GetValue().length() >= m_maxLength &&
!event.IsKeyInCategory(WXK_CATEGORY_ARROW | WXK_CATEGORY_TAB | WXK_CATEGORY_CUT) &&
!( key == WXK_RETURN && (m_windowStyle & wxTE_PROCESS_ENTER) ) &&
from == to )
if ( !GetTextPeer()->CanClipMaxLength() )
{
// eat it, we don't want to add more than allowed # of characters
// Check if we have reached the max # of chars (if it is set), but still
// allow navigation and deletion
GetSelection( &from, &to );
if ( !IsMultiLine() && m_maxLength && GetValue().length() >= m_maxLength &&
!event.IsKeyInCategory(WXK_CATEGORY_ARROW | WXK_CATEGORY_TAB | WXK_CATEGORY_CUT) &&
!( key == WXK_RETURN && (m_windowStyle & wxTE_PROCESS_ENTER) ) &&
from == to )
{
// eat it, we don't want to add more than allowed # of characters
// TODO: generate EVT_TEXT_MAXLEN()
return;
// TODO: generate EVT_TEXT_MAXLEN()
return;
}
}
// assume that any key not processed yet is going to modify the control