litesoft
Diff Revisions
199
vs
200
for /trunk/Java/GWT/Client/src/org/litesoft/GWT/forms/client/QBE_FormEngine.java
|
@@ -12,6 +12,7 @@ |
12 |
12 |
|
|
13 |
13 |
|
public class QBE_FormEngine extends FormEngine |
14 |
14 |
|
{ |
|
15 |
+ |
protected UpdateFilterTransformer mFilterTransformer = NormalUpdateFilterTransformer.INSTANCE; |
15 |
16 |
|
protected BoAccessorFilter mFilter; |
16 |
17 |
|
protected SearchStateDefaultRequestable mSSDR; |
17 |
18 |
|
protected SizeableQBEboxedPanel mQBEboxedPanel; |
|
@@ -109,14 +110,17 @@ |
109 |
110 |
|
|
110 |
111 |
|
protected void updateFilter( String pName, String pValStr ) |
111 |
112 |
|
{ |
112 |
|
- |
if ( isUnique( pName ) ) |
113 |
|
- |
{ |
114 |
|
- |
mFilter.uniqueFilterValueChanged( pName, pValStr ); |
115 |
|
- |
} |
116 |
|
- |
else |
117 |
|
- |
{ |
118 |
|
- |
mFilter.nonUniqueFilterValueChanged( pName, pValStr ); |
119 |
|
- |
} |
|
113 |
+ |
mFilterTransformer.updateFilter( mFilter, isUnique( pName ), pName, pValStr ); |
|
114 |
+ |
} |
|
115 |
+ |
|
|
116 |
+ |
public UpdateFilterTransformer getFilterTransformer() |
|
117 |
+ |
{ |
|
118 |
+ |
return mFilterTransformer; |
|
119 |
+ |
} |
|
120 |
+ |
|
|
121 |
+ |
public void setFilterTransformer( UpdateFilterTransformer pFilterTransformer ) |
|
122 |
+ |
{ |
|
123 |
+ |
mFilterTransformer = (pFilterTransformer != null) ? pFilterTransformer : NormalUpdateFilterTransformer.INSTANCE; |
120 |
124 |
|
} |
121 |
125 |
|
|
122 |
126 |
|
private boolean isSearchFilter( IFormComponent pComponent ) |
|
@@ -177,4 +181,22 @@ |
177 |
181 |
|
{ |
178 |
182 |
|
mSSDR.setSearching( Mode.Search.equals( mMode ) ); |
179 |
183 |
|
} |
|
184 |
+ |
|
|
185 |
+ |
private static class NormalUpdateFilterTransformer implements UpdateFilterTransformer |
|
186 |
+ |
{ |
|
187 |
+ |
public static UpdateFilterTransformer INSTANCE = new NormalUpdateFilterTransformer(); |
|
188 |
+ |
|
|
189 |
+ |
@Override |
|
190 |
+ |
public void updateFilter( BoAccessorFilter pFilter, boolean pUniqueAttribute, String pAttributeName, String pValue ) |
|
191 |
+ |
{ |
|
192 |
+ |
if ( pUniqueAttribute ) |
|
193 |
+ |
{ |
|
194 |
+ |
pFilter.uniqueFilterValueChanged( pAttributeName, pValue ); |
|
195 |
+ |
} |
|
196 |
+ |
else |
|
197 |
+ |
{ |
|
198 |
+ |
pFilter.nonUniqueFilterValueChanged( pAttributeName, pValue ); |
|
199 |
+ |
} |
|
200 |
+ |
} |
|
201 |
+ |
} |
180 |
202 |
|
} |