Isis 3 Programmer Reference
ScatterPlotConfigDialog.h
1 #ifndef ScatterPlotConfigDialog_h
2 #define ScatterPlotConfigDialog_h
3 
4 #include <QDialog>
5 #include <QPointer>
6 
7 class QwtInterval;
8 
9 template <typename A, typename B> struct QPair;
10 class QCheckBox;
11 class QComboBox;
12 class QSpinBox;
13 
14 namespace Isis {
15  class Cube;
16  class MdiCubeViewport;
17  class ScatterPlotTool;
18  class Workspace;
19 
30  Q_OBJECT
31 
32  public:
34  Workspace *workspace, QWidget *parent = NULL);
35 
36  virtual QSize sizeHint() const;
37 
38  Cube *xAxisCube() const;
39  Cube *yAxisCube() const;
40  int xAxisCubeBand() const;
41  int yAxisCubeBand() const;
42  int xAxisBinCount() const;
43  int yAxisBinCount() const;
44  QwtInterval sampleRange() const;
45  QwtInterval lineRange() const;
46 
49 
50  private slots:
51  void refreshWidgetStates();
52 
53  private:
55  enum RangeType {
59  LineRange
60  };
61 
63  QList<Cube *> itemsToRemove);
64  QwtInterval range(RangeType) const;
65 
68 
70  QPointer<QComboBox> m_xAxisCubeCombo;
72  QPointer<QSpinBox> m_xAxisCubeBandSpinBox;
74  QPointer<QSpinBox> m_xAxisBinCountSpinBox;
76  QPointer<QCheckBox> m_useViewportRangesCheckBox;
77 
79  QPointer<QComboBox> m_yAxisCubeCombo;
81  QPointer<QSpinBox> m_yAxisCubeBandSpinBox;
83  QPointer<QSpinBox> m_yAxisBinCountSpinBox;
84 
89  QPointer<QPushButton> m_createButton;
90 
93  };
94 }
95 
96 
97 #endif
Isis::ScatterPlotConfigDialog::RangeType
RangeType
This is used internally to differentiate range accessors.
Definition: ScatterPlotConfigDialog.h:55
Isis::MdiCubeViewport
Cube display widget for certain Isis MDI applications.
Definition: MdiCubeViewport.h:39
QWidget
Isis::ScatterPlotConfigDialog::m_yAxisCubeBandSpinBox
QPointer< QSpinBox > m_yAxisCubeBandSpinBox
A user-selection for the y axis cube's band to plot.
Definition: ScatterPlotConfigDialog.h:81
Isis::ScatterPlotConfigDialog::xAxisCube
Cube * xAxisCube() const
The current user selection for a cube for the x-axis data for a scatter plot.
Definition: ScatterPlotConfigDialog.cpp:222
QList
This is free and unencumbered software released into the public domain.
Definition: BoxcarCachingAlgorithm.h:13
Isis::ScatterPlotConfigDialog::removeFromList
QList< Cube * > removeFromList(QList< Cube * > list, QList< Cube * > itemsToRemove)
This is a helper method.
Definition: ScatterPlotConfigDialog.cpp:470
Isis::ScatterPlotConfigDialog::refreshWidgetStates
void refreshWidgetStates()
Update the enabled/disabled states of the various widgets based on the current user inputs' states.
Definition: ScatterPlotConfigDialog.cpp:345
Isis::ScatterPlotConfigDialog::yAxisCube
Cube * yAxisCube() const
The current user selection for a cube for the x-axis data for a scatter plot.
Definition: ScatterPlotConfigDialog.cpp:234
Isis::ScatterPlotConfigDialog::m_xAxisCubeBandSpinBox
QPointer< QSpinBox > m_xAxisCubeBandSpinBox
A user-selection for the x axis cube's band to plot.
Definition: ScatterPlotConfigDialog.h:72
Isis::ScatterPlotConfigDialog::sampleRange
QwtInterval sampleRange() const
This is the sample range from which the scatter plot should be created.
Definition: ScatterPlotConfigDialog.cpp:289
Isis::ScatterPlotConfigDialog::SampleRange
@ SampleRange
This is used to get the sample range in a generic way.
Definition: ScatterPlotConfigDialog.h:57
QComboBox
Isis::ScatterPlotConfigDialog::m_yAxisCubeCombo
QPointer< QComboBox > m_yAxisCubeCombo
A user-selection for the y axis cube.
Definition: ScatterPlotConfigDialog.h:79
Isis::ScatterPlotConfigDialog::xAxisCubeBand
int xAxisCubeBand() const
The current user selection for the band in the x-axis cube to get data from.
Definition: ScatterPlotConfigDialog.cpp:246
Isis::ScatterPlotConfigDialog::lineRange
QwtInterval lineRange() const
This is the line range from which the scatter plot should be created.
Definition: ScatterPlotConfigDialog.cpp:301
Isis::ScatterPlotConfigDialog::m_xAxisCubeCombo
QPointer< QComboBox > m_xAxisCubeCombo
A user-selection for the x axis cube.
Definition: ScatterPlotConfigDialog.h:70
Isis::ScatterPlotConfigDialog::m_xAxisBinCountSpinBox
QPointer< QSpinBox > m_xAxisBinCountSpinBox
A user-selection for the x axis cube's resolution.
Definition: ScatterPlotConfigDialog.h:74
Isis::ScatterPlotConfigDialog::xAxisCubeViewport
MdiCubeViewport * xAxisCubeViewport() const
This returns a viewport which contains the x-axis cube.
Definition: ScatterPlotConfigDialog.cpp:311
Isis::ScatterPlotConfigDialog::yAxisCubeViewport
MdiCubeViewport * yAxisCubeViewport() const
This returns a viewport which contains the y-axis cube.
Definition: ScatterPlotConfigDialog.cpp:328
Isis::ScatterPlotConfigDialog
This configuration dialog is for users to determine the scatter plot parameters required to create a ...
Definition: ScatterPlotConfigDialog.h:29
Isis::Cube
IO Handler for Isis Cubes.
Definition: Cube.h:167
Isis::ScatterPlotConfigDialog::yAxisCubeBand
int yAxisCubeBand() const
The current user selection for the band in the y-axis cube to get data from.
Definition: ScatterPlotConfigDialog.cpp:257
Isis::ScatterPlotConfigDialog::m_createButton
QPointer< QPushButton > m_createButton
This button triggers an accepted() signal.
Definition: ScatterPlotConfigDialog.h:89
Isis::ScatterPlotConfigDialog::yAxisBinCount
int yAxisBinCount() const
The current user selection for the resolution of the scatter plot's y data.
Definition: ScatterPlotConfigDialog.cpp:277
Isis::ScatterPlotConfigDialog::LineRange
@ LineRange
This is used to get the line range in a generic way.
Definition: ScatterPlotConfigDialog.h:59
Isis::ScatterPlotConfigDialog::m_yAxisBinCountSpinBox
QPointer< QSpinBox > m_yAxisBinCountSpinBox
A user-selection for the y axis cube's resolution.
Definition: ScatterPlotConfigDialog.h:83
Isis::ScatterPlotConfigDialog::sizeHint
virtual QSize sizeHint() const
This is overridden to give a better default size than what Qt calculates by default.
Definition: ScatterPlotConfigDialog.cpp:210
QPair
This is free and unencumbered software released into the public domain.
Definition: CubeIoHandler.h:23
Isis::ScatterPlotConfigDialog::m_oldXAxisCube
Cube * m_oldXAxisCube
This is used to detect when a user changes the x-axis cube.
Definition: ScatterPlotConfigDialog.h:92
Isis::ScatterPlotConfigDialog::ScatterPlotConfigDialog
ScatterPlotConfigDialog(MdiCubeViewport *activeViewport, Workspace *workspace, QWidget *parent=NULL)
This method creates all the dialog boxes required for the scatter plot window.
Definition: ScatterPlotConfigDialog.cpp:29
QDialog
Isis::ScatterPlotConfigDialog::range
QwtInterval range(RangeType) const
This returns the sample/line ranges indicated by the user for the scatter plot to be created on.
Definition: ScatterPlotConfigDialog.cpp:491
Isis::Workspace
Definition: Workspace.h:78
Isis::ScatterPlotConfigDialog::m_useViewportRangesCheckBox
QPointer< QCheckBox > m_useViewportRangesCheckBox
A user-selection for using only the visible range of the viewport.
Definition: ScatterPlotConfigDialog.h:76
Isis::ScatterPlotConfigDialog::xAxisBinCount
int xAxisBinCount() const
The current user selection for the resolution of the scatter plot's x data.
Definition: ScatterPlotConfigDialog.cpp:267
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16
QSpinBox
Isis::ScatterPlotConfigDialog::m_workspace
Workspace * m_workspace
This is the workspace containing all of the viewports.
Definition: ScatterPlotConfigDialog.h:67