Commit Graph

84 Commits

Author SHA1 Message Date
ali kettab
36f6f8ad49 wxTextValidator improvements
Improve char inclusion/exclusion support; update the sample to show more
features of this class and add a unit test for it.

Closes https://github.com/wxWidgets/wxWidgets/pull/1093
2019-01-05 23:33:35 +01:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Vadim Zeitlin
7b7f3b0132 Revert "Don't intercept accelerators in wxTextValidator in wxGTK."
Testing for absence of Alt modifier is wrong as it could be specified for the
events generated by AltGr-letter key combinations (AltGr is Alt+Ctrl), so this
commit broke the validation of any such symbols entered from non-US keyboard.

This is worse than the problem it was trying to fix, so revert this for now.
The real fix will need to ensure that the mnemonics are checked first, i.e.
before generating EVT_CHAR, in wxGTK, just as it already happens in wxMSW.

This reverts r75453.

See #15777.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75521 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-01-03 01:34:05 +00:00
Vadim Zeitlin
b72899d142 Don't intercept accelerators in wxTextValidator in wxGTK.
Key events with modifiers shouldn't be filtered by the validator as they are
used as accelerators and not for the text entry at all.

Closes #15777.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75453 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-12-29 00:19:17 +00:00
Vadim Zeitlin
cb20b3453e Simplify wxTextValidator EVT_CHAR handler.
Ignore the event by default to reduce the number of event.Skip() calls.

No changes in the code behaviour.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75452 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-12-29 00:19:15 +00:00
Vadim Zeitlin
aff918ab1d Handle Unicode keys correctly in wxTextValidator.
Don't allow entering arbitrary Unicode keys in wxTextValidator limited to
digits only, for example.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75451 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-12-29 00:19:12 +00:00
Vadim Zeitlin
a425e9f70d Make wxTextValidator validation error messages more informative.
Saying that "something is invalid" really doesn't help much at all, so try to
be at least a bit more informative.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-12-29 00:01:47 +00:00
Vadim Zeitlin
39edfa27a2 Make wxFILTER_INCLUDE_LIST in wxTextValidator actually usable.
Only check for its violation once the full text is entered as otherwise
nothing could ever be entered when it was used.

Closes #15778.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-12-29 00:01:43 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
Vadim Zeitlin
345c78ca5f Use wxDynamicCast() instead of IsKindOf() checks.
wxDynamicCast() is less verbose (due to the absence of "CLASSINFO") and more
compatible with the standard dynamic_cast<>, so prefer to use it when possible.

See #14356.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@71624 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2012-06-01 11:01:18 +00:00
Jaakko Salli
fda6279358 Instead of having wxComboCtrl mimic wxTextEntry interface, make it actually inherit from the class and implement functions to redirect to the embedded wxTextCtrl. This allows us to simplify the code and get rid of the dirty trick of directing wxComboCtrl's validator to the embedded wxTextCtrl. Also see #12779, which issue 1 is fixed by this change.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66385 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-12-16 17:21:49 +00:00
Vadim Zeitlin
90497db95b Correct wxFILTER_DIGITS handling broken by r63582.
The fix in r63582 accidentally omitted the "!" in wxFILTER_DIGITS check.

Restore it.

Closes #11838.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63732 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-03-21 11:06:36 +00:00
Vadim Zeitlin
3e026ad22e Fix for wxStringCheck compilation under IRIX using mipsPro.
IRIX mipsPro 7.4 refuses to instantiate a template with an inline function as
parameter. Work around this by using a function taking a function pointer
instead of using template wxStringCheck with inline wxIs{alpha,alnum,digit}.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63582 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-02-28 11:09:11 +00:00
Vadim Zeitlin
9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
4b6a582bef replace more __WXDEBUG__ occurrences with wxDEBUG_LEVEL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59725 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-22 12:53:48 +00:00
Francesco Montorsi
af59b3fc6d even more user-friendly message (as suggested by John Roberts)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58908 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-15 12:19:08 +00:00
Francesco Montorsi
56364fa221 more user-friendly error message
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-06 17:03:12 +00:00
Francesco Montorsi
58fa61dbad Re-add support for multiple text validator styles but
1) catch some invalid configurations in SetStyle()
2) document the order of the checks in wxTextValidator
3) implement wxFILTER_EMPTY
4) rename wxFILTER_SIMPLE_NUMBER => wxFILTER_DIGITS



