26#ifndef SWMMLAYERITEM_H
27#define SWMMLAYERITEM_H
29#include <QGraphicsItem>
38static constexpr int SWMMLayerItemType = QGraphicsItem::UserType + 20;
44 QGraphicsItem *
parent =
nullptr);
47 int type()
const override {
return SWMMLayerItemType; }
55 void paint(QPainter *painter,
56 const QStyleOptionGraphicsItem *option,
57 QWidget *widget)
override;
65 QPointer<SWMMModelLayer> m_layer;
66 QRectF m_boundingRect;
75 struct LabelTextCache {
76 quint64 editRev = ~0ull;
77 QString expression, fieldName, priorityField;
78 QVector<QString>
text[4];
79 QVector<double> priority[4];
82 for (
auto &
t :
text)
t.clear();
83 for (
auto &
p : priority)
p.clear();
86 LabelTextCache m_labelCache;
Definition swmmlayeritem.h:41
void paint(QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget) override
Definition swmmlayeritem.cpp:310
void refreshBoundingRect()
Definition swmmlayeritem.cpp:225
QRectF boundingRect() const override
Definition swmmlayeritem.h:53
SWMMModelLayer * ownerLayer() const
Definition swmmlayeritem.h:62
int type() const override
Definition swmmlayeritem.h:47
~SWMMLayerItem() override=default
Renders the SWMM network elements (nodes, links, subcatchments, rain gages) for one OpenSWMMEngine mo...
Definition swmmmodellayer.h:133
DiagramType t
Definition diagramspec.cpp:20
ArrowPlacement p
Definition linesymbollayer.cpp:27
QVector< int > parent
union-find
Definition pslgminsize.cpp:176
QString text
Definition queryparser.cpp:35