From 9be2869c6ebad21621e10b3bd9e82dc811b75d2d Mon Sep 17 00:00:00 2001 From: deva Date: Thu, 12 Feb 2009 14:42:12 +0000 Subject: Added formatlanguage attribute to metawidget, and implemented lua parser for it. --- client/widgets/metawidget.cc | 8 +++++++- client/widgets/metawidget.h | 1 + client/widgets/widget.cc | 5 ++++- 3 files changed, 12 insertions(+), 2 deletions(-) (limited to 'client/widgets') diff --git a/client/widgets/metawidget.cc b/client/widgets/metawidget.cc index 5102a04..c085f10 100644 --- a/client/widgets/metawidget.cc +++ b/client/widgets/metawidget.cc @@ -55,6 +55,12 @@ MetaWidget::MetaWidget(QDomNode &node, MacroWindow *macrowindow) else macrowindow->addAuxWidgets(widgets); // Setup format string + if(elem.hasAttribute("formatlanguage")) { + formatlanguage = elem.attribute("formatlanguage"); + } else { + formatlanguage = "pracro"; + } + if(elem.hasAttribute("format")) { format = elem.attribute("format"); } else { @@ -83,7 +89,7 @@ void MetaWidget::changed() QString MetaWidget::getValue() { - return format_parser(format, widgets); + return format_parser(format, widgets, formatlanguage); } void MetaWidget::setValue(QString, QString) diff --git a/client/widgets/metawidget.h b/client/widgets/metawidget.h index 77b79d7..022197a 100644 --- a/client/widgets/metawidget.h +++ b/client/widgets/metawidget.h @@ -70,6 +70,7 @@ private: QListWidget *list; QVector< Widget* > widgets; QString format; + QString formatlanguage; bool storechildren; }; diff --git a/client/widgets/widget.cc b/client/widgets/widget.cc index 0857d67..870fc4b 100644 --- a/client/widgets/widget.cc +++ b/client/widgets/widget.cc @@ -81,8 +81,11 @@ bool Widget::regexpValidator() bool Widget::luaValidator() { if(!hasluaprogram) return true; + + if(macrowindow->luaprograms.contains(luaprogram) == false) return false; + QString program = macrowindow->luaprograms.value(luaprogram); - return macrowindow->lua->run(luaprogram, getName(), getValue()); + return macrowindow->lua->runValidator(program, getName(), getValue()); } void Widget::setInitialValue(QString value) -- cgit v1.2.3