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
profileattributetrackoptions.h File Reference

Q_OBJECT facade for the attribute-tracks pane below the profile plot: which attributes are shown, how each is styled, and the pane-level chrome knobs. More...

#include "plot/plotattribute.h"
#include <QHash>
#include <QObject>
#include <QPen>
#include <QString>
#include <QVector>
Include dependency graph for profileattributetrackoptions.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  ProfileAttributeTrackOptions
 

Detailed Description

Q_OBJECT facade for the attribute-tracks pane below the profile plot: which attributes are shown, how each is styled, and the pane-level chrome knobs.

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

Same pattern as ProfilePlotOptions: every knob is a Q_PROPERTY with the single changed() NOTIFY signal, so the toolbar attribute menu, the QPropertyModel-backed Display Options tree, and the tracks widget itself all edit/observe one instance and stay synchronized (CLAUDE.md §5.1) — no view writes another view's state directly.

Per-attribute state is a visibility bool + a pen for each of the 11 trackable attributes (6 node + 5 link). The generic accessors (isAttributeVisible / penFor / …) are what programmatic consumers use; the Q_PROPERTYs exist so QPropertyModel can edit the same state.