@@ -26,7 +26,7 @@ QgsDefaultSearchWidgetWrapper::QgsDefaultSearchWidgetWrapper( QgsVectorLayer* vl
26
26
, mLineEdit( NULL )
27
27
, mCheckbox( NULL )
28
28
, mContainer( NULL )
29
- , mCaseString(QString(" LIKE" ) )
29
+ , mCaseString( QString( " LIKE" ) )
30
30
{
31
31
}
32
32
@@ -36,67 +36,72 @@ QString QgsDefaultSearchWidgetWrapper::expression()
36
36
return mExpression ;
37
37
}
38
38
39
- void QgsDefaultSearchWidgetWrapper::setCaseString (int caseSensitiveCheckState)
39
+ void QgsDefaultSearchWidgetWrapper::setCaseString ( int caseSensitiveCheckState )
40
40
{
41
- if ( caseSensitiveCheckState == Qt::Checked)
42
- {
43
- mCaseString = " LIKE" ;
44
- }
45
- else
46
- {
47
- mCaseString = " ILIKE" ;
48
- }
49
- // need to update also the line edit
50
- setExpression (mLineEdit ->text ());
41
+ if ( caseSensitiveCheckState == Qt::Checked )
42
+ {
43
+ mCaseString = " LIKE" ;
44
+ }
45
+ else
46
+ {
47
+ mCaseString = " ILIKE" ;
48
+ }
49
+ // need to update also the line edit
50
+ setExpression ( mLineEdit ->text () );
51
51
}
52
52
53
- void QgsDefaultSearchWidgetWrapper::setExpression (QString exp)
53
+ void QgsDefaultSearchWidgetWrapper::setExpression ( QString exp )
54
54
{
55
- QVariant::Type fldType = layer ()->pendingFields ()[mFieldIdx ].type ();
56
- bool numeric = ( fldType == QVariant::Int || fldType == QVariant::Double || fldType == QVariant::LongLong );
57
-
58
- QSettings settings;
59
- QString nullValue = settings.value ( " qgis/nullValue" , " NULL" ).toString ();
60
- QString fieldName = layer ()->pendingFields ()[mFieldIdx ].name ();
61
- QString str;
62
- if ( exp == nullValue )
63
- {
64
- str = QString ( " %1 IS NULL" ).arg ( QgsExpression::quotedColumnRef ( fieldName ) );
65
- }
66
- else
67
- {
68
- str = QString ( " %1 %2 '%3'" )
69
- .arg ( QgsExpression::quotedColumnRef ( fieldName ) )
70
- .arg ( numeric ? " =" : mCaseString )
71
- .arg ( numeric
72
- ? exp .replace ( " '" , " ''" )
73
- :
74
- " %" + exp .replace ( " '" , " ''" ) + " %" ); // escape quotes
75
- }
76
- mExpression = str;
77
- emit expressionChanged (mExpression );
55
+ QVariant::Type fldType = layer ()->pendingFields ()[mFieldIdx ].type ();
56
+ bool numeric = ( fldType == QVariant::Int || fldType == QVariant::Double || fldType == QVariant::LongLong );
57
+
58
+ QSettings settings;
59
+ QString nullValue = settings.value ( " qgis/nullValue" , " NULL" ).toString ();
60
+ QString fieldName = layer ()->pendingFields ()[mFieldIdx ].name ();
61
+ QString str;
62
+ if ( exp == nullValue )
63
+ {
64
+ str = QString ( " %1 IS NULL" ).arg ( QgsExpression::quotedColumnRef ( fieldName ) );
65
+ }
66
+ else
67
+ {
68
+ str = QString ( " %1 %2 '%3'" )
69
+ .arg ( QgsExpression::quotedColumnRef ( fieldName ) )
70
+ .arg ( numeric ? " =" : mCaseString )
71
+ .arg ( numeric
72
+ ? exp .replace ( " '" , " ''" )
73
+ :
74
+ " %" + exp .replace ( " '" , " ''" ) + " %" ); // escape quotes
75
+ }
76
+ mExpression = str;
77
+ emit expressionChanged ( mExpression );
78
78
}
79
79
80
80
QWidget* QgsDefaultSearchWidgetWrapper::createWidget ( QWidget* parent )
81
81
{
82
82
return new QWidget ( parent );
83
83
}
84
84
85
- bool QgsDefaultSearchWidgetWrapper::applyDirectly ()
85
+ bool QgsDefaultSearchWidgetWrapper::applyDirectly ()
86
86
{
87
- return false ;
87
+ return false ;
88
88
}
89
89
90
90
void QgsDefaultSearchWidgetWrapper::initWidget ( QWidget* widget )
91
91
{
92
92
mContainer = widget;
93
- mContainer ->setLayout (new QHBoxLayout () );
93
+ mContainer ->setLayout ( new QHBoxLayout () );
94
94
mLineEdit = new QgsFilterLineEdit ();
95
- mCheckbox = new QCheckBox (" Case sensitive" );
96
- mContainer ->layout ()->addWidget (mLineEdit );
97
- mContainer ->layout ()->addWidget (mCheckbox );
95
+ mCheckbox = new QCheckBox ( " Case sensitive" );
96
+ mContainer ->layout ()->addWidget ( mLineEdit );
97
+ mContainer ->layout ()->addWidget ( mCheckbox );
98
98
connect ( mLineEdit , SIGNAL ( textChanged ( QString ) ), this , SLOT ( setExpression ( QString ) ) );
99
- connect ( mCheckbox , SIGNAL ( stateChanged ( int ) ), this , SLOT ( setCaseString (int ) ) );
100
- mCheckbox ->setChecked (Qt::Unchecked);
99
+ connect ( mCheckbox , SIGNAL ( stateChanged ( int ) ), this , SLOT ( setCaseString ( int ) ) );
100
+ mCheckbox ->setChecked ( Qt::Unchecked );
101
101
mCaseString = " ILIKE" ;
102
102
}
103
+
104
+ bool QgsDefaultSearchWidgetWrapper::valid ()
105
+ {
106
+ return true ;
107
+ }
0 commit comments