aboutsummaryrefslogtreecommitdiffstats
path: root/src/modules/objects/class_lineedit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/objects/class_lineedit.cpp')
-rw-r--r--src/modules/objects/class_lineedit.cpp17
1 files changed, 15 insertions, 2 deletions
diff --git a/src/modules/objects/class_lineedit.cpp b/src/modules/objects/class_lineedit.cpp
index 155f31bbc..7776acd42 100644
--- a/src/modules/objects/class_lineedit.cpp
+++ b/src/modules/objects/class_lineedit.cpp
@@ -25,7 +25,7 @@
#include "kvi_debug.h"
#include "kvi_locale.h"
#include "class_lineedit.h"
-
+ #include <QRegExpValidator>
#include <QLineEdit>
static const char * mode_tbl[] = {
"Normal",
@@ -191,6 +191,8 @@ KVSO_BEGIN_REGISTERCLASS(KviKvsObject_lineedit,"lineedit","widget")
KVSO_REGISTER_HANDLER(KviKvsObject_lineedit,"cut", functionCut)
KVSO_REGISTER_HANDLER(KviKvsObject_lineedit,"paste", functionPaste)
+
+
KVSO_REGISTER_HANDLER(KviKvsObject_lineedit,"echoMode", functionEchoMode)
KVSO_REGISTER_HANDLER(KviKvsObject_lineedit,"setEchoMode", functionSetEchoMode)
KVSO_REGISTER_HANDLER(KviKvsObject_lineedit,"clear", functionClear)
@@ -201,6 +203,8 @@ KVSO_BEGIN_REGISTERCLASS(KviKvsObject_lineedit,"lineedit","widget")
KVSO_REGISTER_HANDLER(KviKvsObject_lineedit,"lostFocusEvent", functionlostFocusEvent)
KVSO_REGISTER_HANDLER(KviKvsObject_lineedit,"textChangedEvent", functiontextChangedEvent)
+ KVSO_REGISTER_HANDLER(KviKvsObject_lineedit,"setInputValidator", functionsetInputValidator)
+
KVSO_END_REGISTERCLASS(KviKvsObject_lineedit)
@@ -241,7 +245,16 @@ bool KviKvsObject_lineedit::functionSetText(KviKvsObjectFunctionCall *c)
((QLineEdit *)widget())->setText(szText);
return true;
}
-
+bool KviKvsObject_lineedit::functionsetInputValidator(KviKvsObjectFunctionCall *c)
+{
+ QString szReg;
+ KVSO_PARAMETERS_BEGIN(c)
+ KVSO_PARAMETER("reg_expression",KVS_PT_STRING,0,szReg)
+ KVSO_PARAMETERS_END(c)
+ if (widget())
+ ((QLineEdit *)widget())->setValidator(new QRegExpValidator(QRegExp(szReg),((QLineEdit *)widget())));
+ return true;
+}
bool KviKvsObject_lineedit::functionMaxLength(KviKvsObjectFunctionCall *c)
{
if(widget())