Pile Group Tool  2.0.3
Educational tool demonstrating behavior of pile groups in layered soil
systemplotqwt.h
1 #ifndef SYSTEMPLOTQWT_H
2 #define SYSTEMPLOTQWT_H
3 
4 #include <QWidget>
5 #include "pilegrouptool_parameters.h"
6 #include "systemplotsuper.h"
7 
8 class QwtPlot;
9 class QwtPlotGrid;
10 class QwtPlotItem;
11 class QwtPlotShapeItem;
12 
13 enum class PLType { PILE, SOIL, WATER, CAP, LOAD, OTHER, NONE };
14 
15 struct PLOTOBJECT {
16  QwtPlotItem *itemPtr; // pointer to the PlotItem
17  PLType type; // object type identifier
18  int index; // pile index OR layer index
19 };
20 
21 namespace Ui {
22 class SystemPlotQwt;
23 }
24 
26 {
27  Q_OBJECT
28 
29 public:
30  explicit SystemPlotQwt(QWidget *parent = 0);
31  ~SystemPlotQwt();
32 
33  void refresh();
34 
35  PLOTOBJECT itemAt( const QPoint& pos ) const;
36 
37 
38 public slots:
39  void on_picker_appended (const QPoint &pos);
40 
41 
42 private:
43 
44 signals:
45  void on_pileSelected(int );
46  void on_soilLayerSelected(int );
47  void on_groundWaterSelected(void);
48 
49 protected:
50  QwtPlot *plot;
51  QwtPlotGrid *grid;
52 
53  QList<PLOTOBJECT> plotItemList;
54 
55 };
56 
57 #endif // SYSTEMPLOTQWT_H
Definition: materialdbinterface.h:6
Definition: systemplotqwt.h:15
Definition: systemplotsuper.h:16
Definition: systemplotqwt.h:25