USGS

Isis 3.0 Object Programmers' Reference

Home

BlinkTool.h
1 #ifndef BlinkTool_h
2 #define BlinkTool_h
3 
4 // This is the only include allowed in this file!
5 #include "Tool.h"
6 
7 class QDoubleSpinBox;
8 class QDialog;
9 class QToolButton;
10 class QSplitter;
11 class QMenu;
12 class QVBoxLayout;
13 class QHBoxLayout;
14 class QPushButton;
15 class QAction;
16 class QListWidget;
17 class QListWidgetItem;
18 
19 namespace Isis {
26  class BlinkTool : public Tool {
27  Q_OBJECT
28 
29  public:
30  BlinkTool(QWidget *parent);
31  void addTo(QMenu *menu);
32  void addToPermanent(QToolBar *perm);
33  void writeSettings();
34  void readSettings();
35 
42  QString menuName() const {
43  return "&Options";
44  };
45 
46  protected:
47  void updateTool();
48  bool eventFilter(QObject *o, QEvent *e);
49 
50  private slots:
51  void toggleLink(QListWidgetItem *item);
52  void reverse();
53  void stop();
54  void start();
55  void advance();
56  void timeout();
57  void updateWindow();
58 
59  private:
62  QListWidget *p_listWidget;
63  QDoubleSpinBox *p_timeBox;
64  bool p_timerOn;
66  QSplitter *p_splitter;
67  };
68 };
69 
70 #endif
71