00001 #ifndef DATEBOOKWEEKLST
00002 #define DATEBOOKWEEKLST
00003
00004 #include <qpe/event.h>
00005
00006 #include <qwidget.h>
00007 #include <qdatetime.h>
00008
00009 class DateBookDB;
00010 class DateBookDBHoliday;
00011 class DateBookWeekLstHeader;
00012 class DateBookWeekLstEvent;
00013 class DateBookWeekLstDblView;
00014 class QVBoxLayout;
00015 class QScrollView;
00016
00017 class DateBookWeekLst : public QWidget
00018 {
00019 Q_OBJECT
00020
00021 public:
00022 DateBookWeekLst( bool ampm, bool onM, DateBookDBHoliday *newDB,
00023 QWidget *parent = 0,
00024 const char *name = 0 );
00025 ~DateBookWeekLst();
00026 void setDate( int y, int w );
00027 void setDate(const QDate &d );
00028 int week() const { return _week; };
00029 QDate date();
00030 QDate weekDate() const;
00031
00032 public slots:
00033 void redraw();
00034 void dateChanged(QDate &date);
00035
00036 protected slots:
00037 void keyPressEvent(QKeyEvent *);
00038 void setDbl(bool on);
00039
00040 signals:
00041 void showDate(int y, int m, int d);
00042 void addEvent(const QDateTime &start, const QDateTime &stop,
00043 const QString &str, const QString &location);
00044 void editEvent(const Event &e);
00045 void duplicateEvent(const Event &e);
00046 void removeEvent(const Event &e);
00047 void beamEvent(const Event &e);
00048
00049 private:
00050 DateBookDBHoliday *db;
00051 int startTime;
00052 bool ampm;
00053 bool bStartOnMonday;
00054 bool dbl;
00055 QDate bdate;
00056 int year, _week,dow;
00057 DateBookWeekLstHeader *header;
00058 QVBoxLayout *layout;
00059 QScrollView *scroll;
00060 DateBookWeekLstDblView*m_CurrentView;
00061 bool dateset:1;
00062
00063 void getEvents();
00064 };
00065
00066 #endif