--- a/filemanager/src/filemanager/src/components/fmsingletextquery.cpp Fri Jun 25 17:08:34 2010 +0800
+++ b/filemanager/src/filemanager/src/components/fmsingletextquery.cpp Fri Jul 09 11:17:55 2010 +0800
@@ -19,14 +19,14 @@
#include "fmsingletextquery.h"
#include <QGraphicsLinearLayout>
+#include <QRegExp>
#include <hbwidget.h>
#include <hblineedit.h>
#include <hbaction.h>
-FmSingleTextQuery::FmSingleTextQuery( Options options,
- HbLineEdit::EchoMode echoMode, QGraphicsItem *parent ) :
- FmDialog( parent ), mOptions( options ), mEchoMode( echoMode )
+FmSingleTextQuery::FmSingleTextQuery( HbLineEdit::EchoMode echoMode, QGraphicsItem *parent ) :
+ FmDialog( parent ), mEchoMode( echoMode )
{
init();
}
@@ -74,13 +74,26 @@
mTextEdit->setMaxLength( length );
}
+void FmSingleTextQuery::setRegExpStringList( QStringList regExpStringList )
+{
+ mRegExpStringList = regExpStringList;
+}
+
void FmSingleTextQuery::checkActions()
{
- if( mOptions & DimPrimereActionWhenEmpty ) {
- if( !mTextEdit->text().isEmpty() ){
- this->primaryAction()->setEnabled( true );
- } else {
- this->primaryAction()->setEnabled( false );
+ // check if all regExp match, disable primary action if not match
+ bool validateResult = true;
+ foreach( const QString ®ExpString, mRegExpStringList ) {
+ if( !regExpString.isEmpty() ) {
+ QRegExp regExp( regExpString );
+ if( !regExp.exactMatch( mTextEdit->text() ) ) {
+ validateResult = false;
+ }
}
}
+ if( validateResult ) {
+ this->primaryAction()->setEnabled( true );
+ } else {
+ this->primaryAction()->setEnabled( false );
+ }
}