-rw-r--r-- | core/pim/datebook/datebookweeklst.cpp | 67 | ||||
-rw-r--r-- | core/pim/datebook/datebookweeklst.h | 44 | ||||
-rw-r--r-- | core/pim/datebook/datebookweeklstheader.ui | 99 |
3 files changed, 185 insertions, 25 deletions
diff --git a/core/pim/datebook/datebookweeklst.cpp b/core/pim/datebook/datebookweeklst.cpp index dc141c0..7083bc5 100644 --- a/core/pim/datebook/datebookweeklst.cpp +++ b/core/pim/datebook/datebookweeklst.cpp @@ -9,4 +9,5 @@ #include <qpe/timestring.h> #include <qpe/datebookmonth.h> +#include <qpe/config.h> #include <qdatetime.h> @@ -44,4 +45,5 @@ DateBookWeekLstHeader::DateBookWeekLstHeader(bool onM, QWidget* parent, connect(forward, SIGNAL(clicked()), this, SLOT(nextWeek())); connect(labelWeek, SIGNAL(clicked()), this, SLOT(pickDate())); + connect(dbl, SIGNAL(toggled(bool)), this, SIGNAL(setDbl(bool))); onMonday=onM; } @@ -157,4 +159,5 @@ DateBookWeekLstEvent::DateBookWeekLstEvent(const EffectiveEvent &ev, setText(QString(s) + " " + ev.description()); connect(this, SIGNAL(clicked()), this, SLOT(editMe())); + setAlignment( int( QLabel::WordBreak | QLabel::AlignLeft ) ); } void DateBookWeekLstEvent::editMe() { @@ -164,5 +167,5 @@ void DateBookWeekLstEvent::editMe() { DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev, - QDate &d, bool onM, + const QDate &d, bool onM, QWidget* parent, const char* name, WFlags fl) @@ -216,4 +219,37 @@ DateBookWeekLstView::~DateBookWeekLstView(){} void DateBookWeekLstView::keyPressEvent(QKeyEvent *e) {e->ignore();} +DateBookWeekLstDblView::DateBookWeekLstDblView(QValueList<EffectiveEvent> &ev1, + QValueList<EffectiveEvent> &ev2, + QDate &d, bool onM, + QWidget* parent, + const char* name, WFlags fl) + : QWidget( parent, name, fl ) +{ + QHBoxLayout *layout = new QHBoxLayout( this ); + + DateBookWeekLstView *w=new DateBookWeekLstView(ev1,d,onM,this); + layout->addWidget(w); + connect (w, SIGNAL(editEvent(const Event &)), + this, SIGNAL(editEvent(const Event &))); + connect (w, SIGNAL(showDate(int,int,int)), + this, SIGNAL(showDate(int,int,int))); + connect (w, SIGNAL(addEvent(const QDateTime &, const QDateTime &, + const QString &)), + this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, + const QString &))); + + + w=new DateBookWeekLstView(ev2,d.addDays(7),onM,this); + layout->addWidget(w); + connect (w, SIGNAL(editEvent(const Event &)), + this, SIGNAL(editEvent(const Event &))); + connect (w, SIGNAL(showDate(int,int,int)), + this, SIGNAL(showDate(int,int,int))); + connect (w, SIGNAL(addEvent(const QDateTime &, const QDateTime &, + const QString &)), + this, SIGNAL(addEvent(const QDateTime &, const QDateTime &, + const QString &))); +} + DateBookWeekLst::DateBookWeekLst( bool ap, bool onM, DateBookDB *newDB, QWidget *parent, @@ -231,5 +267,8 @@ DateBookWeekLst::DateBookWeekLst( bool ap, bool onM, DateBookDB *newDB, header=new DateBookWeekLstHeader(onM, this); layout->addWidget( header ); - connect(header, SIGNAL(dateChanged(int,int)), this, SLOT(dateChanged(int,int))); + connect(header, SIGNAL(dateChanged(int,int)), + this, SLOT(dateChanged(int,int))); + connect(header, SIGNAL(setDbl(bool)), + this, SLOT(setDbl(bool))); scroll=new QScrollView(this); @@ -240,6 +279,14 @@ DateBookWeekLst::DateBookWeekLst( bool ap, bool onM, DateBookDB *newDB, view=NULL; + Config config("DateBook"); + config.setGroup("Main"); + dbl=config.readBoolEntry("weeklst_dbl", false); + header->dbl->setOn(dbl); +} +DateBookWeekLst::~DateBookWeekLst(){ + Config config("DateBook"); + config.setGroup("Main"); + config.writeEntry("weeklst_dbl", dbl); } - void DateBookWeekLst::setDate(const QDate &d) { @@ -250,4 +297,8 @@ void DateBookWeekLst::setDate(const QDate &d) { header->setDate(date()); } +void DateBookWeekLst::setDbl(bool on) { + dbl=on; + redraw(); +} void DateBookWeekLst::redraw() {getEvents();} @@ -271,5 +322,13 @@ void DateBookWeekLst::getEvents() { if (view) delete view; - view=new DateBookWeekLstView(el,start,onMonday,scroll); + if (dbl) { + QDate start2=start.addDays(7); + stop=start2.addDays(6); + QValueList<EffectiveEvent> el2 = db->getEffectiveEvents(start2, stop); + + view=new DateBookWeekLstDblView(el,el2,start,onMonday,scroll); + } else { + view=new DateBookWeekLstView(el,start,onMonday,scroll); + } connect (view, SIGNAL(editEvent(const Event &)), diff --git a/core/pim/datebook/datebookweeklst.h b/core/pim/datebook/datebookweeklst.h index 39c956d..b0b0417 100644 --- a/core/pim/datebook/datebookweeklst.h +++ b/core/pim/datebook/datebookweeklst.h @@ -32,4 +32,5 @@ public slots: signals: void dateChanged(int y, int w); + void setDbl(bool on); private: QDate date; @@ -74,5 +75,5 @@ class DateBookWeekLstView: public QWidget Q_OBJECT public: - DateBookWeekLstView(QValueList<EffectiveEvent> &ev, QDate &d, bool onM, + DateBookWeekLstView(QValueList<EffectiveEvent> &ev, const QDate &d, bool onM, QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); @@ -89,4 +90,19 @@ protected slots: }; +class DateBookWeekLstDblView: public QWidget { + Q_OBJECT +public: + DateBookWeekLstDblView(QValueList<EffectiveEvent> &ev1, + QValueList<EffectiveEvent> &ev2, + QDate &d, bool onM, + QWidget* parent = 0, const char* name = 0, + WFlags fl = 0 ); +signals: + void editEvent(const Event &e); + void showDate(int y, int m, int d); + void addEvent(const QDateTime &start, const QDateTime &stop, + const QString &str); +}; + class DateBookWeekLst : public QWidget { @@ -97,4 +113,5 @@ public: QWidget *parent = 0, const char *name = 0 ); + ~DateBookWeekLst(); void setDate( int y, int w ); void setDate(const QDate &d ); @@ -105,6 +122,8 @@ public slots: void redraw(); void dateChanged(int y, int w); + protected slots: void keyPressEvent(QKeyEvent *); + void setDbl(bool on); signals: @@ -115,15 +134,16 @@ signals: private: - DateBookDB *db; - int startTime; - bool ampm; - bool onMonday; - int year, _week; - DateBookWeekLstHeader *header; - DateBookWeekLstView *view; - QVBoxLayout *layout; - QScrollView *scroll; - - void getEvents(); + DateBookDB *db; + int startTime; + bool ampm; + bool onMonday; + bool dbl; + int year, _week; + DateBookWeekLstHeader *header; + QWidget *view; + QVBoxLayout *layout; + QScrollView *scroll; + + void getEvents(); }; diff --git a/core/pim/datebook/datebookweeklstheader.ui b/core/pim/datebook/datebookweeklstheader.ui index 666e896..9de64ae 100644 --- a/core/pim/datebook/datebookweeklstheader.ui +++ b/core/pim/datebook/datebookweeklstheader.ui @@ -11,7 +11,7 @@ <rect> <x>0</x> - <y>51</y> - <width>535</width> - <height>25</height> + <y>183</y> + <width>447</width> + <height>45</height> </rect> </property> @@ -36,5 +36,5 @@ <property stdset="1"> <name>margin</name> - <number>0</number> + <number>11</number> </property> <property stdset="1"> @@ -51,5 +51,5 @@ <name>sizePolicy</name> <sizepolicy> - <hsizetype>1</hsizetype> + <hsizetype>7</hsizetype> <vsizetype>0</vsizetype> </sizepolicy> @@ -64,4 +64,8 @@ </property> <property stdset="1"> + <name>toggleButton</name> + <bool>false</bool> + </property> + <property stdset="1"> <name>autoRepeat</name> <bool>true</bool> @@ -71,4 +75,12 @@ <bool>true</bool> </property> + <property stdset="1"> + <name>toggleButton</name> + <bool>false</bool> + </property> + <property> + <name>toolTip</name> + <string></string> + </property> </widget> <spacer> @@ -117,7 +129,19 @@ </property> <property stdset="1"> + <name>toggleButton</name> + <bool>false</bool> + </property> + <property stdset="1"> <name>autoRaise</name> <bool>false</bool> </property> + <property stdset="1"> + <name>toggleButton</name> + <bool>false</bool> + </property> + <property> + <name>toolTip</name> + <string></string> + </property> </widget> <spacer> @@ -143,4 +167,65 @@ </spacer> <widget> + <class>QToolButton</class> + <property stdset="1"> + <name>name</name> + <cstring>dbl</cstring> + </property> + <property stdset="1"> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>3</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> + </property> + <property stdset="1"> + <name>font</name> + <font> + <bold>1</bold> + </font> + </property> + <property stdset="1"> + <name>text</name> + <string>2</string> + </property> + <property stdset="1"> + <name>toggleButton</name> + <bool>true</bool> + </property> + <property stdset="1"> + <name>autoRaise</name> + <bool>false</bool> + </property> + <property stdset="1"> + <name>toggleButton</name> + <bool>true</bool> + </property> + <property> + <name>toolTip</name> + <string></string> + </property> + </widget> + <spacer> + <property> + <name>name</name> + <cstring>Spacer1_3_2</cstring> + </property> + <property stdset="1"> + <name>orientation</name> + <enum>Horizontal</enum> + </property> + <property stdset="1"> + <name>sizeType</name> + <enum>Expanding</enum> + </property> + <property> + <name>sizeHint</name> + <size> + <width>20</width> + <height>20</height> + </size> + </property> + </spacer> + <widget> <class>QLabel</class> <property stdset="1"> @@ -165,8 +250,4 @@ <string>00 Jan-00 Jan</string> </property> - <property stdset="1"> - <name>alignment</name> - <set>AlignCenter</set> - </property> <property> <name>hAlign</name> |