@@ -390,6 +390,8 @@ class QgsRuleBasedRendererV2 : QgsFeatureRendererV2
390
390
391
391
public:
392
392
393
+ //typedef QList<QgsRuleBasedRendererV2::Rule*> RuleList;
394
+
393
395
/**
394
396
This class keeps data about a rules for rule-based renderer.
395
397
A rule consists of a symbol, filter expression and range of scales.
@@ -403,10 +405,10 @@ class QgsRuleBasedRendererV2 : QgsFeatureRendererV2
403
405
public:
404
406
//! Constructor takes ownership of the symbol
405
407
Rule( QgsSymbolV2* symbol /Transfer/, int scaleMinDenom = 0, int scaleMaxDenom = 0, QString filterExp = QString() );
406
- Rule( const QgsRuleBasedRendererV2::Rule& other );
408
+ // Rule( const QgsRuleBasedRendererV2::Rule& other );
407
409
~Rule();
408
410
QString dump() const;
409
- QStringList needsFields() const;
411
+ // QStringList needsFields() const;
410
412
bool isFilterOK( QgsFeature& f ) const;
411
413
bool isScaleOK( double scale ) const;
412
414
@@ -428,7 +430,9 @@ class QgsRuleBasedRendererV2 : QgsFeatureRendererV2
428
430
429
431
static QgsFeatureRendererV2* create( QDomElement& element ) /Factory/;
430
432
431
- //! Constructor. Takes ownership of the defult symbol.
433
+ //! Constructs the renderer from given tree of rules
434
+ QgsRuleBasedRendererV2( QgsRuleBasedRendererV2::Rule* root /Transfer/ );
435
+ //! Constructor for convenience. Creates a root rule and adds a default rule with symbol
432
436
QgsRuleBasedRendererV2( QgsSymbolV2* defaultSymbol /Transfer/ );
433
437
434
438
//! return symbol for current feature. Should not be used individually: there could be more symbols for a feature
@@ -454,27 +458,15 @@ class QgsRuleBasedRendererV2 : QgsFeatureRendererV2
454
458
455
459
/////
456
460
457
- //! return the total number of rules
458
- int ruleCount();
459
- //! get reference to rule at index (valid indexes: 0...count-1)
460
- QgsRuleBasedRendererV2::Rule& ruleAt( int index );
461
- //! add rule to the end of the list of rules
462
- void addRule( const QgsRuleBasedRendererV2::Rule& rule );
463
- //! insert rule to a specific position of the list of rules
464
- void insertRule( int index, const QgsRuleBasedRendererV2::Rule& rule );
465
- //! modify the rule at a specific position of the list of rules
466
- void updateRuleAt( int index, const QgsRuleBasedRendererV2::Rule& rule );
467
- //! remove the rule at the specified index
468
- void removeRuleAt( int index );
469
461
470
462
//////
471
463
472
464
//! take a rule and create a list of new rules based on the categories from categorized symbol renderer
473
- static QList< QgsRuleBasedRendererV2::Rule> refineRuleCategories( QgsRuleBasedRendererV2::Rule& initialRule, QgsCategorizedSymbolRendererV2* r );
465
+ // static QgsRuleBasedRendererV2::RuleList refineRuleCategories( QgsRuleBasedRendererV2::Rule* initialRule, QgsCategorizedSymbolRendererV2* r );
474
466
//! take a rule and create a list of new rules based on the ranges from graduated symbol renderer
475
- static QList< QgsRuleBasedRendererV2::Rule> refineRuleRanges( QgsRuleBasedRendererV2::Rule& initialRule, QgsGraduatedSymbolRendererV2* r );
467
+ // static QgsRuleBasedRendererV2::RuleList refineRuleRanges( QgsRuleBasedRendererV2::Rule* initialRule, QgsGraduatedSymbolRendererV2* r );
476
468
//! take a rule and create a list of new rules with intervals of scales given by the passed scale denominators
477
- static QList< QgsRuleBasedRendererV2::Rule> refineRuleScales( QgsRuleBasedRendererV2::Rule& initialRule, QList<int> scales );
469
+ // static QgsRuleBasedRendererV2::RuleList refineRuleScales( QgsRuleBasedRendererV2::Rule* initialRule, QList<int> scales );
478
470
479
471
};
480
472
0 commit comments