![]() |
SWMMVis
6.0.0-alpha.4
Qt6/C++ GIS-based graphical user interface for the SWMMVis engine (6.0.0-alpha.4)
|
Renderer-class panel interface + factory registry. More...
#include "layers/swmm_category.h"#include "render/iattributeprovider.h"#include "render/sublayers/feature/featuresublayer.h"#include <QString>#include <QVector>#include <QWidget>#include <functional>#include <memory>#include <optional>#include <vector>Go to the source code of this file.
Classes | |
| struct | openswmmvis::ui::RendererPanelContext |
| Context passed to renderer-panel factories at construction time. More... | |
| class | openswmmvis::ui::IRendererPanel |
| class | openswmmvis::ui::RendererPanelRegistry |
| struct | openswmmvis::ui::RendererPanelRegistry::Entry |
| class | openswmmvis::ui::RendererPanelRegistrar |
Namespaces | |
| namespace | OpenSWMM |
| namespace | OpenSWMM::Render |
| namespace | openswmmvis |
| namespace | openswmmvis::ui |
Macros | |
| #define | REGISTER_RENDERER_PANEL(ID_STRING, DISPLAY_STRING, FACTORY) |
| #define | REGISTER_RENDERER_PANEL_GATED(ID_STRING, DISPLAY_STRING, FACTORY, APPLICABLE, REASON_STRING) |
Renderer-class panel interface + factory registry.
Slice X.2. Mirrors Qt's IStyleEditorWidget seam but at the
renderer-class layer. The Symbology tab's top dropdown lists
all available renderer classes (Single / Graduated / Categorized
/ Rule-based + any future plugins). Switching the dropdown
mounts a registered panel matching the picked class.
Each renderer panel:
- reads the current per-kind renderer from its host layer,
- writes through to setKindRenderer / setRenderer on each edit,
- listens for the layer's repaintRequested / rendererChanged
signals to refresh on external mutations.
Plugins register a factory via REGISTER_RENDERER_PANEL. The
dropdown picks up the new class automatically — no edits to the
dialog code.
| #define REGISTER_RENDERER_PANEL | ( | ID_STRING, | |
| DISPLAY_STRING, | |||
| FACTORY | |||
| ) |
| #define REGISTER_RENDERER_PANEL_GATED | ( | ID_STRING, | |
| DISPLAY_STRING, | |||
| FACTORY, | |||
| APPLICABLE, | |||
| REASON_STRING | |||
| ) |
Gap A4.2 — registration with a declarative applicability predicate + tooltip reason for the greyed-out dropdown row.