]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/valtext.cpp
require libsm-dev, it's needed for KDE/GNOME detection
[wxWidgets.git] / src / common / valtext.cpp
index ee3440fdbd617e86d7a0ab109a1e5f713645ec22..4e351477d7622ebd5c4d317873d106b7ec050e2f 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        valtext.cpp
+// Name:        src/common/valtext.cpp
 // Purpose:     wxTextValidator
 // Author:      Julian Smart
 // Modified by:
@@ -18,6 +18,8 @@
 
 #if wxUSE_VALIDATORS && wxUSE_TEXTCTRL
 
+#include "wx/valtext.h"
+
 #ifndef WX_PRECOMP
   #include <stdio.h>
   #include "wx/textctrl.h"
@@ -26,8 +28,6 @@
   #include "wx/intl.h"
 #endif
 
-#include "wx/valtext.h"
-
 #include <ctype.h>
 #include <string.h>
 #include <stdlib.h>
@@ -78,7 +78,7 @@ bool wxTextValidator::Copy(const wxTextValidator& val)
 static bool wxIsAlpha(const wxString& val)
 {
     int i;
-    for ( i = 0; i < (int)val.Length(); i++)
+    for ( i = 0; i < (int)val.length(); i++)
     {
         if (!wxIsalpha(val[i]))
             return false;
@@ -89,7 +89,7 @@ static bool wxIsAlpha(const wxString& val)
 static bool wxIsAlphaNumeric(const wxString& val)
 {
     int i;
-    for ( i = 0; i < (int)val.Length(); i++)
+    for ( i = 0; i < (int)val.length(); i++)
     {
         if (!wxIsalnum(val[i]))
             return false;
@@ -211,67 +211,10 @@ bool wxTextValidator::TransferFromWindow(void)
     return true;
 }
 
-#if WXWIN_COMPATIBILITY_2_4
-
-inline void wxCopyStringListToArrayString(wxArrayString& to, const wxStringList& from)
-{
-    to.Clear();
-
-    for ( wxStringList::compatibility_iterator pNode = from.GetFirst();
-          pNode;
-          pNode = pNode->GetNext() )
-    {
-        to.Add(pNode->GetData());
-    }
-}
-
-inline void wxCopyArrayStringToStringList(wxStringList& to, const wxArrayString& from)
-{
-    to.Clear();
-
-    for(size_t i = 0; i < from.GetCount(); ++i)
-        to.Add(from[i]);
-}
-
-wxStringList& wxTextValidator::GetIncludeList()
-{
-    wxCopyArrayStringToStringList(m_includeList, m_includes);
-    return m_includeList;
-}
-
-wxStringList& wxTextValidator::GetExcludeList()
-{
-    wxCopyArrayStringToStringList(m_excludeList, m_excludes);
-    return m_excludeList;
-}
-
-void wxTextValidator::SetIncludeList(const wxStringList& list)
-{
-    wxCopyStringListToArrayString(m_includes, list);
-}
-
-void wxTextValidator::SetExcludeList(const wxStringList& list)
-{
-    wxCopyStringListToArrayString(m_excludes, list);
-}
-
-bool wxTextValidator::IsInCharIncludeList(const wxString& val)
-{
-    return IsInCharIncludes(val);
-}
-
-bool wxTextValidator::IsNotInCharExcludeList(const wxString& val)
-{
-    return IsNotInCharExcludes(val);
-}
-
-#endif //compat 2.4
-
-
 bool wxTextValidator::IsInCharIncludes(const wxString& val)
 {
     size_t i;
-    for ( i = 0; i < val.Length(); i++)
+    for ( i = 0; i < val.length(); i++)
     {
         if (m_includes.Index((wxString) val[i]) == wxNOT_FOUND)
             return false;
@@ -282,7 +225,7 @@ bool wxTextValidator::IsInCharIncludes(const wxString& val)
 bool wxTextValidator::IsNotInCharExcludes(const wxString& val)
 {
     size_t i;
-    for ( i = 0; i < val.Length(); i++)
+    for ( i = 0; i < val.length(); i++)
     {
        if (m_excludes.Index((wxString) val[i]) != wxNOT_FOUND)
             return false;
@@ -311,7 +254,7 @@ void wxTextValidator::OnChar(wxKeyEvent& event)
               ((m_validatorStyle & wxFILTER_ALPHA) && !wxIsalpha(keyCode)) ||
               ((m_validatorStyle & wxFILTER_ALPHANUMERIC) && !wxIsalnum(keyCode)) ||
               ((m_validatorStyle & wxFILTER_NUMERIC) && !wxIsdigit(keyCode)
-                                && keyCode != wxT('.') && keyCode != wxT(',') && keyCode != wxT('-'))
+                                && keyCode != wxT('.') && keyCode != wxT(',') && keyCode != wxT('-') && keyCode != wxT('+') && keyCode != wxT('e') && keyCode != wxT('E'))
              )
            )
         {
@@ -329,7 +272,7 @@ void wxTextValidator::OnChar(wxKeyEvent& event)
 static bool wxIsNumeric(const wxString& val)
 {
     int i;
-    for ( i = 0; i < (int)val.Length(); i++)
+    for ( i = 0; i < (int)val.length(); i++)
     {
         // Allow for "," (French) as well as "." -- in future we should
         // use wxSystemSettings or other to do better localisation