From fa2fa3dd9f0f3aca02c390e414c2c0e8b0946acd Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Tue, 23 Sep 2014 17:42:18 +0000 Subject: [PATCH] adjust the implementation about max length limitation according review comments git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@77821 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/univ/textctrl.h | 4 +-- src/univ/.textctrl.cpp.swp | Bin 192512 -> 16384 bytes src/univ/textctrl.cpp | 67 ++++++++++++++++++------------------- 3 files changed, 34 insertions(+), 37 deletions(-) diff --git a/include/wx/univ/textctrl.h b/include/wx/univ/textctrl.h index e7132f9a8b..53f5262c53 100644 --- a/include/wx/univ/textctrl.h +++ b/include/wx/univ/textctrl.h @@ -491,9 +491,7 @@ private: wxTextPos m_posLast; // max text line length - long m_maxLength; - // current text line length - long m_textLength; + unsigned long m_maxLength; // selection wxTextPos m_selAnchor, diff --git a/src/univ/.textctrl.cpp.swp b/src/univ/.textctrl.cpp.swp index 9a70922bb302ff8e5625e1035443f2ef58ae2510..6a25b49e6e4fc9f3c92371cd8e73c53becae5d29 100644 GIT binary patch delta 1166 zcmZA0%P#{#90%}UtDZ$yJ@!@{NH~atggXwJh%^!jiTATw)uPmM>vf=!kV)JmxYey3 z{1*}lCnOF|Ztg5YzmxdQT&BPMeCIdY-JRsCJDGG;k2Uvob=R~uwU8VJ(SVumZL4pg zgBa0bJaTeTm+5%(IQMPQX!x9aw(!eo*A}yK+Ofrh`E%No!sd`)D^ zOe=vZg>)c~r&r)7@Mq1J;ZgWpK3^Y)&%j@}x6={=#|U&5@CJ);b%T$ZFUWW0^%cet zONfluY>1*#cjYhQP3PfT;=^lN5mfTa_#16*o}N>^;c3moaP=Q+i~0HxTzxVJ+%1|# zAcPHU9-tsxz0zO_-(Uv5iuLcBPs0=N@zVe6<*ri*EFUo}PKCJbx^s@E+G=#uL_Bvhi01d*` i^YWFm281I^4Oo8)7Z;;FH-;-vbY0^zZe8cjPtOnWP*Z3C literal 192512 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 len ) + { + // block the wxEVT_TEXT event temporaryly + // otherwise Remove will generate a wxEVT_TEXT event + // that not what we want + ForwardEnableTextChangedEvents(false); + Remove(len, -1); + ForwardEnableTextChangedEvents(true); + } + m_maxLength = len; } @@ -4541,31 +4557,23 @@ bool wxTextCtrl::PerformAction(const wxControlAction& actionOrig, { if ( IsEditable() && !strArg.empty() ) { - if ( IsSingleLine() ) - { - // it is ugly, but we don't want calculate text length every time - // in multiline text ctrl. - m_textLength += strArg.Length(); + wxString acceptString = strArg; - if ( m_maxLength > 0 && m_textLength > m_maxLength ) - { - wxCommandEvent event(wxEVT_TEXT_MAXLEN, m_windowId); - InitCommandEvent(event); - GetEventHandler()->ProcessEvent(event); - // if m_textLength bigger than m_maxLength. it means not allow - // to insert new chars. - } - else - { - // inserting text can be undone, same as below - command = new wxTextCtrlInsertCommand(strArg); - } - } - else + unsigned long acceptableLength = m_maxLength - m_value.Length(); + + if ( m_maxLength > 0 && (strArg.Length() > acceptableLength) ) { - command = new wxTextCtrlInsertCommand(strArg); + wxCommandEvent event(wxEVT_TEXT_MAXLEN, m_windowId); + InitCommandEvent(event); + GetEventHandler()->ProcessEvent(event); + acceptString = strArg.Left(acceptableLength); } + + if ( acceptString.Length() > 0 ) + // inserting text can be undone + command = new wxTextCtrlInsertCommand(acceptString); } + } else if ( (action == wxACTION_TEXT_PAGE_UP) || (action == wxACTION_TEXT_PAGE_DOWN) ) @@ -4737,20 +4745,11 @@ bool wxTextCtrl::PerformAction(const wxControlAction& actionOrig, } } - // Submit call will insert text eventually, so if has command, - // then no need to process wxEVT_TEXT event again. + // Submit call will insert text and generate wxEVT_TEXT event. if ( command ) { // execute and remember it to be able to undo it later m_cmdProcessor->Submit(command); - } - else if ( IsEditable() && ( m_maxLength > 0 && m_textLength <= m_maxLength) ) - { - wxCommandEvent event(wxEVT_TEXT, GetId()); - InitCommandEvent(event); - GetEventHandler()->ProcessEvent(event); - - // as the text changed... m_isModified = true; }