add method off style to check for active rules

This commit is contained in:
Dane Springmeyer 2012-09-14 16:11:37 -07:00
parent 9b5189abf0
commit 1b3dcda87d
2 changed files with 18 additions and 3 deletions

View file

@ -72,17 +72,17 @@ public:
feature_type_style& operator=(feature_type_style const& rhs);
void add_rule(rule const& rule);
rules const& get_rules() const;
rule_ptrs const& get_if_rules(double scale_denom);
rule_ptrs const& get_else_rules(double scale_denom);
rule_ptrs const& get_also_rules(double scale_denom);
rules& get_rules_nonconst();
void set_filter_mode(filter_mode_e mode);
bool active(double scale_denom) const;
void set_filter_mode(filter_mode_e mode);
filter_mode_e get_filter_mode() const;
// filters
std::vector<filter::filter_type> const& image_filters() const;
std::vector<filter::filter_type> & image_filters();

View file

@ -22,6 +22,9 @@
#include <mapnik/feature_type_style.hpp>
// boost
#include <boost/foreach.hpp>
namespace mapnik
{
@ -89,6 +92,18 @@ rules& feature_type_style::get_rules_nonconst()
return rules_;
}
bool feature_type_style::active(double scale_denom) const
{
BOOST_FOREACH(rule const& r, rules_)
{
if (r.active(scale_denom))
{
return true;
}
}
return false;
}
void feature_type_style::set_filter_mode(filter_mode_e mode)
{
filter_mode_ = mode;