16
16
* *
17
17
***************************************************************************/
18
18
/* $Id$ */
19
-
19
+
20
+ #include " qgslogger.h"
20
21
#include " qgssearchtreenode.h"
21
22
#include < qregexp.h>
22
23
#include < qobject.h>
23
24
#include < iostream>
24
25
25
- // turn on/off debugging of search tree evaulation
26
- #undef DEBUG_TREE_EVAL
27
26
28
- #ifdef DEBUG_TREE_EVAL
29
- #define TREE_EVAL (x ) std::cout << x;
30
- #define TREE_EVAL2 (x,y ) std::cout << x << y << std::endl;
31
- #define TREE_EVAL3 (x,y,z ) std::cout << x << y << z << std::endl;
32
- #define TREE_EVAL4 (x,y,z,zz ) std::cout << x << y << z << zz << std::endl;
33
27
#define EVAL_STR (x ) (x.length() ? x : " (empty)" )
34
- #else
35
- #define TREE_EVAL (x )
36
- #define TREE_EVAL2 (x,y )
37
- #define TREE_EVAL3 (x,y,z )
38
- #define TREE_EVAL4 (x,y,z,zz )
39
- #endif
40
28
41
29
QgsSearchTreeNode::QgsSearchTreeNode (double number)
42
30
{
@@ -194,7 +182,7 @@ QString QgsSearchTreeNode::makeSearchString()
194
182
195
183
bool QgsSearchTreeNode::checkAgainst (const std::vector<QgsFeatureAttribute>& attributes)
196
184
{
197
- TREE_EVAL2 (" checkAgainst: " , makeSearchString ());
185
+ QgsDebugMsgLevel (" checkAgainst: " + makeSearchString (), 2 );
198
186
199
187
mError = " " ;
200
188
@@ -275,8 +263,8 @@ bool QgsSearchTreeNode::checkAgainst(const std::vector<QgsFeatureAttribute>& att
275
263
276
264
QRegExp re (str);
277
265
res = re.search (value1.string ());
278
- TREE_EVAL4 (" REGEXP: " , str, " ~ " , value2.string ());
279
- TREE_EVAL2 (" res: " , res);
266
+ QgsDebugMsgLevel (" REGEXP: " + str + " ~ " + value2.string (), 2 );
267
+ QgsDebugMsgLevel (" res: " + res, 2 );
280
268
return (res != -1 );
281
269
}
282
270
@@ -324,22 +312,22 @@ bool QgsSearchTreeNode::getValue(QgsSearchTreeValue& value, QgsSearchTreeNode* n
324
312
325
313
QgsSearchTreeValue QgsSearchTreeNode::valueAgainst (const std::vector<QgsFeatureAttribute>& attributes)
326
314
{
327
- TREE_EVAL2 (" valueAgainst: " , makeSearchString ());
315
+ QgsDebugMsgLevel (" valueAgainst: " + makeSearchString (), 2 );
328
316
329
317
switch (mType )
330
318
{
331
319
332
320
case tNumber:
333
- TREE_EVAL2 (" number: " , mNumber );
321
+ QgsDebugMsgLevel (" number: " + QString::number ( mNumber ), 2 );
334
322
return QgsSearchTreeValue (mNumber );
335
323
336
324
case tString:
337
- TREE_EVAL2 (" text: " , EVAL_STR (mText ));
325
+ QgsDebugMsgLevel (" text: " + EVAL_STR (mText ), 2 );
338
326
return QgsSearchTreeValue (mText );
339
327
340
328
case tColumnRef:
341
329
{
342
- TREE_EVAL3 (" column (" , mText , " ): " ); ;
330
+ QgsDebugMsgLevel (" column (" + mText . lower () + " ): " , 2 ) ;
343
331
// find value for the column
344
332
std::vector<QgsFeatureAttribute>::const_iterator it;
345
333
for (it = attributes.begin (); it != attributes.end (); it++)
@@ -349,19 +337,19 @@ QgsSearchTreeValue QgsSearchTreeNode::valueAgainst(const std::vector<QgsFeatureA
349
337
QString value = (*it).fieldValue ();
350
338
if ((*it).isNumeric ())
351
339
{
352
- TREE_EVAL2 (" number: " , value.toDouble ());
340
+ QgsDebugMsgLevel (" number: " + QString::number ( value.toDouble ()), 2 );
353
341
return QgsSearchTreeValue (value.toDouble ());
354
342
}
355
343
else
356
344
{
357
- TREE_EVAL2 (" text: " , EVAL_STR (value));
345
+ QgsDebugMsgLevel (" text: " + EVAL_STR (value), 2 );
358
346
return QgsSearchTreeValue (value);
359
347
}
360
348
}
361
349
}
362
350
363
351
// else report missing column
364
- TREE_EVAL (" ERROR" );
352
+ QgsDebugMsgLevel (" ERROR! " , 2 );
365
353
return QgsSearchTreeValue (1 , mText );
366
354
}
367
355
@@ -424,7 +412,7 @@ int QgsSearchTreeValue::compare(QgsSearchTreeValue& value1, QgsSearchTreeValue&
424
412
else
425
413
val2 = value2.string ().toDouble ();
426
414
427
- TREE_EVAL4 (" NUM_COMP: " , val1, " ~ " , val2);
415
+ QgsDebugMsgLevel (" NUM_COMP: " + QString::number ( val1) + " ~ " + QString::number ( val2), 2 );
428
416
429
417
if (val1 < val2)
430
418
return -1 ;
0 commit comments