USGS

Isis 3.0 Object Programmers' Reference

Home

SpectralPlotTool.h
1 #ifndef SpectralPlotTool_h
2 #define SpectralPlotTool_h
3 
4 #include "AbstractPlotTool.h"
5 
6 #include <vector>
7 
8 #include <QMap>
9 
10 class QMainWindow;
11 
12 namespace geos {
13  namespace geom {
14  class Envelope;
15  class Polygon;
16  }
17 }
18 
19 namespace Isis {
20  class CubePlotCurve;
21  class PlotWindow;
22  class RubberBandComboBox;
23  class Statistics;
24 
58  Q_OBJECT
59 
60  public:
61  SpectralPlotTool(QWidget *parent);
62 
63  protected:
64  void addTo(QMenu *menu);
65  QWidget *createToolBarWidget(QStackedWidget *parent);
66  virtual PlotWindow *createWindow();
67  virtual void detachCurves();
68  void enableRubberBandTool();
71  void updateTool();
72 
73  protected slots:
74  virtual void rubberBandComplete();
75  void viewportSelected();
76 
77  public slots:
78  void refreshPlot();
79 
80  private slots:
81  void selectCurvesToPlot();
82 
83  private:
85  QVector<Statistics> &data,
86  MdiCubeViewport *viewport);
87  void validatePlotCurves();
88 
90  QPointer<QComboBox> m_displayCombo;
91 
93  QPointer<RubberBandComboBox> m_rubberBandCombo;
94 
96  QPointer<QAction> m_toolPadAction;
97 
99  QPointer<QAction> m_plotAvgAction;
101  QPointer<QAction> m_plotMinAction;
103  QPointer<QAction> m_plotMaxAction;
105  QPointer<QAction> m_plotStdDev1Action;
107  QPointer<QAction> m_plotStdDev2Action;
109  QPointer<QAction> m_plotStdErr1Action;
111  QPointer<QAction> m_plotStdErr2Action;
112 
114  QScopedPointer<
116 
118  QScopedPointer<
120 
122  QScopedPointer<
124 
126  QScopedPointer<
128 
130  QScopedPointer<
132 
134  QScopedPointer<
136 
138  QScopedPointer<
140 
141 
143  QPointer<QAction> m_showHideBandMarkers;
144  };
145 };
146 
147 #endif