USGS

Isis 3.0 Developer's Reference (API)

Home

BlinkTool.h

Go to the documentation of this file.
00001 #ifndef BlinkTool_h
00002 #define BlinkTool_h
00003 
00004 // This is the only include allowed in this file!
00005 #include "Tool.h"
00006 
00007 class QDoubleSpinBox;
00008 class QDialog;
00009 class QToolButton;
00010 class QSplitter;
00011 class QMenu;
00012 class QVBoxLayout;
00013 class QHBoxLayout;
00014 class QPushButton;
00015 class QAction;
00016 class QListWidget;
00017 class QListWidgetItem;
00018 
00019 namespace Isis {
00026   class BlinkTool : public Tool {
00027       Q_OBJECT
00028 
00029     public:
00030       BlinkTool(QWidget *parent);
00031       void addTo(QMenu *menu);
00032       void addToPermanent(QToolBar *perm);
00033       void writeSettings();
00034       void readSettings();
00035 
00036 
00037     protected:
00044       QString menuName() const {
00045         return "&Options";
00046       };
00047       void updateTool();
00048       bool eventFilter(QObject *o, QEvent *e);
00049 
00050     private slots:
00051       void toggleLink(QListWidgetItem *item);
00052       void reverse();
00053       void stop();
00054       void start();
00055       void advance();
00056       void timeout();
00057       void updateWindow();
00058 
00059     private:
00060       QAction *p_action; 
00061       QWidget *p_blinkWindow;
00062       QListWidget *p_listWidget;
00063       QDoubleSpinBox *p_timeBox;
00064       bool p_timerOn;
00065       QDialog *p_dialog;
00066   };
00067 };
00068 
00069 #endif
00070