summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-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
-rw-r--r--libopie/libopie.pro4
-rw-r--r--libopie/oclickablelabel.cpp (renamed from core/pim/datebook/clickablelabel.cpp)18
-rw-r--r--libopie/oclickablelabel.h (renamed from core/pim/datebook/clickablelabel.h)4
11 files changed, 40 insertions, 39 deletions
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
@@ -98,97 +98,97 @@ DateBookWeekLstDayHdr::DateBookWeekLstDayHdr(const QDate &d, bool onM,
98 : DateBookWeekLstDayHdrBase(parent, name, fl) { 98 : DateBookWeekLstDayHdrBase(parent, name, fl) {
99 99
100 date=d; 100 date=d;
101 101
102 static const char *wdays="MTWTFSS"; 102 static const char *wdays="MTWTFSS";
103 char day=wdays[d.dayOfWeek()-1]; 103 char day=wdays[d.dayOfWeek()-1];
104 104
105 label->setText( QString(QChar(day)) + " " + 105 label->setText( QString(QChar(day)) + " " +
106 QString::number(d.day()) ); 106 QString::number(d.day()) );
107 add->setText("+"); 107 add->setText("+");
108 108
109 if (d == QDate::currentDate()) { 109 if (d == QDate::currentDate()) {
110 QPalette pal=label->palette(); 110 QPalette pal=label->palette();
111 pal.setColor(QColorGroup::Foreground, QColor(0,0,255)); 111 pal.setColor(QColorGroup::Foreground, QColor(0,0,255));
112 label->setPalette(pal); 112 label->setPalette(pal);
113 113
114 /* 114 /*
115 QFont f=label->font(); 115 QFont f=label->font();
116 f.setItalic(true); 116 f.setItalic(true);
117 label->setFont(f); 117 label->setFont(f);
118 label->setPalette(QPalette(QColor(0,0,255),label->backgroundColor())); 118 label->setPalette(QPalette(QColor(0,0,255),label->backgroundColor()));
119 */ 119 */
120 } else if (d.dayOfWeek() == 7) { // FIXME: Match any holiday 120 } else if (d.dayOfWeek() == 7) { // FIXME: Match any holiday
121 QPalette pal=label->palette(); 121 QPalette pal=label->palette();
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,
171 const char* name, WFlags fl) 171 const char* name, WFlags fl)
172 : QWidget( parent, name, fl ) 172 : QWidget( parent, name, fl )
173{ 173{
174 onMonday=onM; 174 onMonday=onM;
175 setPalette(white); 175 setPalette(white);
176 setSizePolicy(QSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding)); 176 setSizePolicy(QSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding));
177 177
178 QVBoxLayout *layout = new QVBoxLayout( this ); 178 QVBoxLayout *layout = new QVBoxLayout( this );
179 179
180 qBubbleSort(ev); 180 qBubbleSort(ev);
181 QValueListIterator<EffectiveEvent> it; 181 QValueListIterator<EffectiveEvent> it;
182 it=ev.begin(); 182 it=ev.begin();
183 183
184 int dayOrder[7]; 184 int dayOrder[7];
185 if (onMonday) 185 if (onMonday)
186 for (int d=0; d<7; d++) dayOrder[d]=d+1; 186 for (int d=0; d<7; d++) dayOrder[d]=d+1;
187 else { 187 else {
188 for (int d=0; d<7; d++) dayOrder[d]=d; 188 for (int d=0; d<7; d++) dayOrder[d]=d;
189 dayOrder[0]=7; 189 dayOrder[0]=7;
190 } 190 }
191 191
192 for (int i=0; i<7; i++) { 192 for (int i=0; i<7; i++) {
193 // Header 193 // Header
194 DateBookWeekLstDayHdr *hdr=new DateBookWeekLstDayHdr(d.addDays(i), 194 DateBookWeekLstDayHdr *hdr=new DateBookWeekLstDayHdr(d.addDays(i),
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,106 +1,106 @@
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);
83 void showDate(int y, int m, int d); 83 void showDate(int y, int m, int d);
84 void addEvent(const QDateTime &start, const QDateTime &stop, 84 void addEvent(const QDateTime &start, const QDateTime &stop,
85 const QString &str); 85 const QString &str);
86private: 86private:
87 bool onMonday; 87 bool onMonday;
88protected slots: 88protected slots:
89 void keyPressEvent(QKeyEvent *); 89 void keyPressEvent(QKeyEvent *);
90}; 90};
91 91
92class DateBookWeekLstDblView: public QWidget { 92class DateBookWeekLstDblView: public QWidget {
93 Q_OBJECT 93 Q_OBJECT
94public: 94public:
95 DateBookWeekLstDblView(QValueList<EffectiveEvent> &ev1, 95 DateBookWeekLstDblView(QValueList<EffectiveEvent> &ev1,
96 QValueList<EffectiveEvent> &ev2, 96 QValueList<EffectiveEvent> &ev2,
97 QDate &d, bool onM, 97 QDate &d, bool onM,
98 QWidget* parent = 0, const char* name = 0, 98 QWidget* parent = 0, const char* name = 0,
99 WFlags fl = 0 ); 99 WFlags fl = 0 );
100signals: 100signals:
101 void editEvent(const Event &e); 101 void editEvent(const Event &e);
102 void showDate(int y, int m, int d); 102 void showDate(int y, int m, int d);
103 void addEvent(const QDateTime &start, const QDateTime &stop, 103 void addEvent(const QDateTime &start, const QDateTime &stop,
104 const QString &str); 104 const QString &str);
105}; 105};
106 106
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
@@ -15,131 +15,131 @@
15 <height>5</height> 15 <height>5</height>
16 </rect> 16 </rect>
17 </property> 17 </property>
18 <property stdset="1"> 18 <property stdset="1">
19 <name>sizePolicy</name> 19 <name>sizePolicy</name>
20 <sizepolicy> 20 <sizepolicy>
21 <hsizetype>7</hsizetype> 21 <hsizetype>7</hsizetype>
22 <vsizetype>0</vsizetype> 22 <vsizetype>0</vsizetype>
23 </sizepolicy> 23 </sizepolicy>
24 </property> 24 </property>
25 <property> 25 <property>
26 <name>layoutMargin</name> 26 <name>layoutMargin</name>
27 </property> 27 </property>
28 <hbox> 28 <hbox>
29 <property stdset="1"> 29 <property stdset="1">
30 <name>margin</name> 30 <name>margin</name>
31 <number>0</number> 31 <number>0</number>
32 </property> 32 </property>
33 <property stdset="1"> 33 <property stdset="1">
34 <name>spacing</name> 34 <name>spacing</name>
35 <number>6</number> 35 <number>6</number>
36 </property> 36 </property>
37 <widget> 37 <widget>
38 <class>Line</class> 38 <class>Line</class>
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
@@ -1,164 +1,168 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved. 2** Copyright (C) 2000 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of Qtopia Environment. 4** This file is part of Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20 20
21#include "dateentryimpl.h" 21#include "dateentryimpl.h"
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());
85 comboEnd->setText(s); 87 comboEnd->setText(s);
86 } 88 }
87 else if( obj == comboStart ){ 89 else if( obj == comboStart ){
88 QString s; 90 QString s;
89 s.sprintf("%.2d:%.2d",startTime.hour(), startTime.minute()); 91 s.sprintf("%.2d:%.2d",startTime.hour(), startTime.minute());
90 comboStart->setText(s); 92 comboStart->setText(s);
91 } 93 }
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{
141 startDate = s.date(); 145 startDate = s.date();
142 endDate = e.date(); 146 endDate = e.date();
143 startTime = s.time(); 147 startTime = s.time();
144 endTime = e.time(); 148 endTime = e.time();
145 149
146 startDateChanged( s.date().year(), s.date().month(), s.date().day() ); 150 startDateChanged( s.date().year(), s.date().month(), s.date().day() );
147 endDateChanged( e.date().year(), e.date().month(), e.date().day() ); 151 endDateChanged( e.date().year(), e.date().month(), e.date().day() );
148 152
149 updateTimeEdit(true,true); 153 updateTimeEdit(true,true);
150} 154}
151 155
152void DateEntry::updateTimeEdit(bool s, bool e) { 156void DateEntry::updateTimeEdit(bool s, bool e) {
153 157
154 // Comboboxes 158 // Comboboxes
155 QString strStart, strEnd; 159 QString strStart, strEnd;
156 int shour, ehour; 160 int shour, ehour;
157 if ( ampm ) { 161 if ( ampm ) {
158 shour = startTime.hour(); 162 shour = startTime.hour();
159 ehour = endTime.hour(); 163 ehour = endTime.hour();
160 if ( shour >= 12 ) { 164 if ( shour >= 12 ) {
161 if ( shour > 12 ) 165 if ( shour > 12 )
162 shour -= 12; 166 shour -= 12;
163 strStart.sprintf( "%d:%02d PM", shour, startTime.minute() ); 167 strStart.sprintf( "%d:%02d PM", shour, startTime.minute() );
164 } else { 168 } else {
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
diff --git a/libopie/libopie.pro b/libopie/libopie.pro
index ba64bda..337206a 100644
--- a/libopie/libopie.pro
+++ b/libopie/libopie.pro
@@ -1,8 +1,8 @@
1TEMPLATE = lib 1TEMPLATE = lib
2CONFIG += qte warn_on release 2CONFIG += qte warn_on release
3 HEADERS = ofontmenu.h ofileselector.h ofiledialog.h ofileview.h tododb.h todoevent.h todoresource.h todovcalresource.h xmltree.h colordialog.h colorpopupmenu.h 3 HEADERS = ofontmenu.h ofileselector.h ofiledialog.h ofileview.h tododb.h todoevent.h todoresource.h todovcalresource.h xmltree.h colordialog.h colorpopupmenu.h oclickablelabel.h
4 SOURCES = ofontmenu.cc ofileselector.cc ofiledialog.cc xmltree.cc tododb.cpp todoevent.cpp todovcalresource.cpp colordialog.cpp colorpopupmenu.cpp 4 SOURCES = ofontmenu.cc ofileselector.cc ofiledialog.cc xmltree.cc tododb.cpp todoevent.cpp todovcalresource.cpp colordialog.cpp colorpopupmenu.cpp oclickablelabel.cpp
5 TARGET = opie 5 TARGET = opie
6INCLUDEPATH += $(OPIEDIR)/include 6INCLUDEPATH += $(OPIEDIR)/include
7DESTDIR = $(QTDIR)/lib$(PROJMAK) 7DESTDIR = $(QTDIR)/lib$(PROJMAK)
8#VERSION = 1.0.0 8#VERSION = 1.0.0
diff --git a/core/pim/datebook/clickablelabel.cpp b/libopie/oclickablelabel.cpp
index 128bebb..43a0524 100644
--- a/core/pim/datebook/clickablelabel.cpp
+++ b/libopie/oclickablelabel.cpp
@@ -1,88 +1,88 @@
1#include "clickablelabel.h" 1#include "oclickablelabel.h"
2#include <stdio.h> 2#include <stdio.h>
3 3
4ClickableLabel::ClickableLabel(QWidget* parent, 4OClickableLabel::OClickableLabel(QWidget* parent,
5 const char* name, 5 const char* name,
6 WFlags fl) : 6 WFlags fl) :
7 QLabel(parent,name,fl) 7 QLabel(parent,name,fl)
8{ 8{
9 textInverted=false; 9 textInverted=false;
10 isToggle=false; 10 isToggle=false;
11 isDown=false; 11 isDown=false;
12 showState(false); 12 showState(false);
13 setFrameShadow(Sunken); 13 setFrameShadow(Sunken);
14} 14}
15 15
16void ClickableLabel::setToggleButton(bool t) { 16void OClickableLabel::setToggleButton(bool t) {
17 isToggle=t; 17 isToggle=t;
18} 18}
19 19
20void ClickableLabel::mousePressEvent( QMouseEvent *e ) { 20void OClickableLabel::mousePressEvent( QMouseEvent *e ) {
21 if (isToggle && isDown) { 21 if (isToggle && isDown) {
22 showState(false); 22 showState(false);
23 } else { 23 } else {
24 showState(true); 24 showState(true);
25 } 25 }
26} 26}
27 27
28void ClickableLabel::mouseReleaseEvent( QMouseEvent *e ) { 28void OClickableLabel::mouseReleaseEvent( QMouseEvent *e ) {
29 if (rect().contains(e->pos()) && isToggle) isDown=!isDown; 29 if (rect().contains(e->pos()) && isToggle) isDown=!isDown;
30 30
31 if (isToggle && isDown) { 31 if (isToggle && isDown) {
32 showState(true); 32 showState(true);
33 } else { 33 } else {
34 showState(false); 34 showState(false);
35 } 35 }
36 36
37 if (rect().contains(e->pos())) { 37 if (rect().contains(e->pos())) {
38 if (isToggle) { 38 if (isToggle) {
39 emit toggled(isDown); 39 emit toggled(isDown);
40 } 40 }
41 emit clicked(); 41 emit clicked();
42 } 42 }
43} 43}
44 44
45void ClickableLabel::mouseMoveEvent( QMouseEvent *e ) { 45void OClickableLabel::mouseMoveEvent( QMouseEvent *e ) {
46 if (rect().contains(e->pos())) { 46 if (rect().contains(e->pos())) {
47 if (isToggle && isDown) { 47 if (isToggle && isDown) {
48 showState(false); 48 showState(false);
49 } else { 49 } else {
50 showState(true); 50 showState(true);
51 } 51 }
52 } else { 52 } else {
53 if (isToggle && isDown) { 53 if (isToggle && isDown) {
54 showState(true); 54 showState(true);
55 } else { 55 } else {
56 showState(false); 56 showState(false);
57 } 57 }
58 } 58 }
59} 59}
60 60
61void ClickableLabel::showState(bool on) { 61void OClickableLabel::showState(bool on) {
62 if (on) { 62 if (on) {
63 //setFrameShape(Panel); 63 //setFrameShape(Panel);
64 setInverted(true); 64 setInverted(true);
65 setBackgroundMode(PaletteHighlight); 65 setBackgroundMode(PaletteHighlight);
66 } else { 66 } else {
67 //setFrameShape(NoFrame); 67 //setFrameShape(NoFrame);
68 setInverted(false); 68 setInverted(false);
69 setBackgroundMode(PaletteBackground); 69 setBackgroundMode(PaletteBackground);
70 } 70 }
71 repaint(); 71 repaint();
72} 72}
73 73
74void ClickableLabel::setInverted(bool on) { 74void OClickableLabel::setInverted(bool on) {
75 if ( (!textInverted && on) || (textInverted && !on) ) { 75 if ( (!textInverted && on) || (textInverted && !on) ) {
76 QPalette pal=palette(); 76 QPalette pal=palette();
77 QColor col=pal.color(QPalette::Normal, QColorGroup::Foreground); 77 QColor col=pal.color(QPalette::Normal, QColorGroup::Foreground);
78 col.setRgb(255-col.red(),255-col.green(),255-col.blue()); 78 col.setRgb(255-col.red(),255-col.green(),255-col.blue());
79 pal.setColor(QPalette::Normal, QColorGroup::Foreground, col); 79 pal.setColor(QPalette::Normal, QColorGroup::Foreground, col);
80 setPalette(pal); 80 setPalette(pal);
81 textInverted=!textInverted; 81 textInverted=!textInverted;
82 } 82 }
83} 83}
84 84
85void ClickableLabel::setOn(bool on) { 85void OClickableLabel::setOn(bool on) {
86 isDown=on; 86 isDown=on;
87 showState(isDown); 87 showState(isDown);
88} 88}
diff --git a/core/pim/datebook/clickablelabel.h b/libopie/oclickablelabel.h
index d00fee6..f65c440 100644
--- a/core/pim/datebook/clickablelabel.h
+++ b/libopie/oclickablelabel.h
@@ -1,30 +1,30 @@
1#ifndef CLICKABLELABEL 1#ifndef CLICKABLELABEL
2#define CLICKABLELABEL 2#define CLICKABLELABEL
3 3
4#include <qlabel.h> 4#include <qlabel.h>
5 5
6class ClickableLabel: public QLabel 6class OClickableLabel: public QLabel
7{ 7{
8 Q_OBJECT 8 Q_OBJECT
9public: 9public:
10 ClickableLabel(QWidget* parent = 0, const char* name = 0, 10 OClickableLabel(QWidget* parent = 0, const char* name = 0,
11 WFlags fl = 0); 11 WFlags fl = 0);
12 void setToggleButton(bool t); 12 void setToggleButton(bool t);
13 protected: 13 protected:
14 void mousePressEvent( QMouseEvent *e ); 14 void mousePressEvent( QMouseEvent *e );
15 void mouseReleaseEvent( QMouseEvent *e ); 15 void mouseReleaseEvent( QMouseEvent *e );
16 void mouseMoveEvent( QMouseEvent *e ); 16 void mouseMoveEvent( QMouseEvent *e );
17 public slots: 17 public slots:
18 void setOn(bool on); 18 void setOn(bool on);
19 signals: 19 signals:
20 void clicked(); 20 void clicked();
21 void toggled(bool on); 21 void toggled(bool on);
22 private: 22 private:
23 bool isToggle; 23 bool isToggle;
24 bool isDown; 24 bool isDown;
25 void showState(bool on); 25 void showState(bool on);
26 bool textInverted; 26 bool textInverted;
27 void setInverted(bool on); 27 void setInverted(bool on);
28}; 28};
29 29
30#endif 30#endif