karm

mainwindow.h

00001 #ifndef KARM_MAIN_WINDOW_H
00002 #define KARM_MAIN_WINDOW_H
00003 
00004 #include <kparts/mainwindow.h>
00005 
00006 #include "karmerrors.h"
00007 #include <karmdcopiface.h>
00008 #include "reportcriteria.h"
00009 
00010 class KAccel;
00011 class KAccelMenuWatch;
00012 class KarmTray;
00013 class QListViewItem;
00014 class QPoint;
00015 class QString;
00016 
00017 class Preferences;
00018 class PrintDialog;
00019 class Task;
00020 class TaskView;
00021 
00026 class MainWindow : public KParts::MainWindow, virtual public KarmDCOPIface
00027 {
00028   Q_OBJECT
00029 
00030   private:
00031     void             makeMenus();
00032     QString          _hasTask( Task* task, const QString &taskname ) const;
00033     Task*            _hasUid( Task* task, const QString &uid ) const;
00034 
00035     KAccel*          _accel;
00036     KAccelMenuWatch* _watcher;
00037     TaskView*        _taskView;
00038     long             _totalSum;
00039     long             _sessionSum;
00040     Preferences*     _preferences;
00041     KarmTray*        _tray;
00042     KAction*         actionStart;
00043     KAction*         actionStop;
00044     KAction*         actionStopAll;
00045     KAction*         actionDelete;
00046     KAction*         actionEdit;
00047     KAction*         actionMarkAsComplete;
00048     KAction*         actionMarkAsIncomplete;
00049     KAction*         actionPreferences;
00050     KAction*         actionClipTotals;
00051     KAction*         actionClipHistory;
00052     QString          m_error[ KARM_MAX_ERROR_NO + 1 ];
00053 
00054     friend class KarmTray;
00055 
00056   //private:
00057 
00058     //KDialogBase *dialog;
00059 
00060 
00061 
00062   public:
00063     MainWindow( const QString &icsfile = "" );
00064     virtual ~MainWindow();
00065 
00066     // DCOP
00067     QString version() const;
00068     QString taskIdFromName( const QString &taskName ) const;
00070     int addTask( const QString &storage );
00072     QString setPerCentComplete( const QString& taskName, int PerCent );
00074     int bookTime( const QString& taskId, const QString& iso8601StartDateTime, long durationInMinutes );
00076     QString getError( int karmErrorNumber ) const;
00077     int totalMinutesForTaskId( const QString& taskId );
00078     QString starttimerfor( const QString &taskname );
00079     QString stoptimerfor( const QString &taskname );
00080     QString deletetodo();
00081     bool    getpromptdelete();
00082     QString setpromptdelete( bool prompt );
00083     QString exportcsvfile( QString filename, QString from, QString to, int type, bool decimalMinutes, bool allTasks, QString delimiter, QString quote );
00084     QString importplannerfile( QString filename );
00085 
00086   public slots:
00087     void quit();
00088 
00089   protected slots:
00090     void keyBindings();
00091     void startNewSession();
00092     void resetAllTimes();
00093     void updateTime( long, long );
00094     void updateStatusBar();
00095     bool save();
00096     void exportcsvHistory();
00097     void print();
00098     void slotSelectionChanged();
00099     void contextMenuRequest( QListViewItem*, const QPoint&, int );
00100     void enableStopAll();
00101     void disableStopAll();
00102 //    void timeLoggingChanged( bool on );
00103 
00104   protected:
00105     void startStatusBar();
00106     virtual void saveProperties( KConfig* );
00107     virtual void readProperties( KConfig* );
00108     void saveGeometry();
00109     void loadGeometry();
00110     bool queryClose();
00111 
00112 };
00113 
00114 #endif // KARM_MAIN_WINDOW_H
KDE Home | KDE Accessibility Home | Description of Access Keys