29#ifndef OPENSWMM_RENDER_RULELIST_H
30#define OPENSWMM_RENDER_RULELIST_H
62 [[nodiscard]]
int count()
const;
67 [[nodiscard]]
int activeIndex()
const {
return m_activeIndex; }
88 bool move(
int from,
int to);
99 [[nodiscard]] QJsonArray
toJson()
const;
105 void fromJson(
const QJsonArray &arr);
133 void connectRule(
Rule *r);
135 std::vector<std::unique_ptr<Rule>> m_rules;
136 int m_activeIndex = -1;
One layer-scope styled aspect — name + renderer + filter + scale.
Definition rule.h:51
Ordered owning container for Rules on one layer.
Definition rulelist.h:48
bool isEmpty() const
Definition rulelist.h:63
Rule * activeRule() const
Definition rulelist.cpp:44
RuleList & operator=(const RuleList &)=delete
bool remove(int index)
Remove the Rule at index. Returns true on success. Active index is adjusted so the same Rule (or its ...
Definition rulelist.cpp:100
RuleList(RuleList &&)=delete
Rule * append(std::unique_ptr< Rule > rule)
Append a Rule. The list takes ownership and reparents the Rule. Returns the raw pointer for caller co...
Definition rulelist.cpp:64
QJsonArray toJson() const
Definition rulelist.cpp:173
void clear()
Remove every Rule.
Definition rulelist.cpp:150
RuleList(const RuleList &)=delete
int activeIndex() const
Definition rulelist.h:67
void loadLegacySublayersAsRules(const QJsonArray &sublayers)
Migrate a legacy "sublayers" array (shipped .oswp format — see RENDERING_OUTPUT_SUBLAYERS_PLAN....
Definition rulelist.cpp:201
void activeIndexChanged(int i)
Rule * at(int index) const
Definition rulelist.cpp:27
bool move(int from, int to)
Move the Rule at from to position to. Returns false if either index is out of range or from == to....
Definition rulelist.cpp:122
void fromJson(const QJsonArray &arr)
Re-populate from a previously produced QJsonArray. Entries that fail Rule::fromJson() are skipped (fo...
Definition rulelist.cpp:181
RuleList & operator=(RuleList &&)=delete
Rule * insert(int index, std::unique_ptr< Rule > rule)
Insert at index. index is clamped to [0, count()].
Definition rulelist.cpp:79
void setActiveIndex(int index)
Update the active index. Clamped to [-1, count()-1]; -1 means no active selection.
Definition rulelist.cpp:162
int indexOf(const Rule *rule) const
Definition rulelist.cpp:34
size_t i
Definition contourjob.cpp:27
int index
Position in m_quadRegions / m_quadReports.
Definition meshgenerator.cpp:153
Definition gisrasterlayer.h:40
QVector< int > parent
union-find
Definition pslgminsize.cpp:176
Layer-scope Rule — one styled aspect of a layer.