fileObserver.h

Go to the documentation of this file.
00001 // -*- Mode: C++; tab-width: 2; -*-
00002 // vi: set ts=2:
00003 //
00004 // $Id: fileObserver.h,v 1.1.4.1 2007/03/25 21:26:20 oliver Exp $
00005 //
00006 
00007 #ifndef BALL_VIEW_WIDGETS_FILEOBSERVER_H
00008 #define BALL_VIEW_WIDGETS_FILEOBSERVER_H
00009 
00010 #ifndef BALL_VIEW_WIDGETS_DOCKWIDGET_H
00011 # include <BALL/VIEW/WIDGETS/dockWidget.h>
00012 #endif
00013 
00014 #include <QtCore/qtimer.h>
00015 #include <QtCore/QDateTime>
00016 
00017 class QAction;
00018 
00019 namespace BALL
00020 {
00021   namespace VIEW
00022   {
00036     class BALL_VIEW_EXPORT FileObserver
00037       : public DockWidget
00038     {
00039       Q_OBJECT
00040 
00041       public:
00042 
00043       BALL_EMBEDDABLE(FileObserver,DockWidget)
00044     
00045       
00046       FileObserver(QWidget *parent = 0, const char *name = 0);
00047 
00049       virtual ~FileObserver();
00050 
00051       //
00052       virtual void initializeWidget(MainControl& main_control);
00053       
00054       //
00055       virtual void checkMenu(MainControl& main_control);
00056 
00058       void setFileName(String filename);
00059 
00061       String getFileName() const;
00062 
00064       void setUpdateInterval(Size msec);
00065 
00066       public slots:
00067 
00069       void updateFile();
00070 
00072       void start();
00073 
00075       void stop();
00076 
00078       void chooseFile();
00079 
00080       protected:
00081 
00082       QAction* start_action_, *stop_action_;
00083 
00084       QTimer      timer_;
00085       String      file_name_;
00086       QDateTime   last_vis_time_;
00087     };
00088     
00089 } } // namespaces
00090 
00091 #endif // BALL_VIEW_WIDGETS_FILEOBSERVER_H