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
openswmmvis::ui::PatternEditChartView Class Reference

#include <patterneditchartview.h>

Inheritance diagram for openswmmvis::ui::PatternEditChartView:
Collaboration diagram for openswmmvis::ui::PatternEditChartView:

Public Types

enum class  EditMode {
  None ,
  EditPoints
}
 
- Public Types inherited from openswmmvis::ui::InteractiveChartView
enum class  Mode {
  Select = 0 ,
  Pan ,
  ZoomIn ,
  ZoomOut
}
 
enum class  AxisEdge {
  None = 0 ,
  XMinimum ,
  XMaximum ,
  YMinimum ,
  YMaximum
}
 

Signals

void selectionChanged (const QVector< int > &indices)
 
void editModeChanged (EditMode m)
 
- Signals inherited from openswmmvis::ui::InteractiveChartView
void modeChanged (Mode m)
 Fired whenever the mode changes (toolbar reflection).
 
void chartContextMenuRequested (const QPoint &globalPos)
 Fired on right-click. Carries global screen position so the parent dialog can pop its own row-aware context menu.
 
void xRangeSelectionChanged (QDateTime lo, QDateTime hi)
 Slice AT.3 — Shift-drag X-range selection ended on this view. Carries selected [lo, hi] as QDateTimes. Passed to the StatsSummaryPanel to narrow stats. Empty (invalid, invalid) clears the selection.
 

Public Member Functions

 PatternEditChartView (QChart *chart, QLineSeries *referenceSeries, QWidget *parent=nullptr)
 Construct over an externally-owned QChart. referenceSeries anchors the value↔pixel mapping (typically the dialog's line series). Slot vertices live at X = i + 0.5 (slot centre).
 
 ~PatternEditChartView () override
 
openswmmvis::pattern::PatternProviderprovider () const noexcept
 
void setProvider (openswmmvis::pattern::PatternProvider *p)
 
void setUndoStack (QUndoStack *stack)
 
QUndoStack * undoStack () const noexcept
 
EditMode editMode () const noexcept
 
void setEditMode (EditMode m)
 
QVector< int > selectedIndices () const
 
void clearSelection ()
 
void setSelection (QVector< int > indices)
 
int hitTestSlot (const QPoint &viewportPx, int hitRadiusPx=10) const
 Convert a viewport pixel to the slot index whose centre is closest, or -1 if no slot lies within hitRadiusPx.
 
- Public Member Functions inherited from openswmmvis::ui::InteractiveChartView
 InteractiveChartView (QChart *chart, QWidget *parent=nullptr)
 
 ~InteractiveChartView () override
 
Mode mode () const noexcept
 
void setMode (Mode m)
 
AxisEdge axisEdgeAt (const QPoint &viewportPx) const
 Returns the editable min/max axis label under viewportPx, or AxisEdge::None when the point is not in an endpoint-label gutter.
 
bool setAxisEdgeValue (AxisEdge edge, const QVariant &value)
 Programmatically set one visible axis edge. Numeric axes accept a numeric QVariant; date-time axes accept QDateTime.
 
void resetZoom ()
 Reset zoom to whatever the chart's initial zoom level was. Equivalent to chart()->zoomReset() plus a notify so parents that track range can resync.
 

Protected Member Functions

void mousePressEvent (QMouseEvent *e) override
 
void mouseMoveEvent (QMouseEvent *e) override
 
void mouseReleaseEvent (QMouseEvent *e) override
 
void contextMenuEvent (QContextMenuEvent *e) override
 
- Protected Member Functions inherited from openswmmvis::ui::InteractiveChartView
void mousePressEvent (QMouseEvent *e) override
 
void mouseMoveEvent (QMouseEvent *e) override
 
void mouseReleaseEvent (QMouseEvent *e) override
 
void wheelEvent (QWheelEvent *e) override
 
void keyPressEvent (QKeyEvent *e) override
 
void leaveEvent (QEvent *e) override
 

Member Enumeration Documentation

◆ EditMode

Enumerator
None 

Base modes only.

EditPoints 

Y-drag = factor edit; X-drag = adjacent-slot swap.

Constructor & Destructor Documentation

◆ PatternEditChartView()

openswmmvis::ui::PatternEditChartView::PatternEditChartView ( QChart *  chart,
QLineSeries *  referenceSeries,
QWidget *  parent = nullptr 
)

Construct over an externally-owned QChart. referenceSeries anchors the value↔pixel mapping (typically the dialog's line series). Slot vertices live at X = i + 0.5 (slot centre).

◆ ~PatternEditChartView()

openswmmvis::ui::PatternEditChartView::~PatternEditChartView ( )
overridedefault

Member Function Documentation

◆ clearSelection()

void openswmmvis::ui::PatternEditChartView::clearSelection ( )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ contextMenuEvent()

void openswmmvis::ui::PatternEditChartView::contextMenuEvent ( QContextMenuEvent *  e)
overrideprotected

◆ editMode()

EditMode openswmmvis::ui::PatternEditChartView::editMode ( ) const
inlinenoexcept

◆ editModeChanged

void openswmmvis::ui::PatternEditChartView::editModeChanged ( EditMode  m)
signal
Here is the caller graph for this function:

◆ hitTestSlot()

int openswmmvis::ui::PatternEditChartView::hitTestSlot ( const QPoint &  viewportPx,
int  hitRadiusPx = 10 
) const

Convert a viewport pixel to the slot index whose centre is closest, or -1 if no slot lies within hitRadiusPx.

Here is the caller graph for this function:

◆ mouseMoveEvent()

void openswmmvis::ui::PatternEditChartView::mouseMoveEvent ( QMouseEvent *  e)
overrideprotected
Here is the call graph for this function:

◆ mousePressEvent()

void openswmmvis::ui::PatternEditChartView::mousePressEvent ( QMouseEvent *  e)
overrideprotected
Here is the call graph for this function:

◆ mouseReleaseEvent()

void openswmmvis::ui::PatternEditChartView::mouseReleaseEvent ( QMouseEvent *  e)
overrideprotected
Here is the call graph for this function:

◆ provider()

PatternProvider * openswmmvis::ui::PatternEditChartView::provider ( ) const
noexcept

◆ selectedIndices()

QVector< int > openswmmvis::ui::PatternEditChartView::selectedIndices ( ) const
inline

◆ selectionChanged

void openswmmvis::ui::PatternEditChartView::selectionChanged ( const QVector< int > &  indices)
signal
Here is the caller graph for this function:

◆ setEditMode()

void openswmmvis::ui::PatternEditChartView::setEditMode ( EditMode  m)
Here is the call graph for this function:

◆ setProvider()

void openswmmvis::ui::PatternEditChartView::setProvider ( openswmmvis::pattern::PatternProvider p)
Here is the call graph for this function:

◆ setSelection()

void openswmmvis::ui::PatternEditChartView::setSelection ( QVector< int >  indices)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ setUndoStack()

void openswmmvis::ui::PatternEditChartView::setUndoStack ( QUndoStack *  stack)

◆ undoStack()

QUndoStack * openswmmvis::ui::PatternEditChartView::undoStack ( ) const
inlinenoexcept

The documentation for this class was generated from the following files: