BALL
1.4.1
|
00001 // -*- Mode: C++; tab-width: 2; -*- 00002 // vi: set ts=2: 00003 // 00004 00005 #ifndef BALL_VIEW_WIDGETS_FILEOBSERVER_H 00006 #define BALL_VIEW_WIDGETS_FILEOBSERVER_H 00007 00008 #ifndef BALL_VIEW_WIDGETS_DOCKWIDGET_H 00009 # include <BALL/VIEW/WIDGETS/dockWidget.h> 00010 #endif 00011 00012 #include <QtCore/QTimer> 00013 #include <QtCore/QDateTime> 00014 00015 class QAction; 00016 00017 namespace BALL 00018 { 00019 namespace VIEW 00020 { 00034 class BALL_VIEW_EXPORT FileObserver 00035 : public DockWidget 00036 { 00037 Q_OBJECT 00038 00039 public: 00040 00041 BALL_EMBEDDABLE(FileObserver,DockWidget) 00042 00043 00044 FileObserver(QWidget *parent = 0, const char *name = 0); 00045 00047 virtual ~FileObserver(); 00048 00049 // 00050 virtual void initializeWidget(MainControl& main_control); 00051 00052 // 00053 virtual void checkMenu(MainControl& main_control); 00054 00056 void setFileName(String filename); 00057 00059 String getFileName() const; 00060 00062 void setUpdateInterval(Size msec); 00063 00064 public slots: 00065 00067 void updateFile(); 00068 00070 void start(); 00071 00073 void stop(); 00074 00076 void chooseFile(); 00077 00078 protected: 00079 00080 QAction* start_action_, *stop_action_; 00081 00082 QTimer timer_; 00083 String file_name_; 00084 QDateTime last_vis_time_; 00085 }; 00086 00087 } } // namespaces 00088 00089 #endif // BALL_VIEW_WIDGETS_FILEOBSERVER_H