USGS

Isis 3.0 Object Programmers' Reference

Home

SpatialPlotTool.h
1 #ifndef SpatialPlotTool_h
2 #define SpatialPlotTool_h
3 
4 #include "AbstractPlotTool.h"
5 
6 #include <QMap>
7 
8 class QAction;
9 class QComboBox;
10 class QMainWindow;
11 
12 template <typename T> class QVector;
13 
14 namespace Isis {
15  class CubePlotCurve;
16  class PlotWindow;
17  class RubberBandComboBox;
18  class SurfacePoint;
19  class UniversalGroundMap;
20 
59  Q_OBJECT
60 
61  public:
62  SpatialPlotTool(QWidget *parent);
63 
64  public slots:
65  void refreshPlot();
66 
67  protected:
68  QWidget *createToolBarWidget(QStackedWidget *parent);
69  virtual PlotWindow *createWindow();
70  virtual void detachCurves();
71  void enableRubberBandTool();
73  void updateTool();
74 
75  protected slots:
76  virtual void rubberBandComplete();
77  void viewportSelected();
78 
79  private:
80  QVector<QPointF> getSpatialStatistics(MdiCubeViewport *);
81  static SurfacePoint resultToSurfacePoint(UniversalGroundMap *);
82  void validatePlotCurves();
83 
84  private:
85  QPointer<QComboBox> m_xUnitsCombo;
86 
88  QPointer<QAction> m_toolPadAction;
89 
91  QPointer<QComboBox> m_interpolationCombo;
92 
94  QScopedPointer<
96 
98  QPointer<RubberBandComboBox> m_rubberBandCombo;
99  };
100 };
101 
102 #endif