USGS

Isis 3.0 Developer's Reference (API)

Home

ScatterPlotTool.h

Go to the documentation of this file.
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