SWMMVis  6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
Loading...
Searching...
No Matches
rulesymbologytab.h File Reference

Rule-driven Symbology tab content (Slice Z.3). More...

#include <QPointer>
#include <QWidget>
Include dependency graph for rulesymbologytab.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  openswmmvis::ui::RuleSymbologyTab
 

Namespaces

namespace  OpenSWMM
 
namespace  OpenSWMM::Render
 
namespace  openswmmvis
 
namespace  openswmmvis::ui
 

Detailed Description

Rule-driven Symbology tab content (Slice Z.3).

Author
Caleb Buahin caleb.nosp@m..bua.nosp@m.hin@g.nosp@m.mail.nosp@m..com
Date
2026
License\n GPL-3.0-or-later
    Replaces the per-kind tree-on-left layout from §X.3.2 with an
    Active Rule combo + Rule List, applied uniformly across every
    layer kind. See RENDERING_RULE_MODEL_PLAN.md §4 for the layout
    spec.

    The widget binds to a non-null OpenSWMM::Render::RuleList. Both
    the combo and the list view sync to the RuleList's
    activeIndex(); editing visibility checkboxes writes through to
    Rule::setVisible; drag-reordering writes through to
    RuleList::move; the [+] / [Duplicate] / [Delete] / [↑] / [↓]
    buttons mutate the RuleList directly.

    The body region below the list is a QStackedWidget into which
    a renderer-class picker + IRendererPanel is mounted for the
    active Rule. Slice Z.3 ships the panel-host wiring; the
    per-Rule renderer-edit binding into the existing
    FeatureStyleEditor / SwmmElementSymbolEditor /
    GisVectorSymbolEditor / RasterColorRampEditor surface is
    delivered as part of the Rule-aware RendererPanelContext
    extension in a follow-up slice (Z.3a — flagged in the
    RuleSymbologyTab body placeholder until then).

    Cancel rollback: the widget does not snapshot — that is the
    enclosing LayerStyleDialog's job (§W U-3 captures snapshots of
    every ILayerStyleSubject on open and restores on Cancel; the
    Rule's Q_PROPERTYs ride that path via the §W default
    JsonPropertySnapshot).