|
Isis 3.0 Developer's Reference (API) |
Home |
00001 #ifndef ScatterPlotTool_h 00002 #define ScatterPlotTool_h 00003 00004 #include "Tool.h" 00005 00006 #include <QPointer> 00007 #include <QScopedPointer> 00008 00009 class QAction; 00010 template< class T > class QVector; 00011 class QWidget; 00012 00013 namespace Isis { 00014 class MdiCubeViewport; 00015 class ScatterPlotConfigDialog; 00016 class ScatterPlotWindow; 00017 00027 class ScatterPlotTool : public Tool { 00028 Q_OBJECT 00029 00030 public: 00031 ScatterPlotTool(QWidget *parent); 00032 void setActionChecked(bool checked); 00033 00034 virtual void paintViewport(MdiCubeViewport *vp, QPainter *painter); 00035 00036 public slots: 00037 void onScatterPlotConfigAccepted(); 00038 void onScatterPlotConfigRejected(); 00039 void showNewScatterPlotConfig(); 00040 00041 protected slots: 00042 void mouseMove(QPoint p, Qt::MouseButton); 00043 void mouseLeave(); 00044 void repaintViewports(); 00045 00046 protected: 00047 QWidget *createToolBarWidget(QStackedWidget *parent); 00048 QAction *toolPadAction(ToolPad *pad); 00049 00050 QAction *toolAction(); 00051 00052 private: 00054 QPointer<QAction> m_action; 00056 QPointer<ScatterPlotConfigDialog> m_configDialog; 00058 QScopedPointer< QList< QPointer<ScatterPlotWindow> > > m_plotWindows; 00059 }; 00060 }; 00061 00062 00063 00064 00065 #endif 00066