git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58637 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-03 21:21:47 +00:00
Francesco Montorsi
fcd209b6a2 add SetCharIncludes and SetCharExcludes utilities to wxTextValidator; use iterators when scanning wxStrings; fix typo in ContainsExcludedCharacters (reversed return values); modify the sample to show wxTextValidator with wxFILTER_EXCLUDE_CHAR_LIST
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58573 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-31 22:41:51 +00:00
Francesco Montorsi
1406dc01b2 give better names to wxTextValidator::IsInCharIncludes and to wxTextValidator::IsNotInCharExcludes; add wxFILTER_SIMPLE_NUMBER style; remove specialized global helpers used by wxTextValidator in favour of wxStringCheck templated calls; better document the wxFILTER_* styles which use ctype standard functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58569 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-31 21:27:27 +00:00
Francesco Montorsi
10b0f4894b cleanup code and reorganize it to reuse the same switch() for both OnChar() and Validate()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58524 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-30 17:22:05 +00:00
Francesco Montorsi
16d4ffde1e do not assert when the validator style == wxFILTER_NONE
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58105 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-14 19:21:26 +00:00
Francesco Montorsi
40ae960071 Fix wxTextValidator introducing a wxTextValidatorStyle enums since it does not support multiple combined styles; fix wxTextValidator::Validate when wxFILTER_EXCLUDE_LIST is used; fixes #1211
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-09 12:43:20 +00:00
Vadim Zeitlin
f172cb8200 removed support for Salford compiler (which was almost certainly broken anyhow) (patch 1861133)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50960 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-12-31 10:05:00 +00:00
Vadim Zeitlin
978c6e4113 implemented wxTextEntry for wxMotif, made wxComboBox derive from it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49667 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-05 23:13:09 +00:00
Vadim Zeitlin
7b235dce88 temporary wxMotif compilation fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-05 21:21:09 +00:00
Paul Cornett
92646f5a74 build fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49594 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-02 05:04:26 +00:00
Vadim Zeitlin
472eec8a03 use wxTextEntry in wxTextValidator (modified patch 1821743)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49591 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-11-01 20:52:40 +00:00
Vadim Zeitlin
c1dc9f8394 removed WXWIN_COMPATIBILITY_2_4 from common and wxMSW files (patch 1675546)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44625 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-07 11:35:04 +00:00
Włodzimierz Skiba
264cb7f5f3 Include wx/validate.h and wx/valtext.h according to precompiled headers of wx/wx.h (with other minor cleaning).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-06-09 21:21:53 +00:00
Julian Smart
14d776932c Fix for [ 1351655 ] wxTextValidator::OnChar not working with numeric filter
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37036 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-21 15:13:00 +00:00
Julian Smart
f7f00d8a1d Fix for bug [ 1351659 ] wxTextValidator::Validate not Unicode safe
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37035 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-01-21 15:09:20 +00:00
Mart Raudsepp
8907154c1a Nuke #pragma implementation/interface's
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35650 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-09-23 12:56:45 +00:00
Vadim Zeitlin
8067659371 compilation fix for wxUSE_STL==1
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32246 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-20 14:38:17 +00:00
Ryan Norton
f94a790daf change wxTextValidator to use wxArrayString instead of wxStringList
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@31844 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-02-07 23:46:42 +00:00
Ryan Norton
0c6099b79e Revert files to previous version that were affected by wxIsXXX((wxChar)X) change. Note - passing a negative value to those c lib functions is undefined, and could return true on platforms using a lookup table, for example (might crash also?), which is what will happen when casting to char to ansii mode and a char is above 127
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-06 07:09:35 +00:00
Włodzimierz Skiba
32b1391332 Warning fixes to unused variables, int/wxChar keycode and other typecasting, not mixing 'type*' and 'type' variables in single line, IsEmpty to empty replacement etc.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30305 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-05 21:18:04 +00:00
Włodzimierz Skiba
1b941f2d31 Warning fixes for OpenWatcom.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29961 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-18 05:56:07 +00:00
Włodzimierz Skiba
cab1a6053d Source cleaning: whitespaces, tabs, -1/wxID_ANY/wxNOT_FOUND/wxDefaultCoord, TRUE/true, FALSE/false.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@29319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-09-24 14:32:35 +00:00
Julian Smart
655719367a Use old licence name
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27408 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 20:53:33 +00:00
Julian Smart
77ffb5937e Name and version changes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27404 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-05-23 14:56:36 +00:00
Václav Slavík
14f355c2b5 added support for gcc precompiled headers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-08-09 12:46:53 +00:00
Mattia Barbon
7df07b10aa various compilation/warning fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@22258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-23 19:04:42 +00:00
Julian Smart
0be9ace27e Added RTL functions missing from WinCE to wxchar.h/cpp
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21987 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-15 13:46:39 +00:00
Vadim Zeitlin
52cd14b1c8 [attempt to] fix a warning
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-11 22:29:40 +00:00
Julian Smart
4676948b68 More WinCE mods
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21902 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-11 21:50:07 +00:00
Julian Smart
b1e4e7cc96 Oops, no such function as wxIsascii
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-11 11:28:11 +00:00
Julian Smart
1c193821a9 More WinCE mods.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21890 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-11 11:21:47 +00:00
Mattia Barbon
222ed1d678 STL-ification patch for wxMSW and wxGTK.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21876 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-10 19:55:12 +00:00
Julian Smart
7f03dc2854 Applied patch [ 762033 ] wxTextValidator crashes when given a NULL wxString
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@21839 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2003-07-10 08:21:49 +00:00