summaryrefslogtreecommitdiff
path: root/core/pim/datebook
Unidiff
Diffstat (limited to 'core/pim/datebook') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/datebook/clickablelabel.cpp88
-rw-r--r--core/pim/datebook/clickablelabel.h30
-rw-r--r--core/pim/datebook/datebook.pro4
-rw-r--r--core/pim/datebook/datebookweeklst.cpp2
-rw-r--r--core/pim/datebook/datebookweeklst.h4
-rw-r--r--core/pim/datebook/datebookweeklstdayhdr.ui8
-rw-r--r--core/pim/datebook/dateentryimpl.cpp8
-rw-r--r--core/pim/datebook/opie-datebook.control2
-rw-r--r--core/pim/datebook/timepicker.cpp19
-rw-r--r--core/pim/datebook/timepicker.h6
10 files changed, 27 insertions, 144 deletions
diff --git a/core/pim/datebook/clickablelabel.cpp b/core/pim/datebook/clickablelabel.cpp
deleted file mode 100644
index 128bebb..0000000
--- a/core/pim/datebook/clickablelabel.cpp
+++ b/dev/null
@@ -1,88 +0,0 @@
1#include "clickablelabel.h"
2#include <stdio.h>
3
4ClickableLabel::ClickableLabel(QWidget* parent,
5 const char* name,
6 WFlags fl) :
7 QLabel(parent,name,fl)
8{
9 textInverted=false;
10 isToggle=false;
11 isDown=false;
12 showState(false);
13 setFrameShadow(Sunken);
14}
15
16void ClickableLabel::setToggleButton(bool t) {
17 isToggle=t;
18}
19
20void ClickableLabel::mousePressEvent( QMouseEvent *e ) {
21 if (isToggle && isDown) {
22 showState(false);
23 } else {
24 showState(true);
25 }
26}
27
28void ClickableLabel::mouseReleaseEvent( QMouseEvent *e ) {
29 if (rect().contains(e->pos()) && isToggle) isDown=!isDown;
30
31 if (isToggle && isDown) {
32 showState(true);
33 } else {
34 showState(false);
35 }
36
37 if (rect().contains(e->pos())) {
38 if (isToggle) {
39 emit toggled(isDown);
40 }
41 emit clicked();
42 }
43}
44
45void ClickableLabel::mouseMoveEvent( QMouseEvent *e ) {
46 if (rect().contains(e->pos())) {
47 if (isToggle && isDown) {
48 showState(false);
49 } else {
50 showState(true);
51 }
52 } else {
53 if (isToggle && isDown) {
54 showState(true);
55 } else {
56 showState(false);
57 }
58 }
59}
60
61void ClickableLabel::showState(bool on) {
62 if (on) {
63 //setFrameShape(Panel);
64 setInverted(true);
65 setBackgroundMode(PaletteHighlight);
66 } else {
67 //setFrameShape(NoFrame);
68 setInverted(false);
69 setBackgroundMode(PaletteBackground);
70 }
71 repaint();
72}
73
74void ClickableLabel::setInverted(bool on) {
75 if ( (!textInverted && on) || (textInverted && !on) ) {
76 QPalette pal=palette();
77 QColor col=pal.color(QPalette::Normal, QColorGroup::Foreground);
78 col.setRgb(255-col.red(),255-col.green(),255-col.blue());
79 pal.setColor(QPalette::Normal, QColorGroup::Foreground, col);
80 setPalette(pal);
81 textInverted=!textInverted;
82 }
83}
84
85void ClickableLabel::setOn(bool on) {
86 isDown=on;
87 showState(isDown);
88}
diff --git a/core/pim/datebook/clickablelabel.h b/core/pim/datebook/clickablelabel.h
deleted file mode 100644
index d00fee6..0000000
--- a/core/pim/datebook/clickablelabel.h
+++ b/dev/null
@@ -1,30 +0,0 @@
1#ifndef CLICKABLELABEL
2#define CLICKABLELABEL
3
4#include <qlabel.h>
5
6class ClickableLabel: public QLabel
7{
8 Q_OBJECT
9public:
10 ClickableLabel(QWidget* parent = 0, const char* name = 0,
11 WFlags fl = 0);
12 void setToggleButton(bool t);
13 protected:
14 void mousePressEvent( QMouseEvent *e );
15 void mouseReleaseEvent( QMouseEvent *e );
16 void mouseMoveEvent( QMouseEvent *e );
17 public slots:
18 void setOn(bool on);
19 signals:
20 void clicked();
21 void toggled(bool on);
22 private:
23 bool isToggle;
24 bool isDown;
25 void showState(bool on);
26 bool textInverted;
27 void setInverted(bool on);
28};
29
30#endif
diff --git a/core/pim/datebook/datebook.pro b/core/pim/datebook/datebook.pro
index a8a9285..9383053 100644
--- a/core/pim/datebook/datebook.pro
+++ b/core/pim/datebook/datebook.pro
@@ -1,55 +1,53 @@
1 TEMPLATE= app 1 TEMPLATE= app
2 CONFIG += qt warn_on release 2 CONFIG += qt warn_on release
3 DESTDIR = $(OPIEDIR)/bin 3 DESTDIR = $(OPIEDIR)/bin
4 4
5 HEADERS= datebookday.h \ 5 HEADERS= datebookday.h \
6 datebook.h \ 6 datebook.h \
7 dateentryimpl.h \ 7 dateentryimpl.h \
8 datebookdayheaderimpl.h \ 8 datebookdayheaderimpl.h \
9 datebooksettings.h \ 9 datebooksettings.h \
10 datebookweek.h \ 10 datebookweek.h \
11 datebookweeklst.h \ 11 datebookweeklst.h \
12 datebookweekheaderimpl.h \ 12 datebookweekheaderimpl.h \
13 repeatentry.h \ 13 repeatentry.h \
14 clickablelabel.h \
15 timepicker.h 14 timepicker.h
16 15
17 SOURCES= main.cpp \ 16 SOURCES= main.cpp \
18 datebookday.cpp \ 17 datebookday.cpp \
19 datebook.cpp \ 18 datebook.cpp \
20 dateentryimpl.cpp \ 19 dateentryimpl.cpp \
21 datebookdayheaderimpl.cpp \ 20 datebookdayheaderimpl.cpp \
22 datebooksettings.cpp \ 21 datebooksettings.cpp \
23 datebookweek.cpp \ 22 datebookweek.cpp \
24 datebookweeklst.cpp \ 23 datebookweeklst.cpp \
25 datebookweekheaderimpl.cpp \ 24 datebookweekheaderimpl.cpp \
26 repeatentry.cpp \ 25 repeatentry.cpp \
27 clickablelabel.cpp \
28 timepicker.cpp 26 timepicker.cpp
29 27
30 INTERFACES= dateentry.ui \ 28 INTERFACES= dateentry.ui \
31 datebookdayheader.ui \ 29 datebookdayheader.ui \
32 datebooksettingsbase.ui \ 30 datebooksettingsbase.ui \
33 datebookweekheader.ui \ 31 datebookweekheader.ui \
34 datebookweeklstheader.ui \ 32 datebookweeklstheader.ui \
35 datebookweeklstdayhdr.ui \ 33 datebookweeklstdayhdr.ui \
36 repeatentrybase.ui 34 repeatentrybase.ui
37 35
38INCLUDEPATH += $(OPIEDIR)/include 36INCLUDEPATH += $(OPIEDIR)/include
39 DEPENDPATH+= $(OPIEDIR)/include 37 DEPENDPATH+= $(OPIEDIR)/include
40LIBS += -lqpe 38LIBS += -lqpe -lopie
41 39
42 TARGET = datebook 40 TARGET = datebook
43 41
44TRANSLATIONS = ../i18n/pt_BR/datebook.ts 42TRANSLATIONS = ../i18n/pt_BR/datebook.ts
45TRANSLATIONS += ../i18n/de/datebook.ts 43TRANSLATIONS += ../i18n/de/datebook.ts
46TRANSLATIONS += ../i18n/en/datebook.ts 44TRANSLATIONS += ../i18n/en/datebook.ts
47TRANSLATIONS += ../i18n/hu/datebook.ts 45TRANSLATIONS += ../i18n/hu/datebook.ts
48TRANSLATIONS += ../i18n/pl/datebook.ts 46TRANSLATIONS += ../i18n/pl/datebook.ts
49TRANSLATIONS += ../i18n/sl/datebook.ts 47TRANSLATIONS += ../i18n/sl/datebook.ts
50TRANSLATIONS += ../i18n/ja/datebook.ts 48TRANSLATIONS += ../i18n/ja/datebook.ts
51TRANSLATIONS += ../i18n/ko/datebook.ts 49TRANSLATIONS += ../i18n/ko/datebook.ts
52TRANSLATIONS += ../i18n/no/datebook.ts 50TRANSLATIONS += ../i18n/no/datebook.ts
53TRANSLATIONS += ../i18n/zh_CN/datebook.ts 51TRANSLATIONS += ../i18n/zh_CN/datebook.ts
54TRANSLATIONS += ../i18n/zh_TW/datebook.ts 52TRANSLATIONS += ../i18n/zh_TW/datebook.ts
55TRANSLATIONS += ../i18n/fr/datebook.ts 53TRANSLATIONS += ../i18n/fr/datebook.ts
diff --git a/core/pim/datebook/datebookweeklst.cpp b/core/pim/datebook/datebookweeklst.cpp
index 85c745a..8e88377 100644
--- a/core/pim/datebook/datebookweeklst.cpp
+++ b/core/pim/datebook/datebookweeklst.cpp
@@ -122,49 +122,49 @@ DateBookWeekLstDayHdr::DateBookWeekLstDayHdr(const QDate &d, bool onM,
122 pal.setColor(QColorGroup::Foreground, QColor(255,0,0)); 122 pal.setColor(QColorGroup::Foreground, QColor(255,0,0));
123 label->setPalette(pal); 123 label->setPalette(pal);
124 } 124 }
125 125
126 126
127 connect (label, SIGNAL(clicked()), this, SLOT(showDay())); 127 connect (label, SIGNAL(clicked()), this, SLOT(showDay()));
128 connect (add, SIGNAL(clicked()), this, SLOT(newEvent())); 128 connect (add, SIGNAL(clicked()), this, SLOT(newEvent()));
129} 129}
130 130
131void DateBookWeekLstDayHdr::showDay() { 131void DateBookWeekLstDayHdr::showDay() {
132 emit showDate(date.year(), date.month(), date.day()); 132 emit showDate(date.year(), date.month(), date.day());
133} 133}
134void DateBookWeekLstDayHdr::newEvent() { 134void DateBookWeekLstDayHdr::newEvent() {
135 QDateTime start, stop; 135 QDateTime start, stop;
136 start=stop=date; 136 start=stop=date;
137 start.setTime(QTime(10,0)); 137 start.setTime(QTime(10,0));
138 stop.setTime(QTime(12,0)); 138 stop.setTime(QTime(12,0));
139 139
140 emit addEvent(start,stop,""); 140 emit addEvent(start,stop,"");
141} 141}
142DateBookWeekLstEvent::DateBookWeekLstEvent(const EffectiveEvent &ev, 142DateBookWeekLstEvent::DateBookWeekLstEvent(const EffectiveEvent &ev,
143 QWidget* parent, 143 QWidget* parent,
144 const char* name, 144 const char* name,
145 WFlags fl) : 145 WFlags fl) :
146 ClickableLabel(parent,name,fl), 146 OClickableLabel(parent,name,fl),
147 event(ev) 147 event(ev)
148{ 148{
149 char s[10]; 149 char s[10];
150 if ( ev.startDate() != ev.date() ) { // multiday event (not first day) 150 if ( ev.startDate() != ev.date() ) { // multiday event (not first day)
151 if ( ev.endDate() == ev.date() ) { // last day 151 if ( ev.endDate() == ev.date() ) { // last day
152 strcpy(s, "__|__"); 152 strcpy(s, "__|__");
153 } else { 153 } else {
154 strcpy(s, " |---"); 154 strcpy(s, " |---");
155 } 155 }
156 } else { 156 } else {
157 sprintf(s,"%.2d:%.2d",ev.start().hour(),ev.start().minute()); 157 sprintf(s,"%.2d:%.2d",ev.start().hour(),ev.start().minute());
158 } 158 }
159 setText(QString(s) + " " + ev.description()); 159 setText(QString(s) + " " + ev.description());
160 connect(this, SIGNAL(clicked()), this, SLOT(editMe())); 160 connect(this, SIGNAL(clicked()), this, SLOT(editMe()));
161 setAlignment( int( QLabel::WordBreak | QLabel::AlignLeft ) ); 161 setAlignment( int( QLabel::WordBreak | QLabel::AlignLeft ) );
162} 162}
163void DateBookWeekLstEvent::editMe() { 163void DateBookWeekLstEvent::editMe() {
164 emit editEvent(event.event()); 164 emit editEvent(event.event());
165} 165}
166 166
167 167
168DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev, 168DateBookWeekLstView::DateBookWeekLstView(QValueList<EffectiveEvent> &ev,
169 const QDate &d, bool onM, 169 const QDate &d, bool onM,
170 QWidget* parent, 170 QWidget* parent,
diff --git a/core/pim/datebook/datebookweeklst.h b/core/pim/datebook/datebookweeklst.h
index b0b0417..24f6c83 100644
--- a/core/pim/datebook/datebookweeklst.h
+++ b/core/pim/datebook/datebookweeklst.h
@@ -1,82 +1,82 @@
1#ifndef DATEBOOKWEEKLST 1#ifndef DATEBOOKWEEKLST
2#define DATEBOOKWEEKLST 2#define DATEBOOKWEEKLST
3 3
4#include <qwidget.h> 4#include <qwidget.h>
5#include <qdatetime.h> 5#include <qdatetime.h>
6#include <qpe/event.h> 6#include <qpe/event.h>
7#include <qlabel.h> 7#include <qlabel.h>
8#include <qscrollview.h> 8#include <qscrollview.h>
9 9
10#include "datebookweeklstheader.h" 10#include "datebookweeklstheader.h"
11#include "datebookweeklstdayhdr.h" 11#include "datebookweeklstdayhdr.h"
12 12
13#include "clickablelabel.h" 13#include <opie/oclickablelabel.h>
14 14
15class QDateTime; 15class QDateTime;
16class DateBookDB; 16class DateBookDB;
17 17
18class DateBookWeekLstHeader: public DateBookWeekLstHeaderBase 18class DateBookWeekLstHeader: public DateBookWeekLstHeaderBase
19{ 19{
20 Q_OBJECT 20 Q_OBJECT
21public: 21public:
22 DateBookWeekLstHeader(bool onM, QWidget* parent = 0, const char* name = 0, 22 DateBookWeekLstHeader(bool onM, QWidget* parent = 0, const char* name = 0,
23 WFlags fl = 0 ); 23 WFlags fl = 0 );
24 ~DateBookWeekLstHeader(); 24 ~DateBookWeekLstHeader();
25 void setDate(const QDate &d); 25 void setDate(const QDate &d);
26 26
27public slots: 27public slots:
28 void nextWeek(); 28 void nextWeek();
29 void prevWeek(); 29 void prevWeek();
30 void pickDate(); 30 void pickDate();
31 void setDate(int y, int m, int d); 31 void setDate(int y, int m, int d);
32signals: 32signals:
33 void dateChanged(int y, int w); 33 void dateChanged(int y, int w);
34 void setDbl(bool on); 34 void setDbl(bool on);
35private: 35private:
36 QDate date; 36 QDate date;
37 bool onMonday; 37 bool onMonday;
38}; 38};
39 39
40class DateBookWeekLstDayHdr: public DateBookWeekLstDayHdrBase 40class DateBookWeekLstDayHdr: public DateBookWeekLstDayHdrBase
41{ 41{
42 Q_OBJECT 42 Q_OBJECT
43public: 43public:
44 DateBookWeekLstDayHdr(const QDate &d, bool onM, 44 DateBookWeekLstDayHdr(const QDate &d, bool onM,
45 QWidget* parent = 0, const char* name = 0, 45 QWidget* parent = 0, const char* name = 0,
46 WFlags fl = 0 ); 46 WFlags fl = 0 );
47public slots: 47public slots:
48 void showDay(); 48 void showDay();
49 void newEvent(); 49 void newEvent();
50signals: 50signals:
51 void showDate(int y, int m, int d); 51 void showDate(int y, int m, int d);
52 void addEvent(const QDateTime &start, const QDateTime &stop, 52 void addEvent(const QDateTime &start, const QDateTime &stop,
53 const QString &str); 53 const QString &str);
54private: 54private:
55 QDate date; 55 QDate date;
56}; 56};
57 57
58class DateBookWeekLstEvent: public ClickableLabel 58class DateBookWeekLstEvent: public OClickableLabel
59{ 59{
60 Q_OBJECT 60 Q_OBJECT
61public: 61public:
62 DateBookWeekLstEvent(const EffectiveEvent &ev, 62 DateBookWeekLstEvent(const EffectiveEvent &ev,
63 QWidget* parent = 0, const char* name = 0, 63 QWidget* parent = 0, const char* name = 0,
64 WFlags fl = 0); 64 WFlags fl = 0);
65signals: 65signals:
66 void editEvent(const Event &e); 66 void editEvent(const Event &e);
67private slots: 67private slots:
68 void editMe(); 68 void editMe();
69private: 69private:
70 const EffectiveEvent event; 70 const EffectiveEvent event;
71}; 71};
72 72
73class DateBookWeekLstView: public QWidget 73class DateBookWeekLstView: public QWidget
74{ 74{
75 Q_OBJECT 75 Q_OBJECT
76public: 76public:
77 DateBookWeekLstView(QValueList<EffectiveEvent> &ev, const QDate &d, bool onM, 77 DateBookWeekLstView(QValueList<EffectiveEvent> &ev, const QDate &d, bool onM,
78 QWidget* parent = 0, const char* name = 0, 78 QWidget* parent = 0, const char* name = 0,
79 WFlags fl = 0 ); 79 WFlags fl = 0 );
80 ~DateBookWeekLstView(); 80 ~DateBookWeekLstView();
81signals: 81signals:
82 void editEvent(const Event &e); 82 void editEvent(const Event &e);
diff --git a/core/pim/datebook/datebookweeklstdayhdr.ui b/core/pim/datebook/datebookweeklstdayhdr.ui
index 2b68754..9499726 100644
--- a/core/pim/datebook/datebookweeklstdayhdr.ui
+++ b/core/pim/datebook/datebookweeklstdayhdr.ui
@@ -39,107 +39,107 @@
39 <property stdset="1"> 39 <property stdset="1">
40 <name>name</name> 40 <name>name</name>
41 <cstring>Line1</cstring> 41 <cstring>Line1</cstring>
42 </property> 42 </property>
43 <property stdset="1"> 43 <property stdset="1">
44 <name>minimumSize</name> 44 <name>minimumSize</name>
45 <size> 45 <size>
46 <width>0</width> 46 <width>0</width>
47 <height>0</height> 47 <height>0</height>
48 </size> 48 </size>
49 </property> 49 </property>
50 <property stdset="1"> 50 <property stdset="1">
51 <name>maximumSize</name> 51 <name>maximumSize</name>
52 <size> 52 <size>
53 <width>32767</width> 53 <width>32767</width>
54 <height>32767</height> 54 <height>32767</height>
55 </size> 55 </size>
56 </property> 56 </property>
57 <property stdset="1"> 57 <property stdset="1">
58 <name>orientation</name> 58 <name>orientation</name>
59 <enum>Horizontal</enum> 59 <enum>Horizontal</enum>
60 </property> 60 </property>
61 </widget> 61 </widget>
62 <widget> 62 <widget>
63 <class>ClickableLabel</class> 63 <class>OClickableLabel</class>
64 <property stdset="1"> 64 <property stdset="1">
65 <name>name</name> 65 <name>name</name>
66 <cstring>label</cstring> 66 <cstring>label</cstring>
67 </property> 67 </property>
68 <property stdset="1"> 68 <property stdset="1">
69 <name>sizePolicy</name> 69 <name>sizePolicy</name>
70 <sizepolicy> 70 <sizepolicy>
71 <hsizetype>0</hsizetype> 71 <hsizetype>0</hsizetype>
72 <vsizetype>0</vsizetype> 72 <vsizetype>0</vsizetype>
73 </sizepolicy> 73 </sizepolicy>
74 </property> 74 </property>
75 <property stdset="1"> 75 <property stdset="1">
76 <name>font</name> 76 <name>font</name>
77 <font> 77 <font>
78 <bold>1</bold> 78 <bold>1</bold>
79 </font> 79 </font>
80 </property> 80 </property>
81 </widget> 81 </widget>
82 <widget> 82 <widget>
83 <class>Line</class> 83 <class>Line</class>
84 <property stdset="1"> 84 <property stdset="1">
85 <name>name</name> 85 <name>name</name>
86 <cstring>Line1_2</cstring> 86 <cstring>Line1_2</cstring>
87 </property> 87 </property>
88 <property stdset="1"> 88 <property stdset="1">
89 <name>minimumSize</name> 89 <name>minimumSize</name>
90 <size> 90 <size>
91 <width>0</width> 91 <width>0</width>
92 <height>0</height> 92 <height>0</height>
93 </size> 93 </size>
94 </property> 94 </property>
95 <property stdset="1"> 95 <property stdset="1">
96 <name>maximumSize</name> 96 <name>maximumSize</name>
97 <size> 97 <size>
98 <width>32767</width> 98 <width>32767</width>
99 <height>32767</height> 99 <height>32767</height>
100 </size> 100 </size>
101 </property> 101 </property>
102 <property stdset="1"> 102 <property stdset="1">
103 <name>orientation</name> 103 <name>orientation</name>
104 <enum>Horizontal</enum> 104 <enum>Horizontal</enum>
105 </property> 105 </property>
106 </widget> 106 </widget>
107 <widget> 107 <widget>
108 <class>ClickableLabel</class> 108 <class>OClickableLabel</class>
109 <property stdset="1"> 109 <property stdset="1">
110 <name>name</name> 110 <name>name</name>
111 <cstring>add</cstring> 111 <cstring>add</cstring>
112 </property> 112 </property>
113 <property stdset="1"> 113 <property stdset="1">
114 <name>sizePolicy</name> 114 <name>sizePolicy</name>
115 <sizepolicy> 115 <sizepolicy>
116 <hsizetype>0</hsizetype> 116 <hsizetype>0</hsizetype>
117 <vsizetype>0</vsizetype> 117 <vsizetype>0</vsizetype>
118 </sizepolicy> 118 </sizepolicy>
119 </property> 119 </property>
120 </widget> 120 </widget>
121 </hbox> 121 </hbox>
122</widget> 122</widget>
123<customwidgets> 123<customwidgets>
124 <customwidget> 124 <customwidget>
125 <class>ClickableLabel</class> 125 <class>OClickableLabel</class>
126 <header location="local">clickablelabel.h</header> 126 <header location="global">opie/oclickablelabel.h</header>
127 <sizehint> 127 <sizehint>
128 <width>-1</width> 128 <width>-1</width>
129 <height>-1</height> 129 <height>-1</height>
130 </sizehint> 130 </sizehint>
131 <container>0</container> 131 <container>0</container>
132 <sizepolicy> 132 <sizepolicy>
133 <hordata>5</hordata> 133 <hordata>5</hordata>
134 <verdata>5</verdata> 134 <verdata>5</verdata>
135 </sizepolicy> 135 </sizepolicy>
136 <pixmap>image0</pixmap> 136 <pixmap>image0</pixmap>
137 </customwidget> 137 </customwidget>
138</customwidgets> 138</customwidgets>
139<images> 139<images>
140 <image> 140 <image>
141 <name>image0</name> 141 <name>image0</name>
142 <data format="XPM.GZ" length="646">789c6dd2c10ac2300c00d07bbf2234b7229d1ddec44f503c0ae2a154410f53d0ed20e2bf6bdb656dd6861dd23d9a66591b0587fd1654235ebded6f0edcd53e419d87ae7b1f4f9b8f906d0bfe012317426a70b07bdc2f3ec77f8ed6b89559061a0343d06a124cc105596482585094bc0ae599b04646c9018926491b2205e140c485cace25755c175d0a967b622ff900b8cc9c7d29af594ea722d589167f813aa852ba07d94b9dce296e883fe7bb163f23896753</data> 142 <data format="XPM.GZ" length="646">789c6dd2c10ac2300c00d07bbf2234b7229d1ddec44f503c0ae2a154410f53d0ed20e2bf6bdb656dd6861dd23d9a66591b0587fd1654235ebded6f0edcd53e419d87ae7b1f4f9b8f906d0bfe012317426a70b07bdc2f3ec77f8ed6b89559061a0343d06a124cc105596482585094bc0ae599b04646c9018926491b2205e140c485cace25755c175d0a967b622ff900b8cc9c7d29af594ea722d589167f813aa852ba07d94b9dce296e883fe7bb163f23896753</data>
143 </image> 143 </image>
144</images> 144</images>
145</UI> 145</UI>
diff --git a/core/pim/datebook/dateentryimpl.cpp b/core/pim/datebook/dateentryimpl.cpp
index e14e2f5..c4f6c68 100644
--- a/core/pim/datebook/dateentryimpl.cpp
+++ b/core/pim/datebook/dateentryimpl.cpp
@@ -22,63 +22,65 @@
22#include "repeatentry.h" 22#include "repeatentry.h"
23 23
24#include <qpe/qpeapplication.h> 24#include <qpe/qpeapplication.h>
25#include <qpe/categoryselect.h> 25#include <qpe/categoryselect.h>
26#include <qpe/datebookmonth.h> 26#include <qpe/datebookmonth.h>
27#include <qpe/global.h> 27#include <qpe/global.h>
28#include <qpe/timeconversion.h> 28#include <qpe/timeconversion.h>
29#include <qpe/timestring.h> 29#include <qpe/timestring.h>
30#include <qpe/tzselect.h> 30#include <qpe/tzselect.h>
31 31
32#include <qevent.h> 32#include <qevent.h>
33#include <qcheckbox.h> 33#include <qcheckbox.h>
34#include <qcombobox.h> 34#include <qcombobox.h>
35#include <qlayout.h> 35#include <qlayout.h>
36#include <qlineedit.h> 36#include <qlineedit.h>
37#include <qmultilineedit.h> 37#include <qmultilineedit.h>
38#include <qpopupmenu.h> 38#include <qpopupmenu.h>
39#include <qscrollview.h> 39#include <qscrollview.h>
40#include <qspinbox.h> 40#include <qspinbox.h>
41#include <qtoolbutton.h> 41#include <qtoolbutton.h>
42 42
43#include "timepicker.h" 43#include "timepicker.h"
44 44
45#include <stdlib.h> 45#include <stdlib.h>
46#include <stdio.h>
46 47
47/* 48/*
48 * Constructs a DateEntry which is a child of 'parent', with the 49 * Constructs a DateEntry which is a child of 'parent', with the
49 * name 'name' and widget flags set to 'f' 50 * name 'name' and widget flags set to 'f'
50 * 51 *
51 * The dialog will by default be modeless, unless you set 'modal' to 52 * The dialog will by default be modeless, unless you set 'modal' to
52 * TRUE to construct a modal dialog. 53 * TRUE to construct a modal dialog.
53 */ 54 */
54 55
55DateEntry::DateEntry( bool startOnMonday, const QDateTime &start, 56DateEntry::DateEntry( bool startOnMonday, const QDateTime &start,
56 const QDateTime &end, bool whichClock, QWidget* parent, 57 const QDateTime &end, bool whichClock, QWidget* parent,
57 const char* name ) 58 const char* name )
58 : DateEntryBase( parent, name ), 59 : DateEntryBase( parent, name ),
59 ampm( whichClock ), 60 ampm( whichClock ),
60 startWeekOnMonday( startOnMonday ) 61 startWeekOnMonday( startOnMonday ),
62 m_showStart(true)
61{ 63{
62 init(); 64 init();
63 setDates(start,end); 65 setDates(start,end);
64 setFocusProxy(comboDescription); 66 setFocusProxy(comboDescription);
65} 67}
66 68
67bool DateEntry::eventFilter(QObject *obj, QEvent *ev ) 69bool DateEntry::eventFilter(QObject *obj, QEvent *ev )
68{ 70{
69 if( ev->type() == QEvent::FocusIn ){ 71 if( ev->type() == QEvent::FocusIn ){
70 if( obj == comboStart ){ 72 if( obj == comboStart ){
71 timePickerStart->setHour(startTime.hour()); 73 timePickerStart->setHour(startTime.hour());
72 timePickerStart->setMinute(startTime.minute()); 74 timePickerStart->setMinute(startTime.minute());
73 TimePickerLabel->setText( tr("Start Time" ) ); 75 TimePickerLabel->setText( tr("Start Time" ) );
74 m_showStart= true; 76 m_showStart= true;
75 }else if( obj == comboEnd ){ 77 }else if( obj == comboEnd ){
76 timePickerStart->setHour(endTime.hour()); 78 timePickerStart->setHour(endTime.hour());
77 timePickerStart->setMinute(endTime.minute()); 79 timePickerStart->setMinute(endTime.minute());
78 TimePickerLabel->setText( tr("End Time") ); 80 TimePickerLabel->setText( tr("End Time") );
79 m_showStart = false; 81 m_showStart = false;
80 } 82 }
81 } else if( ev->type() == QEvent::FocusOut ){ 83 } else if( ev->type() == QEvent::FocusOut ){
82 if( obj == comboEnd ){ 84 if( obj == comboEnd ){
83 QString s; 85 QString s;
84 s.sprintf("%.2d:%.2d",endTime.hour(), endTime.minute()); 86 s.sprintf("%.2d:%.2d",endTime.hour(), endTime.minute());
@@ -92,49 +94,51 @@ bool DateEntry::eventFilter(QObject *obj, QEvent *ev )
92 } 94 }
93 95
94 return false; 96 return false;
95} 97}
96 98
97static void addOrPick( QComboBox* combo, const QString& t ) 99static void addOrPick( QComboBox* combo, const QString& t )
98{ 100{
99 // Pick an item if one excists 101 // Pick an item if one excists
100 for (int i=0; i<combo->count(); i++) { 102 for (int i=0; i<combo->count(); i++) {
101 if ( combo->text(i) == t ) { 103 if ( combo->text(i) == t ) {
102 combo->setCurrentItem(i); 104 combo->setCurrentItem(i);
103 return; 105 return;
104 } 106 }
105 } 107 }
106 108
107 // Else add one 109 // Else add one
108 combo->insertItem(t); 110 combo->insertItem(t);
109 combo->setCurrentItem(combo->count()-1); 111 combo->setCurrentItem(combo->count()-1);
110} 112}
111 113
112DateEntry::DateEntry( bool startOnMonday, const Event &event, bool whichClock, 114DateEntry::DateEntry( bool startOnMonday, const Event &event, bool whichClock,
113 QWidget* parent, const char* name ) 115 QWidget* parent, const char* name )
114 : DateEntryBase( parent, name ), 116 : DateEntryBase( parent, name ),
115 ampm( whichClock ), 117 ampm( whichClock ),
116 startWeekOnMonday( startOnMonday ) 118 startWeekOnMonday( startOnMonday ),
119 m_showStart(true)
120
117{ 121{
118 init(); 122 init();
119 setDates(event.start(),event.end()); 123 setDates(event.start(),event.end());
120 comboCategory->setCategories( event.categories(), "Calendar", tr("Calendar") ); 124 comboCategory->setCategories( event.categories(), "Calendar", tr("Calendar") );
121 if(!event.description().isEmpty()) 125 if(!event.description().isEmpty())
122 addOrPick( comboDescription, event.description() ); 126 addOrPick( comboDescription, event.description() );
123 if(!event.location().isEmpty()) 127 if(!event.location().isEmpty())
124 addOrPick( comboLocation, event.location() ); 128 addOrPick( comboLocation, event.location() );
125 checkAlarm->setChecked( event.hasAlarm() ); 129 checkAlarm->setChecked( event.hasAlarm() );
126 checkAllDay->setChecked( event.type() == Event::AllDay ); 130 checkAllDay->setChecked( event.type() == Event::AllDay );
127 if(!event.notes().isEmpty()) 131 if(!event.notes().isEmpty())
128 editNote->setText(event.notes()); 132 editNote->setText(event.notes());
129 spinAlarm->setValue(event.alarmTime()); 133 spinAlarm->setValue(event.alarmTime());
130 if ( event.alarmSound() != Event::Silent ) 134 if ( event.alarmSound() != Event::Silent )
131 comboSound->setCurrentItem( 1 ); 135 comboSound->setCurrentItem( 1 );
132 if ( event.hasRepeat() ) { 136 if ( event.hasRepeat() ) {
133 rp = event.repeatPattern(); 137 rp = event.repeatPattern();
134 cmdRepeat->setText( tr("Repeat...") ); 138 cmdRepeat->setText( tr("Repeat...") );
135 } 139 }
136 setRepeatLabel(); 140 setRepeatLabel();
137} 141}
138 142
139void DateEntry::setDates( const QDateTime& s, const QDateTime& e ) 143void DateEntry::setDates( const QDateTime& s, const QDateTime& e )
140{ 144{
diff --git a/core/pim/datebook/opie-datebook.control b/core/pim/datebook/opie-datebook.control
index 6566d50..9bef119 100644
--- a/core/pim/datebook/opie-datebook.control
+++ b/core/pim/datebook/opie-datebook.control
@@ -1,9 +1,9 @@
1Files: bin/datebook apps/Applications/datebook.desktop 1Files: bin/datebook apps/Applications/datebook.desktop
2Priority: optional 2Priority: optional
3Section: opie/applications 3Section: opie/applications
4Maintainer: Warwick Allison <warwick@trolltech.com> 4Maintainer: Warwick Allison <warwick@trolltech.com>
5Architecture: arm 5Architecture: arm
6Version: $QPE_VERSION-$SUB_VERSION 6Version: $QPE_VERSION-$SUB_VERSION
7Depends: opie-base ($QPE_VERSION) 7Depends: opie-base ($QPE_VERSION), libopie ($QPE_VERSION)
8Description: A datebook/appointment manager 8Description: A datebook/appointment manager
9 A datebook/appointment manager for the Opie environment. 9 A datebook/appointment manager for the Opie environment.
diff --git a/core/pim/datebook/timepicker.cpp b/core/pim/datebook/timepicker.cpp
index 43e05ad..f2cb71d 100644
--- a/core/pim/datebook/timepicker.cpp
+++ b/core/pim/datebook/timepicker.cpp
@@ -1,120 +1,119 @@
1#include "timepicker.h" 1#include "timepicker.h"
2 2
3#include <qbuttongroup.h> 3#include <qbuttongroup.h>
4#include <qtoolbutton.h> 4#include <qtoolbutton.h>
5#include <qlayout.h> 5#include <qlayout.h>
6#include "clickablelabel.h"
7#include <qstring.h> 6#include <qstring.h>
8#include <stdio.h> 7#include <stdio.h>
9 8
10TimePicker::TimePicker(QWidget* parent, const char* name, 9TimePicker::TimePicker(QWidget* parent, const char* name,
11 WFlags fl) : 10 WFlags fl) :
12 QWidget(parent,name,fl) 11 QWidget(parent,name,fl)
13{ 12{
14 QVBoxLayout *vbox=new QVBoxLayout(this); 13 QVBoxLayout *vbox=new QVBoxLayout(this);
15 14
16 ClickableLabel *r; 15 OClickableLabel *r;
17 QString s; 16 QString s;
18 17
19 // Hour Row 18 // Hour Row
20 QWidget *row=new QWidget(this); 19 QWidget *row=new QWidget(this);
21 QHBoxLayout *l=new QHBoxLayout(row); 20 QHBoxLayout *l=new QHBoxLayout(row);
22 vbox->addWidget(row); 21 vbox->addWidget(row);
23 22
24 23
25 for (int i=0; i<24; i++) { 24 for (int i=0; i<24; i++) {
26 r=new ClickableLabel(row); 25 r=new OClickableLabel(row);
27 hourLst.append(r); 26 hourLst.append(r);
28 s.sprintf("%.2d",i); 27 s.sprintf("%.2d",i);
29 r->setText(s); 28 r->setText(s);
30 r->setToggleButton(true); 29 r->setToggleButton(true);
31 r->setAlignment(AlignHCenter | AlignVCenter); 30 r->setAlignment(AlignHCenter | AlignVCenter);
32 l->addWidget(r); 31 l->addWidget(r);
33 connect(r, SIGNAL(toggled(bool)), 32 connect(r, SIGNAL(toggled(bool)),
34 this, SLOT(slotHour(bool))); 33 this, SLOT(slotHour(bool)));
35 34
36 if (i==11) { // Second row 35 if (i==11) { // Second row
37 row=new QWidget(this); 36 row=new QWidget(this);
38 l=new QHBoxLayout(row); 37 l=new QHBoxLayout(row);
39 vbox->addWidget(row); 38 vbox->addWidget(row);
40 } 39 }
41 } 40 }
42 41
43 // Minute Row 42 // Minute Row
44 row=new QWidget(this); 43 row=new QWidget(this);
45 l=new QHBoxLayout(row); 44 l=new QHBoxLayout(row);
46 vbox->addWidget(row); 45 vbox->addWidget(row);
47 46
48 for (int i=0; i<60; i+=5) { 47 for (int i=0; i<60; i+=5) {
49 r=new ClickableLabel(row); 48 r=new OClickableLabel(row);
50 minuteLst.append(r); 49 minuteLst.append(r);
51 s.sprintf("%.2d",i); 50 s.sprintf("%.2d",i);
52 r->setText(s); 51 r->setText(s);
53 r->setToggleButton(true); 52 r->setToggleButton(true);
54 r->setAlignment(AlignHCenter | AlignVCenter); 53 r->setAlignment(AlignHCenter | AlignVCenter);
55 l->addWidget(r); 54 l->addWidget(r);
56 connect(r, SIGNAL(toggled(bool)), 55 connect(r, SIGNAL(toggled(bool)),
57 this, SLOT(slotMinute(bool))); 56 this, SLOT(slotMinute(bool)));
58 } 57 }
59} 58}
60 59
61void TimePicker::slotHour(bool b) { 60void TimePicker::slotHour(bool b) {
62 61
63 ClickableLabel *r = (ClickableLabel *) sender(); 62 OClickableLabel *r = (OClickableLabel *) sender();
64 63
65 if (b) { 64 if (b) {
66 QValueListIterator<ClickableLabel *> it; 65 QValueListIterator<OClickableLabel *> it;
67 for (it=hourLst.begin(); it!=hourLst.end(); it++) { 66 for (it=hourLst.begin(); it!=hourLst.end(); it++) {
68 if (*it != r) (*it)->setOn(false); 67 if (*it != r) (*it)->setOn(false);
69 else tm.setHMS((*it)->text().toInt(), tm.minute(), 0); 68 else tm.setHMS((*it)->text().toInt(), tm.minute(), 0);
70 } 69 }
71 emit timeChanged(tm); 70 emit timeChanged(tm);
72 } else { 71 } else {
73 r->setOn(true); 72 r->setOn(true);
74 } 73 }
75 74
76} 75}
77 76
78void TimePicker::slotMinute(bool b) { 77void TimePicker::slotMinute(bool b) {
79 78
80 ClickableLabel *r = (ClickableLabel *) sender(); 79 OClickableLabel *r = (OClickableLabel *) sender();
81 80
82 if (b) { 81 if (b) {
83 QValueListIterator<ClickableLabel *> it; 82 QValueListIterator<OClickableLabel *> it;
84 for (it=minuteLst.begin(); it!=minuteLst.end(); it++) { 83 for (it=minuteLst.begin(); it!=minuteLst.end(); it++) {
85 if (*it != r) (*it)->setOn(false); 84 if (*it != r) (*it)->setOn(false);
86 else tm.setHMS(tm.hour(),(*it)->text().toInt(), 0); 85 else tm.setHMS(tm.hour(),(*it)->text().toInt(), 0);
87 } 86 }
88 emit timeChanged(tm); 87 emit timeChanged(tm);
89 } else { 88 } else {
90 r->setOn(true); 89 r->setOn(true);
91 } 90 }
92 91
93} 92}
94 93
95void TimePicker::setMinute(int m) { 94void TimePicker::setMinute(int m) {
96 95
97 QString minute; 96 QString minute;
98 minute.sprintf("%.2d",m); 97 minute.sprintf("%.2d",m);
99 98
100 QValueListIterator<ClickableLabel *> it; 99 QValueListIterator<OClickableLabel *> it;
101 for (it=minuteLst.begin(); it!=minuteLst.end(); it++) { 100 for (it=minuteLst.begin(); it!=minuteLst.end(); it++) {
102 if ((*it)->text() == minute) (*it)->setOn(true); 101 if ((*it)->text() == minute) (*it)->setOn(true);
103 else (*it)->setOn(false); 102 else (*it)->setOn(false);
104 } 103 }
105 104
106 tm.setHMS(tm.hour(),m,0); 105 tm.setHMS(tm.hour(),m,0);
107} 106}
108 107
109void TimePicker::setHour(int h) { 108void TimePicker::setHour(int h) {
110 109
111 QString hour; 110 QString hour;
112 hour.sprintf("%.2d",h); 111 hour.sprintf("%.2d",h);
113 112
114 QValueListIterator<ClickableLabel *> it; 113 QValueListIterator<OClickableLabel *> it;
115 for (it=hourLst.begin(); it!=hourLst.end(); it++) { 114 for (it=hourLst.begin(); it!=hourLst.end(); it++) {
116 if ((*it)->text() == hour) (*it)->setOn(true); 115 if ((*it)->text() == hour) (*it)->setOn(true);
117 else (*it)->setOn(false); 116 else (*it)->setOn(false);
118 } 117 }
119 tm.setHMS(h,tm.minute(),0); 118 tm.setHMS(h,tm.minute(),0);
120} 119}
diff --git a/core/pim/datebook/timepicker.h b/core/pim/datebook/timepicker.h
index 0acadcb..1c35600 100644
--- a/core/pim/datebook/timepicker.h
+++ b/core/pim/datebook/timepicker.h
@@ -1,32 +1,32 @@
1#ifndef TIMEPICKER_H 1#ifndef TIMEPICKER_H
2#define TIMEPICKER_H 2#define TIMEPICKER_H
3 3
4#include <qwidget.h> 4#include <qwidget.h>
5#include <qvaluelist.h> 5#include <qvaluelist.h>
6#include "clickablelabel.h" 6#include <opie/oclickablelabel.h>
7#include <qdatetime.h> 7#include <qdatetime.h>
8 8
9class TimePicker: public QWidget { 9class TimePicker: public QWidget {
10 Q_OBJECT 10 Q_OBJECT
11 11
12 public: 12 public:
13 TimePicker(QWidget* parent = 0, const char* name = 0, 13 TimePicker(QWidget* parent = 0, const char* name = 0,
14 WFlags fl = 0); 14 WFlags fl = 0);
15 void setHour(int h); 15 void setHour(int h);
16 void setMinute(int m); 16 void setMinute(int m);
17 17
18 private: 18 private:
19 QValueList<ClickableLabel *> hourLst; 19 QValueList<OClickableLabel *> hourLst;
20 QValueList<ClickableLabel *> minuteLst; 20 QValueList<OClickableLabel *> minuteLst;
21 QTime tm; 21 QTime tm;
22 22
23 private slots: 23 private slots:
24 void slotHour(bool b); 24 void slotHour(bool b);
25 void slotMinute(bool b); 25 void slotMinute(bool b);
26 26
27 signals: 27 signals:
28 void timeChanged(const QTime &); 28 void timeChanged(const QTime &);
29}; 29};
30 30
31 31
32#endif 32#endif