summaryrefslogtreecommitdiffabout
path: root/korganizer
authorzautrix <zautrix>2005-01-31 09:56:31 (UTC)
committer zautrix <zautrix>2005-01-31 09:56:31 (UTC)
commit3e0b1c7cd48903b6886e081210cd83b7441b48ac (patch) (unidiff)
tree69c1937849a14b137df9c76285e061b1f4620df7 /korganizer
parent1c5f4d993bf5eeb4a21bacf61671a1a08ed1f3cd (diff)
downloadkdepimpi-3e0b1c7cd48903b6886e081210cd83b7441b48ac.zip
kdepimpi-3e0b1c7cd48903b6886e081210cd83b7441b48ac.tar.gz
kdepimpi-3e0b1c7cd48903b6886e081210cd83b7441b48ac.tar.bz2
color fixes
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koagendaitem.cpp10
-rw-r--r--korganizer/koprefs.cpp1
-rw-r--r--korganizer/koprefs.h1
-rw-r--r--korganizer/koprefsdialog.cpp6
4 files changed, 17 insertions, 1 deletions
diff --git a/korganizer/koagendaitem.cpp b/korganizer/koagendaitem.cpp
index ee9f39a..a05c60e 100644
--- a/korganizer/koagendaitem.cpp
+++ b/korganizer/koagendaitem.cpp
@@ -1,292 +1,300 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> 3 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org>
4 4
5 This program is free software; you can redistribute it and/or modify 5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or 7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18*/ 18*/
19 19
20#include <qlabel.h> 20#include <qlabel.h>
21#include <qlayout.h> 21#include <qlayout.h>
22#include <qhbox.h> 22#include <qhbox.h>
23#include <qvbox.h> 23#include <qvbox.h>
24#include <qtooltip.h> 24#include <qtooltip.h>
25#include <qwhatsthis.h> 25#include <qwhatsthis.h>
26#include <qdragobject.h> 26#include <qdragobject.h>
27#include <qdrawutil.h> 27#include <qdrawutil.h>
28#include <qpainter.h> 28#include <qpainter.h>
29 29
30#include <kiconloader.h> 30#include <kiconloader.h>
31#include <kdebug.h> 31#include <kdebug.h>
32#include <kglobal.h> 32#include <kglobal.h>
33#include <klocale.h> 33#include <klocale.h>
34#ifndef DESKTOP_VERSION 34#ifndef DESKTOP_VERSION
35#include <qpe/qpeapplication.h> 35#include <qpe/qpeapplication.h>
36#define AGENDA_ICON_SIZE 5 36#define AGENDA_ICON_SIZE 5
37#else 37#else
38#define AGENDA_ICON_SIZE 7 38#define AGENDA_ICON_SIZE 7
39#endif 39#endif
40#include <libkcal/icaldrag.h> 40#include <libkcal/icaldrag.h>
41#include <libkcal/vcaldrag.h> 41#include <libkcal/vcaldrag.h>
42#include <libkcal/kincidenceformatter.h> 42#include <libkcal/kincidenceformatter.h>
43extern int globalFlagBlockAgenda; 43extern int globalFlagBlockAgenda;
44extern int globalFlagBlockAgendaItemPaint; 44extern int globalFlagBlockAgendaItemPaint;
45extern int globalFlagBlockAgendaItemUpdate; 45extern int globalFlagBlockAgendaItemUpdate;
46 46
47#include "koprefs.h" 47#include "koprefs.h"
48 48
49#include "koagendaitem.h" 49#include "koagendaitem.h"
50//#include "koagendaitem.moc" 50//#include "koagendaitem.moc"
51 51
52 52
53//-------------------------------------------------------------------------- 53//--------------------------------------------------------------------------
54 54
55QToolTipGroup *KOAgendaItem::mToolTipGroup = 0; 55QToolTipGroup *KOAgendaItem::mToolTipGroup = 0;
56 56
57//-------------------------------------------------------------------------- 57//--------------------------------------------------------------------------
58 58
59KOAgendaItem::KOAgendaItem(Incidence *incidence, QDate qd, QWidget *parent,bool allday, 59KOAgendaItem::KOAgendaItem(Incidence *incidence, QDate qd, QWidget *parent,bool allday,
60 const char *name,WFlags) : 60 const char *name,WFlags) :
61 QWidget(parent, name), mIncidence(incidence), mDate(qd) 61 QWidget(parent, name), mIncidence(incidence), mDate(qd)
62{ 62{
63#ifndef DESKTOP_VERSION 63#ifndef DESKTOP_VERSION
64 QPEApplication::setStylusOperation( this, QPEApplication::RightOnHold ); 64 QPEApplication::setStylusOperation( this, QPEApplication::RightOnHold );
65#endif 65#endif
66 int wflags = getWFlags() |WRepaintNoErase;// WResizeNoErase 66 int wflags = getWFlags() |WRepaintNoErase;// WResizeNoErase
67 setWFlags ( wflags); 67 setWFlags ( wflags);
68 mAllDay = allday; 68 mAllDay = allday;
69 init ( incidence, qd ); 69 init ( incidence, qd );
70 setMouseTracking(true); 70 setMouseTracking(true);
71 //setAcceptDrops(true); 71 //setAcceptDrops(true);
72 xPaintCoord = -1; 72 xPaintCoord = -1;
73 yPaintCoord = -1; 73 yPaintCoord = -1;
74} 74}
75 75
76void KOAgendaItem::init ( Incidence *incidence, QDate qd ) 76void KOAgendaItem::init ( Incidence *incidence, QDate qd )
77{ 77{
78 mIncidence = incidence; 78 mIncidence = incidence;
79 mDate = qd; 79 mDate = qd;
80 mFirstMultiItem = 0; 80 mFirstMultiItem = 0;
81 mNextMultiItem = 0; 81 mNextMultiItem = 0;
82 mLastMultiItem = 0; 82 mLastMultiItem = 0;
83 computeText(); 83 computeText();
84 84
85 if ( (incidence->type() == "Todo") && 85 if ( (incidence->type() == "Todo") &&
86 ( !((static_cast<Todo*>(incidence))->isCompleted()) && 86 ( !((static_cast<Todo*>(incidence))->isCompleted()) &&
87 ((static_cast<Todo*>(incidence))->dtDue().date() <= QDate::currentDate()) ) ) { 87 ((static_cast<Todo*>(incidence))->dtDue().date() <= QDate::currentDate()) ) ) {
88 if ( (static_cast<Todo*>(incidence))->dtDue() < QDateTime::currentDateTime().date()) 88 if ( (static_cast<Todo*>(incidence))->dtDue() < QDateTime::currentDateTime().date())
89 mBackgroundColor = KOPrefs::instance()->mTodoOverdueColor ; 89 mBackgroundColor = KOPrefs::instance()->mTodoOverdueColor ;
90 else 90 else
91 mBackgroundColor = KOPrefs::instance()->mTodoDueTodayColor; 91 mBackgroundColor = KOPrefs::instance()->mTodoDueTodayColor;
92 } 92 }
93 else { 93 else {
94 QStringList categories = mIncidence->categories(); 94 QStringList categories = mIncidence->categories();
95 QString cat = categories.first(); 95 QString cat = categories.first();
96 if (cat.isEmpty()) { 96 if (cat.isEmpty()) {
97 mBackgroundColor =KOPrefs::instance()->mEventColor; 97 if ( (incidence->type() == "Todo") &&((static_cast<Todo*>(incidence))->isCompleted()) )
98 mBackgroundColor =KOPrefs::instance()->mTodoDoneColor;
99 else
100 mBackgroundColor =KOPrefs::instance()->mEventColor;
98 } else { 101 } else {
99 mBackgroundColor = *KOPrefs::instance()->categoryColor(cat); 102 mBackgroundColor = *KOPrefs::instance()->categoryColor(cat);
103 if ( (incidence->type() == "Todo") &&((static_cast<Todo*>(incidence))->isCompleted()) ) {
104 if ( mBackgroundColor == KOPrefs::instance()->mEventColor )
105 mBackgroundColor =KOPrefs::instance()->mTodoDoneColor;
106 }
100 } 107 }
108
101 } 109 }
102 mColorGroup = QColorGroup( mBackgroundColor.light(), 110 mColorGroup = QColorGroup( mBackgroundColor.light(),
103 mBackgroundColor.dark(),mBackgroundColor.light(), 111 mBackgroundColor.dark(),mBackgroundColor.light(),
104 mBackgroundColor.dark(),mBackgroundColor, black, mBackgroundColor) ; 112 mBackgroundColor.dark(),mBackgroundColor, black, mBackgroundColor) ;
105 setBackgroundColor( mBackgroundColor ); 113 setBackgroundColor( mBackgroundColor );
106 114
107 setCellXY(0,0,1); 115 setCellXY(0,0,1);
108 setCellXWidth(0); 116 setCellXWidth(0);
109 setSubCell(0); 117 setSubCell(0);
110 setSubCells(1); 118 setSubCells(1);
111 setMultiItem(0,0,0); 119 setMultiItem(0,0,0);
112 startMove(); 120 startMove();
113 mSelected = true; 121 mSelected = true;
114 select(false); 122 select(false);
115 QFontMetrics fontinf(KOPrefs::instance()->mAgendaViewFont); 123 QFontMetrics fontinf(KOPrefs::instance()->mAgendaViewFont);
116 mFontPixelSize = fontinf.height();; 124 mFontPixelSize = fontinf.height();;
117 hide(); 125 hide();
118 xPaintCoord = -1; 126 xPaintCoord = -1;
119 yPaintCoord = -1; 127 yPaintCoord = -1;
120} 128}
121 129
122 130
123KOAgendaItem::~KOAgendaItem() 131KOAgendaItem::~KOAgendaItem()
124{ 132{
125 // qDebug("deleteKOAgendaItem::~KOAgendaItem( "); 133 // qDebug("deleteKOAgendaItem::~KOAgendaItem( ");
126 134
127} 135}
128 136
129void KOAgendaItem::recreateIncidence() 137void KOAgendaItem::recreateIncidence()
130{ 138{
131#if 0 139#if 0
132 Incidence* newInc = mIncidence->clone(); 140 Incidence* newInc = mIncidence->clone();
133 newInc->recreate(); 141 newInc->recreate();
134 if ( mIncidence->doesRecur() ) { 142 if ( mIncidence->doesRecur() ) {
135 mIncidence->addExDate( mDate ); 143 mIncidence->addExDate( mDate );
136 newInc->recurrence()->unsetRecurs(); 144 newInc->recurrence()->unsetRecurs();
137 int len = mIncidence->dtStart().secsTo( ((Event*)mIncidence)->dtEnd()); 145 int len = mIncidence->dtStart().secsTo( ((Event*)mIncidence)->dtEnd());
138 QTime tim = mIncidence->dtStart().time(); 146 QTime tim = mIncidence->dtStart().time();
139 newInc->setDtStart( QDateTime(mDate, tim) ); 147 newInc->setDtStart( QDateTime(mDate, tim) );
140 ((Event*)newInc)->setDtEnd( newInc->dtStart().addSecs( len ) ); 148 ((Event*)newInc)->setDtEnd( newInc->dtStart().addSecs( len ) );
141 } 149 }
142#endif 150#endif
143 mIncidence = mIncidence->recreateCloneException( mDate ); 151 mIncidence = mIncidence->recreateCloneException( mDate );
144} 152}
145bool KOAgendaItem::updateIcons(QPainter * p, bool horLayout) 153bool KOAgendaItem::updateIcons(QPainter * p, bool horLayout)
146{ 154{
147 int size = AGENDA_ICON_SIZE; 155 int size = AGENDA_ICON_SIZE;
148 156
149 int yOff = 0; 157 int yOff = 0;
150 int xOff = 0; 158 int xOff = 0;
151 int x = pos().x() +3; 159 int x = pos().x() +3;
152 int y; 160 int y;
153 if ( mAllDay ) 161 if ( mAllDay )
154 y = pos().y()+3; 162 y = pos().y()+3;
155 else 163 else
156 y = mCellYTop * ( height() / cellHeight() ) +3; 164 y = mCellYTop * ( height() / cellHeight() ) +3;
157 if (mIncidence->cancelled()) { 165 if (mIncidence->cancelled()) {
158 int xpos = xOff*( 1 +AGENDA_ICON_SIZE )+x; 166 int xpos = xOff*( 1 +AGENDA_ICON_SIZE )+x;
159 int ypos = yOff*( 1 +AGENDA_ICON_SIZE)+y; 167 int ypos = yOff*( 1 +AGENDA_ICON_SIZE)+y;
160 p->drawLine( xpos, ypos, xpos+AGENDA_ICON_SIZE-1, ypos+AGENDA_ICON_SIZE-1 ); 168 p->drawLine( xpos, ypos, xpos+AGENDA_ICON_SIZE-1, ypos+AGENDA_ICON_SIZE-1 );
161 p->drawLine( xpos, ypos+AGENDA_ICON_SIZE-1, xpos+AGENDA_ICON_SIZE-1, ypos ); 169 p->drawLine( xpos, ypos+AGENDA_ICON_SIZE-1, xpos+AGENDA_ICON_SIZE-1, ypos );
162 if ( horLayout ) 170 if ( horLayout )
163 ++xOff; 171 ++xOff;
164 else 172 else
165 ++yOff; 173 ++yOff;
166 } 174 }
167 if (mIncidence->isAlarmEnabled()) { 175 if (mIncidence->isAlarmEnabled()) {
168 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, red ); 176 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, red );
169 if ( horLayout ) 177 if ( horLayout )
170 ++xOff; 178 ++xOff;
171 else 179 else
172 ++yOff; 180 ++yOff;
173 } 181 }
174 if (mIncidence->recurrence()->doesRecur()) { 182 if (mIncidence->recurrence()->doesRecur()) {
175 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, blue ); 183 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, blue );
176 if ( horLayout ) 184 if ( horLayout )
177 ++xOff; 185 ++xOff;
178 else 186 else
179 ++yOff; 187 ++yOff;
180 } 188 }
181 if (mIncidence->description().length() > 0) { 189 if (mIncidence->description().length() > 0) {
182 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, darkGreen ); 190 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, darkGreen );
183 if ( horLayout ) 191 if ( horLayout )
184 ++xOff; 192 ++xOff;
185 else 193 else
186 ++yOff; 194 ++yOff;
187 } 195 }
188 if (mIncidence->isReadOnly()) { 196 if (mIncidence->isReadOnly()) {
189 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, white ); 197 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, white );
190 if ( horLayout ) 198 if ( horLayout )
191 ++xOff; 199 ++xOff;
192 else 200 else
193 ++yOff; 201 ++yOff;
194 } 202 }
195 203
196 if (mIncidence->attendeeCount()>0) { 204 if (mIncidence->attendeeCount()>0) {
197 205
198 if (mIncidence->organizer() == KOPrefs::instance()->email()) { 206 if (mIncidence->organizer() == KOPrefs::instance()->email()) {
199 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, black ); 207 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, black );
200 if ( horLayout ) 208 if ( horLayout )
201 ++xOff; 209 ++xOff;
202 else 210 else
203 ++yOff; 211 ++yOff;
204 } else { 212 } else {
205 Attendee *me = mIncidence->attendeeByMails(KOPrefs::instance()->mAdditionalMails,KOPrefs::instance()->email()); 213 Attendee *me = mIncidence->attendeeByMails(KOPrefs::instance()->mAdditionalMails,KOPrefs::instance()->email());
206 if (me!=0) { 214 if (me!=0) {
207 215
208 216
209 } else { 217 } else {
210 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, yellow ); 218 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, yellow );
211 if ( horLayout ) 219 if ( horLayout )
212 ++xOff; 220 ++xOff;
213 else 221 else
214 ++yOff; 222 ++yOff;
215 223
216 } 224 }
217 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, darkYellow ); 225 p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, darkYellow );
218 if ( horLayout ) 226 if ( horLayout )
219 ++xOff; 227 ++xOff;
220 else 228 else
221 ++yOff; 229 ++yOff;
222 230
223 } 231 }
224 232
225 } 233 }
226 return ( yOff || xOff ); 234 return ( yOff || xOff );
227} 235}
228 236
229 237
230void KOAgendaItem::select(bool selected) 238void KOAgendaItem::select(bool selected)
231{ 239{
232 //qDebug("select %d %d",firstMultiItem(), nextMultiItem() ); 240 //qDebug("select %d %d",firstMultiItem(), nextMultiItem() );
233 if (mSelected == selected) return; 241 if (mSelected == selected) return;
234 mSelected = selected; 242 mSelected = selected;
235 if ( ! isVisible() ) 243 if ( ! isVisible() )
236 return; 244 return;
237 if ( firstMultiItem() ) 245 if ( firstMultiItem() )
238 firstMultiItem()->select( selected ); 246 firstMultiItem()->select( selected );
239 if ( !firstMultiItem() && nextMultiItem() ) { 247 if ( !firstMultiItem() && nextMultiItem() ) {
240 KOAgendaItem * placeItem = nextMultiItem(); 248 KOAgendaItem * placeItem = nextMultiItem();
241 while ( placeItem ) { 249 while ( placeItem ) {
242 placeItem->select( selected ); 250 placeItem->select( selected );
243 placeItem = placeItem->nextMultiItem(); 251 placeItem = placeItem->nextMultiItem();
244 } 252 }
245 } 253 }
246 globalFlagBlockAgendaItemUpdate = 0; 254 globalFlagBlockAgendaItemUpdate = 0;
247 paintMe( selected ); 255 paintMe( selected );
248 globalFlagBlockAgendaItemUpdate = 1; 256 globalFlagBlockAgendaItemUpdate = 1;
249 repaint( false ); 257 repaint( false );
250} 258}
251 259
252 260
253/* 261/*
254 The eventFilter has to filter the mouse events of the agenda item childs. The 262 The eventFilter has to filter the mouse events of the agenda item childs. The
255 events are fed into the event handling method of KOAgendaItem. This allows the 263 events are fed into the event handling method of KOAgendaItem. This allows the
256 KOAgenda to handle the KOAgendaItems by using an eventFilter. 264 KOAgenda to handle the KOAgendaItems by using an eventFilter.
257*/ 265*/
258bool KOAgendaItem::eventFilter ( QObject *object, QEvent *e ) 266bool KOAgendaItem::eventFilter ( QObject *object, QEvent *e )
259{ 267{
260 if (e->type() == QEvent::MouseButtonPress || 268 if (e->type() == QEvent::MouseButtonPress ||
261 e->type() == QEvent::MouseButtonDblClick || 269 e->type() == QEvent::MouseButtonDblClick ||
262 e->type() == QEvent::MouseButtonRelease || 270 e->type() == QEvent::MouseButtonRelease ||
263 e->type() == QEvent::MouseMove) { 271 e->type() == QEvent::MouseMove) {
264 QMouseEvent *me = (QMouseEvent *)e; 272 QMouseEvent *me = (QMouseEvent *)e;
265 QPoint itemPos = this->mapFromGlobal(((QWidget *)object)-> 273 QPoint itemPos = this->mapFromGlobal(((QWidget *)object)->
266 mapToGlobal(me->pos())); 274 mapToGlobal(me->pos()));
267 QMouseEvent returnEvent (e->type(),itemPos,me->button(),me->state()); 275 QMouseEvent returnEvent (e->type(),itemPos,me->button(),me->state());
268 return event(&returnEvent); 276 return event(&returnEvent);
269 } else { 277 } else {
270 return false; 278 return false;
271 } 279 }
272} 280}
273void KOAgendaItem::repaintMe( ) 281void KOAgendaItem::repaintMe( )
274{ 282{
275 paintMe ( mSelected ); 283 paintMe ( mSelected );
276} 284}
277void KOAgendaItem::paintMe( bool selected, QPainter* paint ) 285void KOAgendaItem::paintMe( bool selected, QPainter* paint )
278{ 286{
279 if ( globalFlagBlockAgendaItemUpdate && ! selected) 287 if ( globalFlagBlockAgendaItemUpdate && ! selected)
280 return; 288 return;
281 QPainter pa; 289 QPainter pa;
282 290
283 if ( mSelected ) { 291 if ( mSelected ) {
284 pa.begin( paintPixSel() ); 292 pa.begin( paintPixSel() );
285 } else { 293 } else {
286 if ( mAllDay ) 294 if ( mAllDay )
287 pa.begin( paintPixAllday() ); 295 pa.begin( paintPixAllday() );
288 else 296 else
289 pa.begin( paintPix() ); 297 pa.begin( paintPix() );
290 } 298 }
291 int x, yy, w, h; 299 int x, yy, w, h;
292 float nfh; 300 float nfh;
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp
index 32cc291..0548f14 100644
--- a/korganizer/koprefs.cpp
+++ b/korganizer/koprefs.cpp
@@ -8,384 +8,385 @@
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23 23
24#include <time.h> 24#include <time.h>
25#ifndef _WIN32_ 25#ifndef _WIN32_
26#include <unistd.h> 26#include <unistd.h>
27#endif 27#endif
28#include <qdir.h> 28#include <qdir.h>
29#include <qtextstream.h> 29#include <qtextstream.h>
30#include <qtextcodec.h> 30#include <qtextcodec.h>
31#include <qstring.h> 31#include <qstring.h>
32#include <qregexp.h> 32#include <qregexp.h>
33#include <qfont.h> 33#include <qfont.h>
34#include <qcolor.h> 34#include <qcolor.h>
35#include <qstringlist.h> 35#include <qstringlist.h>
36#include <stdlib.h> 36#include <stdlib.h>
37 37
38#include <kglobal.h> 38#include <kglobal.h>
39#include <kconfig.h> 39#include <kconfig.h>
40#include <klocale.h> 40#include <klocale.h>
41#include <kdebug.h> 41#include <kdebug.h>
42#include <kemailsettings.h> 42#include <kemailsettings.h>
43#include <kstaticdeleter.h> 43#include <kstaticdeleter.h>
44#include <libkdepim/kpimglobalprefs.h> 44#include <libkdepim/kpimglobalprefs.h>
45 45
46#include "koprefs.h" 46#include "koprefs.h"
47#include "mainwindow.h" 47#include "mainwindow.h"
48 48
49KOPrefs *KOPrefs::mInstance = 0; 49KOPrefs *KOPrefs::mInstance = 0;
50static KStaticDeleter<KOPrefs> insd; 50static KStaticDeleter<KOPrefs> insd;
51 51
52KOPrefs::KOPrefs() : 52KOPrefs::KOPrefs() :
53 KPimPrefs("korganizerrc") 53 KPimPrefs("korganizerrc")
54{ 54{
55 mCategoryColors.setAutoDelete(true); 55 mCategoryColors.setAutoDelete(true);
56 fillMailDefaults(); 56 fillMailDefaults();
57 mDefaultCategoryColor = QColor(175,210,255);//196,196,196); 57 mDefaultCategoryColor = QColor(175,210,255);//196,196,196);
58 QColor defaultHolidayColor = QColor(255,0,0); 58 QColor defaultHolidayColor = QColor(255,0,0);
59 QColor defaultHighlightColor = QColor(129,112,255);//64,64,255); 59 QColor defaultHighlightColor = QColor(129,112,255);//64,64,255);
60 QColor defaultAgendaBgColor = QColor(239,241,169);//128,128,128); 60 QColor defaultAgendaBgColor = QColor(239,241,169);//128,128,128);
61 QColor defaultWorkingHoursColor = QColor(170,223,150);//160,160,160); 61 QColor defaultWorkingHoursColor = QColor(170,223,150);//160,160,160);
62 QColor defaultTodoDueTodayColor = QColor(255,220,100); 62 QColor defaultTodoDueTodayColor = QColor(255,220,100);
63 QColor defaultTodoOverdueColor = QColor(255,153,125); 63 QColor defaultTodoOverdueColor = QColor(255,153,125);
64 64
65 mTimeBarFont = QFont("helvetica",10);//,QFont::Bold); 65 mTimeBarFont = QFont("helvetica",10);//,QFont::Bold);
66 mDefaultViewFont = QFont("helvetica",10); 66 mDefaultViewFont = QFont("helvetica",10);
67 mDefaultMonthViewFont = QFont("helvetica",8); 67 mDefaultMonthViewFont = QFont("helvetica",8);
68 mMarcusBainsFont= QFont("helvetica",10); 68 mMarcusBainsFont= QFont("helvetica",10);
69 mDateNavigatorFont= QFont("helvetica",10, QFont::Bold); 69 mDateNavigatorFont= QFont("helvetica",10, QFont::Bold);
70 mEditBoxFont = QFont("helvetica",12); 70 mEditBoxFont = QFont("helvetica",12);
71 mJornalViewFont = QFont("helvetica",12); 71 mJornalViewFont = QFont("helvetica",12);
72 72
73 KPrefs::setCurrentGroup("General"); 73 KPrefs::setCurrentGroup("General");
74 74
75 75
76 addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false); 76 addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false);
77 77
78 addItemBool("ShowIconNewTodo",&mShowIconNewTodo,true); 78 addItemBool("ShowIconNewTodo",&mShowIconNewTodo,true);
79 addItemBool("ShowIconNewEvent",&mShowIconNewEvent,true); 79 addItemBool("ShowIconNewEvent",&mShowIconNewEvent,true);
80 addItemBool("ShowIconSearch",&mShowIconSearch,true); 80 addItemBool("ShowIconSearch",&mShowIconSearch,true);
81 addItemBool("ShowIconList",&mShowIconList,true); 81 addItemBool("ShowIconList",&mShowIconList,true);
82 addItemBool("ShowIconDay1",&mShowIconDay1,true); 82 addItemBool("ShowIconDay1",&mShowIconDay1,true);
83 addItemBool("ShowIconDay5",&mShowIconDay5,true); 83 addItemBool("ShowIconDay5",&mShowIconDay5,true);
84 addItemBool("ShowIconDay7",&mShowIconDay7,true); 84 addItemBool("ShowIconDay7",&mShowIconDay7,true);
85 addItemBool("ShowIconMonth",&mShowIconMonth,true); 85 addItemBool("ShowIconMonth",&mShowIconMonth,true);
86 addItemBool("ShowIconTodoview",&mShowIconTodoview,true); 86 addItemBool("ShowIconTodoview",&mShowIconTodoview,true);
87 addItemBool("ShowIconBackFast",&mShowIconBackFast,true); 87 addItemBool("ShowIconBackFast",&mShowIconBackFast,true);
88 addItemBool("ShowIconBack",&mShowIconBack,true); 88 addItemBool("ShowIconBack",&mShowIconBack,true);
89 addItemBool("ShowIconToday",&mShowIconToday,true); 89 addItemBool("ShowIconToday",&mShowIconToday,true);
90 addItemBool("ShowIconForward",&mShowIconForward,true); 90 addItemBool("ShowIconForward",&mShowIconForward,true);
91 addItemBool("ShowIconForwardFast",&mShowIconForwardFast,true); 91 addItemBool("ShowIconForwardFast",&mShowIconForwardFast,true);
92 addItemBool("ShowIconWhatsThis",&mShowIconWhatsThis,true); 92 addItemBool("ShowIconWhatsThis",&mShowIconWhatsThis,true);
93 addItemBool("ShowIconNextDays",&mShowIconNextDays,true); 93 addItemBool("ShowIconNextDays",&mShowIconNextDays,true);
94 addItemBool("ShowIconNext",&mShowIconNext,true); 94 addItemBool("ShowIconNext",&mShowIconNext,true);
95 addItemBool("ShowIconJournal",&mShowIconJournal,true); 95 addItemBool("ShowIconJournal",&mShowIconJournal,true);
96 addItemBool("ShowIconStretch",&mShowIconStretch,true); 96 addItemBool("ShowIconStretch",&mShowIconStretch,true);
97 addItemInt("LastLoadedLanguage",&mOldLanguage,0); 97 addItemInt("LastLoadedLanguage",&mOldLanguage,0);
98 98
99 addItemBool("AskForQuit",&mAskForQuit,false); 99 addItemBool("AskForQuit",&mAskForQuit,false);
100 100
101#ifndef DESKTOP_VERSION 101#ifndef DESKTOP_VERSION
102 addItemBool("ShowFullMenu",&mShowFullMenu,false); 102 addItemBool("ShowFullMenu",&mShowFullMenu,false);
103#else 103#else
104 addItemBool("ShowFullMenu",&mShowFullMenu,true); 104 addItemBool("ShowFullMenu",&mShowFullMenu,true);
105#endif 105#endif
106 addItemBool("ToolBarHor",&mToolBarHor, true ); 106 addItemBool("ToolBarHor",&mToolBarHor, true );
107 addItemBool("ToolBarUp",&mToolBarUp, false ); 107 addItemBool("ToolBarUp",&mToolBarUp, false );
108 addItemBool("ToolBarMiniIcons",&mToolBarMiniIcons, false ); 108 addItemBool("ToolBarMiniIcons",&mToolBarMiniIcons, false );
109 addItemInt("Whats Next Days",&mWhatsNextDays,3); 109 addItemInt("Whats Next Days",&mWhatsNextDays,3);
110 addItemInt("Whats Next Prios",&mWhatsNextPrios,1); 110 addItemInt("Whats Next Prios",&mWhatsNextPrios,1);
111 111
112 addItemBool("ShowTodoInAgenda",&mShowTodoInAgenda,true); 112 addItemBool("ShowTodoInAgenda",&mShowTodoInAgenda,true);
113 addItemBool("ShowTimeInAgenda",&mShowTimeInAgenda,true); 113 addItemBool("ShowTimeInAgenda",&mShowTimeInAgenda,true);
114 addItemBool("HideNonStartedTodos",&mHideNonStartedTodos,false); 114 addItemBool("HideNonStartedTodos",&mHideNonStartedTodos,false);
115 addItemBool("ShowCompletedTodo",&mShowCompletedTodo,true); 115 addItemBool("ShowCompletedTodo",&mShowCompletedTodo,true);
116 addItemInt("AllDay Size",&mAllDaySize,28); 116 addItemInt("AllDay Size",&mAllDaySize,28);
117 QString defAlarm = KGlobal::iconLoader()->iconPath()+"koalarm.wav"; 117 QString defAlarm = KGlobal::iconLoader()->iconPath()+"koalarm.wav";
118 addItemString("DefaultAlarmFile",&mDefaultAlarmFile,defAlarm ); 118 addItemString("DefaultAlarmFile",&mDefaultAlarmFile,defAlarm );
119 119
120 addItemStringList("LocationDefaults",&mLocationDefaults ); 120 addItemStringList("LocationDefaults",&mLocationDefaults );
121 addItemStringList("EventSummary User",&mEventSummaryUser); 121 addItemStringList("EventSummary User",&mEventSummaryUser);
122 addItemStringList("TodoSummary User",&mTodoSummaryUser); 122 addItemStringList("TodoSummary User",&mTodoSummaryUser);
123 123
124 addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false); 124 addItemBool("Enable Group Scheduling",&mEnableGroupScheduling,false);
125 addItemBool("Enable Project View",&mEnableProjectView,false); 125 addItemBool("Enable Project View",&mEnableProjectView,false);
126 addItemBool("Auto Save",&mAutoSave,false); 126 addItemBool("Auto Save",&mAutoSave,false);
127 addItemInt("Auto Save Interval",&mAutoSaveInterval,3); 127 addItemInt("Auto Save Interval",&mAutoSaveInterval,3);
128 addItemBool("Confirm Deletes",&mConfirm,true); 128 addItemBool("Confirm Deletes",&mConfirm,true);
129 addItemString("Archive File",&mArchiveFile); 129 addItemString("Archive File",&mArchiveFile);
130 addItemString("Html Export File",&mHtmlExportFile, 130 addItemString("Html Export File",&mHtmlExportFile,
131 QDir::homeDirPath() + "/" + i18n("Default export file", "calendar.html")); 131 QDir::homeDirPath() + "/" + i18n("Default export file", "calendar.html"));
132 addItemBool("Html With Save",&mHtmlWithSave,false); 132 addItemBool("Html With Save",&mHtmlWithSave,false);
133 133
134 KPrefs::setCurrentGroup("Personal Settings"); 134 KPrefs::setCurrentGroup("Personal Settings");
135 135
136 addItemInt("Mail Client",&mMailClient,MailClientKMail); 136 addItemInt("Mail Client",&mMailClient,MailClientKMail);
137 addItemBool("Use Control Center Email",&mEmailControlCenter,false); 137 addItemBool("Use Control Center Email",&mEmailControlCenter,false);
138 addItemBool("Bcc",&mBcc,false); 138 addItemBool("Bcc",&mBcc,false);
139 139
140 KPrefs::setCurrentGroup("Time & Date"); 140 KPrefs::setCurrentGroup("Time & Date");
141 141
142 142
143 addItemInt("Default Start Time",&mStartTime,10); 143 addItemInt("Default Start Time",&mStartTime,10);
144 addItemInt("Default Duration",&mDefaultDuration,2); 144 addItemInt("Default Duration",&mDefaultDuration,2);
145 addItemInt("Default Alarm Time",&mAlarmTime,3); 145 addItemInt("Default Alarm Time",&mAlarmTime,3);
146 KPrefs::setCurrentGroup("AlarmSettings"); 146 KPrefs::setCurrentGroup("AlarmSettings");
147 addItemInt("AlarmPlayBeeps",&mAlarmPlayBeeps,20); 147 addItemInt("AlarmPlayBeeps",&mAlarmPlayBeeps,20);
148 addItemInt("AlarmSuspendTime",&mAlarmSuspendTime,7); 148 addItemInt("AlarmSuspendTime",&mAlarmSuspendTime,7);
149 addItemInt("AlarmSuspendCount",&mAlarmSuspendCount,5); 149 addItemInt("AlarmSuspendCount",&mAlarmSuspendCount,5);
150 addItemInt("AlarmBeepInterval",&mAlarmBeepInterval,3); 150 addItemInt("AlarmBeepInterval",&mAlarmBeepInterval,3);
151 151
152 152
153 KPrefs::setCurrentGroup("Calendar"); 153 KPrefs::setCurrentGroup("Calendar");
154 154
155 addItemInt("Default Calendar Format",&mDefaultFormat,FormatICalendar); 155 addItemInt("Default Calendar Format",&mDefaultFormat,FormatICalendar);
156 156
157 KPrefs::setCurrentGroup("Fonts"); 157 KPrefs::setCurrentGroup("Fonts");
158 // qDebug(" KPrefs::setCurrentGroup(Fonts); "); 158 // qDebug(" KPrefs::setCurrentGroup(Fonts); ");
159 addItemFont("TimeBar Font",&mTimeBarFont); 159 addItemFont("TimeBar Font",&mTimeBarFont);
160 addItemFont("MonthView Font",&mMonthViewFont); 160 addItemFont("MonthView Font",&mMonthViewFont);
161 addItemFont("AgendaView Font",&mAgendaViewFont); 161 addItemFont("AgendaView Font",&mAgendaViewFont);
162 addItemFont("MarcusBains Font",&mMarcusBainsFont); 162 addItemFont("MarcusBains Font",&mMarcusBainsFont);
163 addItemFont("TimeLabels Font",&mTimeLabelsFont); 163 addItemFont("TimeLabels Font",&mTimeLabelsFont);
164 addItemFont("TodoView Font",&mTodoViewFont); 164 addItemFont("TodoView Font",&mTodoViewFont);
165 addItemFont("ListView Font",&mListViewFont); 165 addItemFont("ListView Font",&mListViewFont);
166 addItemFont("DateNavigator Font",&mDateNavigatorFont); 166 addItemFont("DateNavigator Font",&mDateNavigatorFont);
167 addItemFont("EditBox Font",&mEditBoxFont); 167 addItemFont("EditBox Font",&mEditBoxFont);
168 addItemFont("JournalView Font",&mJornalViewFont); 168 addItemFont("JournalView Font",&mJornalViewFont);
169 addItemFont("WhatsNextView Font",&mWhatsNextFont); 169 addItemFont("WhatsNextView Font",&mWhatsNextFont);
170 addItemFont("EventView Font",&mEventViewFont); 170 addItemFont("EventView Font",&mEventViewFont);
171 171
172 KPrefs::setCurrentGroup("RemoteSyncing"); 172 KPrefs::setCurrentGroup("RemoteSyncing");
173 addItemString("ActiveSyncPort",&mActiveSyncPort,"9197" ); 173 addItemString("ActiveSyncPort",&mActiveSyncPort,"9197" );
174 addItemString("ActiveSyncIP",&mActiveSyncIP,"192.168.0.40" ); 174 addItemString("ActiveSyncIP",&mActiveSyncIP,"192.168.0.40" );
175 addItemBool("ShowSyncEvents",&mShowSyncEvents,false); 175 addItemBool("ShowSyncEvents",&mShowSyncEvents,false);
176 addItemInt("LastSyncTime",&mLastSyncTime,0); 176 addItemInt("LastSyncTime",&mLastSyncTime,0);
177 177
178#ifdef _WIN32_ 178#ifdef _WIN32_
179 QString hdp= locateLocal("data","korganizer")+"\\\\"; 179 QString hdp= locateLocal("data","korganizer")+"\\\\";
180#else 180#else
181 QString hdp= locateLocal("data","korganizer")+"/"; 181 QString hdp= locateLocal("data","korganizer")+"/";
182#endif 182#endif
183 183
184 KPrefs::setCurrentGroup("LoadSaveFileNames"); 184 KPrefs::setCurrentGroup("LoadSaveFileNames");
185 185
186 addItemString("LastImportFile", &mLastImportFile ,hdp +"import.ics" ); 186 addItemString("LastImportFile", &mLastImportFile ,hdp +"import.ics" );
187 addItemString("LastVcalFile", &mLastVcalFile ,hdp +"export.vcs" ); 187 addItemString("LastVcalFile", &mLastVcalFile ,hdp +"export.vcs" );
188 addItemString("LastSaveFile", &mLastSaveFile ,hdp +"mybackup.ics" ); 188 addItemString("LastSaveFile", &mLastSaveFile ,hdp +"mybackup.ics" );
189 addItemString("LastLoadFile", &mLastLoadFile ,hdp +"mybackup.ics" ); 189 addItemString("LastLoadFile", &mLastLoadFile ,hdp +"mybackup.ics" );
190 190
191 191
192 KPrefs::setCurrentGroup("Locale"); 192 KPrefs::setCurrentGroup("Locale");
193 addItemBool("ShortDateInViewer",&mShortDateInViewer,false); 193 addItemBool("ShortDateInViewer",&mShortDateInViewer,false);
194 194
195 195
196 KPrefs::setCurrentGroup("Colors"); 196 KPrefs::setCurrentGroup("Colors");
197 addItemColor("Holiday Color",&mHolidayColor,defaultHolidayColor); 197 addItemColor("Holiday Color",&mHolidayColor,defaultHolidayColor);
198 addItemColor("Highlight Color",&mHighlightColor,defaultHighlightColor); 198 addItemColor("Highlight Color",&mHighlightColor,defaultHighlightColor);
199 addItemColor("Event Color",&mEventColor,mDefaultCategoryColor); 199 addItemColor("Event Color",&mEventColor,mDefaultCategoryColor);
200 addItemColor("Todo done Color",&mTodoDoneColor,QColor(111,255,115) );
200 addItemColor("Agenda Background Color",&mAgendaBgColor,defaultAgendaBgColor); 201 addItemColor("Agenda Background Color",&mAgendaBgColor,defaultAgendaBgColor);
201 addItemColor("WorkingHours Color",&mWorkingHoursColor,defaultWorkingHoursColor); 202 addItemColor("WorkingHours Color",&mWorkingHoursColor,defaultWorkingHoursColor);
202 addItemColor("Todo due today Color",&mTodoDueTodayColor,defaultTodoDueTodayColor); 203 addItemColor("Todo due today Color",&mTodoDueTodayColor,defaultTodoDueTodayColor);
203 addItemColor("Todo overdue Color",&mTodoOverdueColor,defaultTodoOverdueColor); 204 addItemColor("Todo overdue Color",&mTodoOverdueColor,defaultTodoOverdueColor);
204 addItemColor("MonthViewEvenColor",&mMonthViewEvenColor,QColor( 160,160,255 )); 205 addItemColor("MonthViewEvenColor",&mMonthViewEvenColor,QColor( 160,160,255 ));
205 addItemColor("MonthViewOddColor",&mMonthViewOddColor,QColor( 160,255,160 )); 206 addItemColor("MonthViewOddColor",&mMonthViewOddColor,QColor( 160,255,160 ));
206 addItemColor("MonthViewHolidayColor",&mMonthViewHolidayColor,QColor( 255,160,160 )); 207 addItemColor("MonthViewHolidayColor",&mMonthViewHolidayColor,QColor( 255,160,160 ));
207 addItemBool("MonthViewUsesDayColors",&mMonthViewUsesDayColors,true); 208 addItemBool("MonthViewUsesDayColors",&mMonthViewUsesDayColors,true);
208 addItemBool("MonthViewSatSunTog",&mMonthViewSatSunTog,true); 209 addItemBool("MonthViewSatSunTog",&mMonthViewSatSunTog,true);
209 addItemBool("HightlightDateTimeEdit",&mHightlightDateTimeEdit,false); 210 addItemBool("HightlightDateTimeEdit",&mHightlightDateTimeEdit,false);
210 addItemColor("AppColor1",&mAppColor1,QColor( 130,170,255 )); 211 addItemColor("AppColor1",&mAppColor1,QColor( 130,170,255 ));
211 addItemColor("AppColor2",&mAppColor2,QColor( 174,216,255 )); 212 addItemColor("AppColor2",&mAppColor2,QColor( 174,216,255 ));
212 addItemBool("UseAppColors",&mUseAppColors,false); 213 addItemBool("UseAppColors",&mUseAppColors,false);
213 214
214 215
215 216
216 KPrefs::setCurrentGroup("Views"); 217 KPrefs::setCurrentGroup("Views");
217 addItemBool("Show Date Navigator",&mShowDateNavigator,true); 218 addItemBool("Show Date Navigator",&mShowDateNavigator,true);
218 addItemInt("Hour Size",&mHourSize,8); 219 addItemInt("Hour Size",&mHourSize,8);
219 addItemBool("Show Daily Recurrences",&mDailyRecur,true); 220 addItemBool("Show Daily Recurrences",&mDailyRecur,true);
220 addItemBool("Show Weekly Recurrences",&mWeeklyRecur,true); 221 addItemBool("Show Weekly Recurrences",&mWeeklyRecur,true);
221 addItemBool("Show Month Daily Recurrences",&mMonthDailyRecur,true); 222 addItemBool("Show Month Daily Recurrences",&mMonthDailyRecur,true);
222 addItemBool("Show Month Weekly Recurrences",&mMonthWeeklyRecur,true); 223 addItemBool("Show Month Weekly Recurrences",&mMonthWeeklyRecur,true);
223 addItemBool("ShowShortMonthName",&mMonthShowShort,false); 224 addItemBool("ShowShortMonthName",&mMonthShowShort,false);
224 addItemBool("ShowIconsInMonthCell",&mMonthShowIcons,true); 225 addItemBool("ShowIconsInMonthCell",&mMonthShowIcons,true);
225#ifdef DESKTOP_VERION 226#ifdef DESKTOP_VERION
226 addItemBool("Enable ToolTips",&mEnableToolTips,true); 227 addItemBool("Enable ToolTips",&mEnableToolTips,true);
227#else 228#else
228 addItemBool("Enable ToolTips",&mEnableToolTips,false); 229 addItemBool("Enable ToolTips",&mEnableToolTips,false);
229#endif 230#endif
230 addItemBool("Enable MonthView ScrollBars",&mEnableMonthScroll,false); 231 addItemBool("Enable MonthView ScrollBars",&mEnableMonthScroll,false);
231 addItemBool("Marcus Bains shows seconds",&mMarcusBainsShowSeconds,false); 232 addItemBool("Marcus Bains shows seconds",&mMarcusBainsShowSeconds,false);
232 addItemBool("Show Marcus Bains",&mMarcusBainsEnabled,true); 233 addItemBool("Show Marcus Bains",&mMarcusBainsEnabled,true);
233 addItemBool("EditOnDoubleClick",&mEditOnDoubleClick,true); 234 addItemBool("EditOnDoubleClick",&mEditOnDoubleClick,true);
234 addItemBool("ViewChangeHoldFullscreen",&mViewChangeHoldFullscreen,true); 235 addItemBool("ViewChangeHoldFullscreen",&mViewChangeHoldFullscreen,true);
235 addItemBool("ViewChangeHoldNonFullscreen",&mViewChangeHoldNonFullscreen,false); 236 addItemBool("ViewChangeHoldNonFullscreen",&mViewChangeHoldNonFullscreen,false);
236 addItemBool("CenterOnCurrentTime",&mCenterOnCurrentTime,false); 237 addItemBool("CenterOnCurrentTime",&mCenterOnCurrentTime,false);
237 addItemBool("SetTimeToDayStartAt",&mSetTimeToDayStartAt,true); 238 addItemBool("SetTimeToDayStartAt",&mSetTimeToDayStartAt,true);
238 addItemBool("HighlightCurrentDay",&mHighlightCurrentDay,true); 239 addItemBool("HighlightCurrentDay",&mHighlightCurrentDay,true);
239 addItemBool("WNViewShowsParents",&mWNViewShowsParents,true);; 240 addItemBool("WNViewShowsParents",&mWNViewShowsParents,true);;
240 addItemBool("WNViewShowsPast",&mWNViewShowsPast,true); 241 addItemBool("WNViewShowsPast",&mWNViewShowsPast,true);
241 addItemBool("WNViewShowLocation",&mWNViewShowLocation,false); 242 addItemBool("WNViewShowLocation",&mWNViewShowLocation,false);
242 addItemBool("UseHighlightLightColor",&mUseHighlightLightColor,false); 243 addItemBool("UseHighlightLightColor",&mUseHighlightLightColor,false);
243 addItemBool("ListViewMonthTimespan",&mListViewMonthTimespan,true); 244 addItemBool("ListViewMonthTimespan",&mListViewMonthTimespan,true);
244 addItemBool("TodoViewUsesCatColors",&mTodoViewUsesCatColors,false); 245 addItemBool("TodoViewUsesCatColors",&mTodoViewUsesCatColors,false);
245 addItemBool("TodoViewShowsPercentage",&mTodoViewShowsPercentage,false); 246 addItemBool("TodoViewShowsPercentage",&mTodoViewShowsPercentage,false);
246 addItemBool("TodoViewUsesSmallFont",&mTodoViewUsesSmallFont,false); 247 addItemBool("TodoViewUsesSmallFont",&mTodoViewUsesSmallFont,false);
247 addItemBool("TodoViewUsesForegroundColor",&mTodoViewUsesForegroundColor,false); 248 addItemBool("TodoViewUsesForegroundColor",&mTodoViewUsesForegroundColor,false);
248 addItemBool("MonthViewUsesForegroundColor",&mMonthViewUsesForegroundColor,false); 249 addItemBool("MonthViewUsesForegroundColor",&mMonthViewUsesForegroundColor,false);
249#ifdef DESKTOP_VERSION 250#ifdef DESKTOP_VERSION
250 addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,true); 251 addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,true);
251#else 252#else
252 addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,false); 253 addItemBool("UseInternalAlarmNotification",&mUseInternalAlarmNotification,false);
253#endif 254#endif
254 addItemInt("Day Begins",&mDayBegins,7); 255 addItemInt("Day Begins",&mDayBegins,7);
255 addItemInt("Working Hours Start",&mWorkingHoursStart,8); 256 addItemInt("Working Hours Start",&mWorkingHoursStart,8);
256 addItemInt("Working Hours End",&mWorkingHoursEnd,17); 257 addItemInt("Working Hours End",&mWorkingHoursEnd,17);
257 addItemBool("Exclude Holidays",&mExcludeHolidays,true); 258 addItemBool("Exclude Holidays",&mExcludeHolidays,true);
258 addItemBool("Exclude Saturdays",&mExcludeSaturdays,true); 259 addItemBool("Exclude Saturdays",&mExcludeSaturdays,true);
259 260
260 addItemBool("Month View Uses Category Color",&mMonthViewUsesCategoryColor,false); 261 addItemBool("Month View Uses Category Color",&mMonthViewUsesCategoryColor,false);
261 addItemBool("Full View Month",&mFullViewMonth,true); 262 addItemBool("Full View Month",&mFullViewMonth,true);
262 addItemBool("Full View Todo",&mFullViewTodo,true); 263 addItemBool("Full View Todo",&mFullViewTodo,true);
263 addItemBool("Quick Todo",&mEnableQuickTodo,false); 264 addItemBool("Quick Todo",&mEnableQuickTodo,false);
264 265
265 addItemInt("Next X Days",&mNextXDays,3); 266 addItemInt("Next X Days",&mNextXDays,3);
266 267
267 KPrefs::setCurrentGroup("Printer"); 268 KPrefs::setCurrentGroup("Printer");
268 269
269 KPrefs::setCurrentGroup("Layout"); 270 KPrefs::setCurrentGroup("Layout");
270 271
271 addItemBool("CompactDialogs",&mCompactDialogs,false); 272 addItemBool("CompactDialogs",&mCompactDialogs,false);
272 addItemBool("VerticalScreen",&mVerticalScreen,true); 273 addItemBool("VerticalScreen",&mVerticalScreen,true);
273 274
274 KPrefs::setCurrentGroup("KOrganizer Plugins"); 275 KPrefs::setCurrentGroup("KOrganizer Plugins");
275 276
276 addItemStringList("SelectedPlugins",&mSelectedPlugins,"holidays"); 277 addItemStringList("SelectedPlugins",&mSelectedPlugins,"holidays");
277 278
278 KPrefs::setCurrentGroup("Group Scheduling"); 279 KPrefs::setCurrentGroup("Group Scheduling");
279 280
280 addItemInt("IMIPScheduler",&mIMIPScheduler,IMIPKMail); 281 addItemInt("IMIPScheduler",&mIMIPScheduler,IMIPKMail);
281 addItemInt("IMIPSend",&mIMIPSend,IMIPdirectsend); 282 addItemInt("IMIPSend",&mIMIPSend,IMIPdirectsend);
282 addItemStringList("AdditionalMails",&mAdditionalMails,""); 283 addItemStringList("AdditionalMails",&mAdditionalMails,"");
283 addItemInt("IMIP auto refresh",&mIMIPAutoRefresh,neverAuto); 284 addItemInt("IMIP auto refresh",&mIMIPAutoRefresh,neverAuto);
284 addItemInt("IMIP auto insert request",&mIMIPAutoInsertRequest,neverAuto); 285 addItemInt("IMIP auto insert request",&mIMIPAutoInsertRequest,neverAuto);
285 addItemInt("IMIP auto insert reply",&mIMIPAutoInsertReply,neverAuto); 286 addItemInt("IMIP auto insert reply",&mIMIPAutoInsertReply,neverAuto);
286 addItemInt("IMIP auto FreeBusy",&mIMIPAutoFreeBusy,neverAuto); 287 addItemInt("IMIP auto FreeBusy",&mIMIPAutoFreeBusy,neverAuto);
287 addItemInt("IMIP auto save FreeBusy",&mIMIPAutoFreeBusyReply,neverAuto); 288 addItemInt("IMIP auto save FreeBusy",&mIMIPAutoFreeBusyReply,neverAuto);
288 289
289 KPrefs::setCurrentGroup( "Editors" ); 290 KPrefs::setCurrentGroup( "Editors" );
290 291
291 addItemStringList( "EventTemplates", &mEventTemplates ); 292 addItemStringList( "EventTemplates", &mEventTemplates );
292 addItemStringList( "TodoTemplates", &mTodoTemplates ); 293 addItemStringList( "TodoTemplates", &mTodoTemplates );
293 294
294 addItemInt("DestinationPolicy",&mDestination,standardDestination); 295 addItemInt("DestinationPolicy",&mDestination,standardDestination);
295 296
296 297
297 298
298} 299}
299 300
300 301
301KOPrefs::~KOPrefs() 302KOPrefs::~KOPrefs()
302{ 303{
303 if (mInstance == this) 304 if (mInstance == this)
304 mInstance = insd.setObject(0); 305 mInstance = insd.setObject(0);
305 306
306 //qDebug("KOPrefs::~KOPrefs() "); 307 //qDebug("KOPrefs::~KOPrefs() ");
307} 308}
308 309
309 310
310KOPrefs *KOPrefs::instance() 311KOPrefs *KOPrefs::instance()
311{ 312{
312 if (!mInstance) { 313 if (!mInstance) {
313 mInstance = insd.setObject(new KOPrefs()); 314 mInstance = insd.setObject(new KOPrefs());
314 mInstance->readConfig(); 315 mInstance->readConfig();
315 } 316 }
316 317
317 return mInstance; 318 return mInstance;
318} 319}
319 320
320void KOPrefs::usrSetDefaults() 321void KOPrefs::usrSetDefaults()
321{ 322{
322 323
323} 324}
324 325
325void KOPrefs::fillMailDefaults() 326void KOPrefs::fillMailDefaults()
326{ 327{
327 if (mName.isEmpty()) mName = i18n("Anonymous"); 328 if (mName.isEmpty()) mName = i18n("Anonymous");
328 if (mEmail.isEmpty()) mEmail = i18n("nobody@nowhere"); 329 if (mEmail.isEmpty()) mEmail = i18n("nobody@nowhere");
329} 330}
330 331
331void KOPrefs::setTimeZoneIdDefault() 332void KOPrefs::setTimeZoneIdDefault()
332{ 333{
333 ; 334 ;
334} 335}
335 336
336void KOPrefs::setCategoryDefaults() 337void KOPrefs::setCategoryDefaults()
337{ 338{
338 mCustomCategories.clear(); 339 mCustomCategories.clear();
339 mCustomCategories = getDefaultList(); 340 mCustomCategories = getDefaultList();
340 341
341 QStringList::Iterator it; 342 QStringList::Iterator it;
342 for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) { 343 for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) {
343 setCategoryColor(*it,mDefaultCategoryColor); 344 setCategoryColor(*it,mDefaultCategoryColor);
344 } 345 }
345} 346}
346 347
347QStringList KOPrefs::getDefaultList() 348QStringList KOPrefs::getDefaultList()
348{ 349{
349 QStringList retval ; 350 QStringList retval ;
350 retval << i18n("Anniversary") << i18n("Appointment") << i18n("Birthday") << i18n("Business") << i18n("Business Travel") << i18n("Cinema") << i18n("Customer") 351 retval << i18n("Anniversary") << i18n("Appointment") << i18n("Birthday") << i18n("Business") << i18n("Business Travel") << i18n("Cinema") << i18n("Customer")
351 << i18n("Break")<< i18n("Breakfast")<< i18n("Competition")<< i18n("Dinner") 352 << i18n("Break")<< i18n("Breakfast")<< i18n("Competition")<< i18n("Dinner")
352 << i18n("Education")<< i18n("Family") << i18n("Favorites") << i18n("Festival")<< i18n("Fishing")<< i18n("Flight") << i18n("Gifts") 353 << i18n("Education")<< i18n("Family") << i18n("Favorites") << i18n("Festival")<< i18n("Fishing")<< i18n("Flight") << i18n("Gifts")
353 << i18n("Holiday") << i18n("Holiday Cards")<< i18n("Hot Contacts") << i18n("Hiking") << i18n("Hunting") << i18n("Key Customer") << i18n("Kids") 354 << i18n("Holiday") << i18n("Holiday Cards")<< i18n("Hot Contacts") << i18n("Hiking") << i18n("Hunting") << i18n("Key Customer") << i18n("Kids")
354 << i18n("Lunch") << i18n("Meeting") << i18n("Miscellaneous") << i18n("Partner")<< i18n("Party") << i18n("Personal") << i18n("Personal Travel") 355 << i18n("Lunch") << i18n("Meeting") << i18n("Miscellaneous") << i18n("Partner")<< i18n("Party") << i18n("Personal") << i18n("Personal Travel")
355 << i18n("PHB") << i18n("Phone Calls") << i18n("Projects") << i18n("Recurring") << i18n("School") << i18n("Shopping") 356 << i18n("PHB") << i18n("Phone Calls") << i18n("Projects") << i18n("Recurring") << i18n("School") << i18n("Shopping")
356 << i18n("Speach") << i18n("Special Occasion") << i18n("Sports") << i18n("Talk") << i18n("Travel") << i18n("TV")<< i18n("University") 357 << i18n("Speach") << i18n("Special Occasion") << i18n("Sports") << i18n("Talk") << i18n("Travel") << i18n("TV")<< i18n("University")
357 << i18n("Vacation") << i18n("VIP") << i18n("SyncEvent") ; 358 << i18n("Vacation") << i18n("VIP") << i18n("SyncEvent") ;
358 retval.sort(); 359 retval.sort();
359 return retval; 360 return retval;
360} 361}
361 362
362void KOPrefs::usrReadConfig() 363void KOPrefs::usrReadConfig()
363{ 364{
364 config()->setGroup("General"); 365 config()->setGroup("General");
365 366
366 mCustomCategories = config()->readListEntry("Custom Categories"); 367 mCustomCategories = config()->readListEntry("Custom Categories");
367 if ( KPimGlobalPrefs::instance()->mPreferredLanguage != mOldLanguage ) { 368 if ( KPimGlobalPrefs::instance()->mPreferredLanguage != mOldLanguage ) {
368 mLocationDefaults.clear(); 369 mLocationDefaults.clear();
369 mEventSummaryUser.clear(); 370 mEventSummaryUser.clear();
370 mTodoSummaryUser.clear(); 371 mTodoSummaryUser.clear();
371 } 372 }
372 mOldLoadedLanguage = mOldLanguage ; 373 mOldLoadedLanguage = mOldLanguage ;
373 mOldLanguage = KPimGlobalPrefs::instance()->mPreferredLanguage; 374 mOldLanguage = KPimGlobalPrefs::instance()->mPreferredLanguage;
374 if (mLocationDefaults.isEmpty()) { 375 if (mLocationDefaults.isEmpty()) {
375 mLocationDefaults << i18n("Home") << i18n("Office") << i18n("Library") << i18n("School") << i18n("Doctor") << i18n("Beach") 376 mLocationDefaults << i18n("Home") << i18n("Office") << i18n("Library") << i18n("School") << i18n("Doctor") << i18n("Beach")
376 << i18n("University") << i18n("Restaurant") << i18n("Bar") << i18n("Conference room") << i18n("Cinema") << i18n("Lake") << i18n("Kindergarten") 377 << i18n("University") << i18n("Restaurant") << i18n("Bar") << i18n("Conference room") << i18n("Cinema") << i18n("Lake") << i18n("Kindergarten")
377 << i18n("Germany") << i18n("Sweden") << i18n("Forest") << i18n("Desert") << i18n("Kitchen") ; 378 << i18n("Germany") << i18n("Sweden") << i18n("Forest") << i18n("Desert") << i18n("Kitchen") ;
378 // << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") 379 // << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("")
379 mLocationDefaults.sort(); 380 mLocationDefaults.sort();
380 } 381 }
381 382
382 if (mEventSummaryUser.isEmpty()) { 383 if (mEventSummaryUser.isEmpty()) {
383 mEventSummaryUser = getDefaultList() ; 384 mEventSummaryUser = getDefaultList() ;
384 } 385 }
385 if (mTodoSummaryUser.isEmpty()) { 386 if (mTodoSummaryUser.isEmpty()) {
386 mTodoSummaryUser = getDefaultList() ; 387 mTodoSummaryUser = getDefaultList() ;
387 } 388 }
388 389
389 if (mCustomCategories.isEmpty()) setCategoryDefaults(); 390 if (mCustomCategories.isEmpty()) setCategoryDefaults();
390 391
391 config()->setGroup("Personal Settings"); 392 config()->setGroup("Personal Settings");
diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h
index b3acda7..8b849fa 100644
--- a/korganizer/koprefs.h
+++ b/korganizer/koprefs.h
@@ -1,278 +1,279 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> 3 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org>
4 4
5 This program is free software; you can redistribute it and/or modify 5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or 7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23#ifndef KOPREFS_H 23#ifndef KOPREFS_H
24#define KOPREFS_H 24#define KOPREFS_H
25 25
26 26
27#include <libkdepim/kpimprefs.h> 27#include <libkdepim/kpimprefs.h>
28#include <qdict.h> 28#include <qdict.h>
29 29
30class KConfig; 30class KConfig;
31class QFont; 31class QFont;
32class QColor; 32class QColor;
33class QStringList; 33class QStringList;
34 34
35class KOPrefs : public KPimPrefs 35class KOPrefs : public KPimPrefs
36{ 36{
37 public: 37 public:
38 enum { FormatVCalendar, FormatICalendar }; 38 enum { FormatVCalendar, FormatICalendar };
39 enum { MailClientKMail, MailClientSendmail }; 39 enum { MailClientKMail, MailClientSendmail };
40 enum { IMIPDummy, IMIPKMail }; 40 enum { IMIPDummy, IMIPKMail };
41 enum { IMIPOutbox, IMIPdirectsend }; 41 enum { IMIPOutbox, IMIPdirectsend };
42 enum { neverAuto, addressbookAuto, selectedAuto }; 42 enum { neverAuto, addressbookAuto, selectedAuto };
43 enum { standardDestination, askDestination }; 43 enum { standardDestination, askDestination };
44 44
45 virtual ~KOPrefs(); 45 virtual ~KOPrefs();
46 46
47 /** Get instance of KOPrefs. It is made sure that there is only one 47 /** Get instance of KOPrefs. It is made sure that there is only one
48 instance. */ 48 instance. */
49 static KOPrefs *instance(); 49 static KOPrefs *instance();
50 50
51 /** Set preferences to default values */ 51 /** Set preferences to default values */
52 void usrSetDefaults(); 52 void usrSetDefaults();
53 53
54 /** Read preferences from config file */ 54 /** Read preferences from config file */
55 void usrReadConfig(); 55 void usrReadConfig();
56 56
57 /** Write preferences to config file */ 57 /** Write preferences to config file */
58 void usrWriteConfig(); 58 void usrWriteConfig();
59 void setCategoryDefaults(); 59 void setCategoryDefaults();
60 60
61 protected: 61 protected:
62 void setTimeZoneIdDefault(); 62 void setTimeZoneIdDefault();
63 63
64 /** Fill empty mail fields with default values. */ 64 /** Fill empty mail fields with default values. */
65 void fillMailDefaults(); 65 void fillMailDefaults();
66 66
67 private: 67 private:
68 /** Constructor disabled for public. Use instance() to create a KOPrefs 68 /** Constructor disabled for public. Use instance() to create a KOPrefs
69 object. */ 69 object. */
70 KOPrefs(); 70 KOPrefs();
71 71
72 static KOPrefs *mInstance; 72 static KOPrefs *mInstance;
73 QStringList getDefaultList(); 73 QStringList getDefaultList();
74 public: 74 public:
75 // preferences data 75 // preferences data
76 KConfig* getConfig(); 76 KConfig* getConfig();
77 void setFullName(const QString &); 77 void setFullName(const QString &);
78 QString fullName(); 78 QString fullName();
79 void setEmail(const QString &); 79 void setEmail(const QString &);
80 QString email(); 80 QString email();
81 81
82 QString mAdditional; 82 QString mAdditional;
83 83
84 bool mEmailControlCenter; 84 bool mEmailControlCenter;
85 85
86 bool mBcc; 86 bool mBcc;
87 bool mAutoSave; 87 bool mAutoSave;
88 int mAutoSaveInterval; 88 int mAutoSaveInterval;
89 bool mConfirm; 89 bool mConfirm;
90 90
91 bool mEnableGroupScheduling; 91 bool mEnableGroupScheduling;
92 bool mEnableProjectView; 92 bool mEnableProjectView;
93 93
94 int mDefaultFormat; 94 int mDefaultFormat;
95 int mMailClient; 95 int mMailClient;
96 96
97 int mStartTime; 97 int mStartTime;
98 int mDefaultDuration; 98 int mDefaultDuration;
99 int mAlarmTime; 99 int mAlarmTime;
100 100
101 int mWorkingHoursStart; 101 int mWorkingHoursStart;
102 int mWorkingHoursEnd; 102 int mWorkingHoursEnd;
103 bool mExcludeHolidays; 103 bool mExcludeHolidays;
104 bool mExcludeSaturdays; 104 bool mExcludeSaturdays;
105 bool mMarcusBainsShowSeconds; 105 bool mMarcusBainsShowSeconds;
106 106
107 QFont mTimeBarFont; 107 QFont mTimeBarFont;
108 QFont mMonthViewFont; 108 QFont mMonthViewFont;
109 QFont mAgendaViewFont; 109 QFont mAgendaViewFont;
110 QFont mMarcusBainsFont; 110 QFont mMarcusBainsFont;
111 QFont mTimeLabelsFont; 111 QFont mTimeLabelsFont;
112 QFont mTodoViewFont; 112 QFont mTodoViewFont;
113 QFont mListViewFont; 113 QFont mListViewFont;
114 QFont mDateNavigatorFont; 114 QFont mDateNavigatorFont;
115 QFont mEditBoxFont; 115 QFont mEditBoxFont;
116 QFont mJornalViewFont; 116 QFont mJornalViewFont;
117 QFont mWhatsNextFont; 117 QFont mWhatsNextFont;
118 QFont mEventViewFont; 118 QFont mEventViewFont;
119 119
120 120
121 121
122 122
123 QColor mHolidayColor; 123 QColor mHolidayColor;
124 QColor mHighlightColor; 124 QColor mHighlightColor;
125 QColor mEventColor; 125 QColor mEventColor;
126 QColor mTodoDoneColor;
126 QColor mAgendaBgColor; 127 QColor mAgendaBgColor;
127 QColor mWorkingHoursColor; 128 QColor mWorkingHoursColor;
128 QColor mTodoDueTodayColor; 129 QColor mTodoDueTodayColor;
129 QColor mTodoOverdueColor; 130 QColor mTodoOverdueColor;
130 QColor mMonthViewEvenColor; 131 QColor mMonthViewEvenColor;
131 QColor mMonthViewOddColor; 132 QColor mMonthViewOddColor;
132 QColor mMonthViewHolidayColor; 133 QColor mMonthViewHolidayColor;
133 bool mMonthViewUsesDayColors; 134 bool mMonthViewUsesDayColors;
134 bool mMonthViewSatSunTog; 135 bool mMonthViewSatSunTog;
135 QColor mAppColor1; 136 QColor mAppColor1;
136 QColor mAppColor2; 137 QColor mAppColor2;
137 bool mUseAppColors; 138 bool mUseAppColors;
138 139
139 int mDayBegins; 140 int mDayBegins;
140 int mHourSize; 141 int mHourSize;
141 int mAllDaySize; 142 int mAllDaySize;
142 bool mShowFullMenu; 143 bool mShowFullMenu;
143 bool mDailyRecur; 144 bool mDailyRecur;
144 bool mWeeklyRecur; 145 bool mWeeklyRecur;
145 bool mMonthDailyRecur; 146 bool mMonthDailyRecur;
146 bool mMonthWeeklyRecur; 147 bool mMonthWeeklyRecur;
147 bool mMonthShowIcons; 148 bool mMonthShowIcons;
148 bool mMonthShowShort; 149 bool mMonthShowShort;
149 bool mEnableToolTips; 150 bool mEnableToolTips;
150 bool mEnableMonthScroll; 151 bool mEnableMonthScroll;
151 bool mFullViewMonth; 152 bool mFullViewMonth;
152 bool mMonthViewUsesCategoryColor; 153 bool mMonthViewUsesCategoryColor;
153 bool mFullViewTodo; 154 bool mFullViewTodo;
154 bool mShowCompletedTodo; 155 bool mShowCompletedTodo;
155 bool mMarcusBainsEnabled; 156 bool mMarcusBainsEnabled;
156 int mNextXDays; 157 int mNextXDays;
157 int mWhatsNextDays; 158 int mWhatsNextDays;
158 int mWhatsNextPrios; 159 int mWhatsNextPrios;
159 bool mEnableQuickTodo; 160 bool mEnableQuickTodo;
160 161
161 bool mCompactDialogs; 162 bool mCompactDialogs;
162 bool mVerticalScreen; 163 bool mVerticalScreen;
163 164
164 bool mShowIconNewTodo; 165 bool mShowIconNewTodo;
165 bool mShowIconNewEvent; 166 bool mShowIconNewEvent;
166 bool mShowIconSearch; 167 bool mShowIconSearch;
167 bool mShowIconList; 168 bool mShowIconList;
168 bool mShowIconDay1; 169 bool mShowIconDay1;
169 bool mShowIconDay5; 170 bool mShowIconDay5;
170 bool mShowIconDay7; 171 bool mShowIconDay7;
171 bool mShowIconMonth; 172 bool mShowIconMonth;
172 bool mShowIconTodoview; 173 bool mShowIconTodoview;
173 bool mShowIconBackFast; 174 bool mShowIconBackFast;
174 bool mShowIconBack; 175 bool mShowIconBack;
175 bool mShowIconToday; 176 bool mShowIconToday;
176 bool mShowIconForward; 177 bool mShowIconForward;
177 bool mShowIconForwardFast; 178 bool mShowIconForwardFast;
178 bool mShowIconWhatsThis; 179 bool mShowIconWhatsThis;
179 bool mShowIconNextDays; 180 bool mShowIconNextDays;
180 bool mShowIconNext; 181 bool mShowIconNext;
181 bool mShowIconJournal; 182 bool mShowIconJournal;
182 183
183 bool mShowIconStretch; 184 bool mShowIconStretch;
184 185
185 bool mToolBarHor; 186 bool mToolBarHor;
186 bool mToolBarUp; 187 bool mToolBarUp;
187 bool mToolBarMiniIcons; 188 bool mToolBarMiniIcons;
188 189
189 bool mAskForQuit; 190 bool mAskForQuit;
190 bool mUsePassWd; 191 bool mUsePassWd;
191 bool mShowSyncEvents; 192 bool mShowSyncEvents;
192 bool mShowTodoInAgenda; 193 bool mShowTodoInAgenda;
193 bool mShowTimeInAgenda; 194 bool mShowTimeInAgenda;
194 bool mHideNonStartedTodos; 195 bool mHideNonStartedTodos;
195 196
196 int mLastSyncTime; 197 int mLastSyncTime;
197 void setCategoryColor(QString cat,const QColor & color); 198 void setCategoryColor(QString cat,const QColor & color);
198 QColor *categoryColor(QString cat); 199 QColor *categoryColor(QString cat);
199 200
200 QString mArchiveFile; 201 QString mArchiveFile;
201 QString mHtmlExportFile; 202 QString mHtmlExportFile;
202 bool mHtmlWithSave; 203 bool mHtmlWithSave;
203 204
204 QStringList mSelectedPlugins; 205 QStringList mSelectedPlugins;
205 206
206 QString mLastImportFile; 207 QString mLastImportFile;
207 QString mLastVcalFile; 208 QString mLastVcalFile;
208 QString mLastSaveFile; 209 QString mLastSaveFile;
209 QString mLastLoadFile; 210 QString mLastLoadFile;
210 211
211 212
212 QString mDefaultAlarmFile; 213 QString mDefaultAlarmFile;
213 int mIMIPScheduler; 214 int mIMIPScheduler;
214 int mIMIPSend; 215 int mIMIPSend;
215 QStringList mAdditionalMails; 216 QStringList mAdditionalMails;
216 int mIMIPAutoRefresh; 217 int mIMIPAutoRefresh;
217 int mIMIPAutoInsertReply; 218 int mIMIPAutoInsertReply;
218 int mIMIPAutoInsertRequest; 219 int mIMIPAutoInsertRequest;
219 int mIMIPAutoFreeBusy; 220 int mIMIPAutoFreeBusy;
220 int mIMIPAutoFreeBusyReply; 221 int mIMIPAutoFreeBusyReply;
221 222
222 QStringList mTodoTemplates; 223 QStringList mTodoTemplates;
223 QStringList mEventTemplates; 224 QStringList mEventTemplates;
224 225
225 int mDestination; 226 int mDestination;
226 227
227 228
228 bool mEditOnDoubleClick; 229 bool mEditOnDoubleClick;
229 bool mViewChangeHoldFullscreen; 230 bool mViewChangeHoldFullscreen;
230 bool mViewChangeHoldNonFullscreen; 231 bool mViewChangeHoldNonFullscreen;
231 bool mCenterOnCurrentTime; 232 bool mCenterOnCurrentTime;
232 bool mSetTimeToDayStartAt; 233 bool mSetTimeToDayStartAt;
233 bool mHighlightCurrentDay; 234 bool mHighlightCurrentDay;
234 bool mUseHighlightLightColor; 235 bool mUseHighlightLightColor;
235 bool mListViewMonthTimespan; 236 bool mListViewMonthTimespan;
236 bool mWNViewShowsParents; 237 bool mWNViewShowsParents;
237 bool mWNViewShowsPast; 238 bool mWNViewShowsPast;
238 bool mWNViewShowLocation; 239 bool mWNViewShowLocation;
239 bool mTodoViewShowsPercentage; 240 bool mTodoViewShowsPercentage;
240 bool mTodoViewUsesCatColors; 241 bool mTodoViewUsesCatColors;
241 bool mTodoViewUsesSmallFont; 242 bool mTodoViewUsesSmallFont;
242 bool mTodoViewUsesForegroundColor; 243 bool mTodoViewUsesForegroundColor;
243 bool mMonthViewUsesForegroundColor; 244 bool mMonthViewUsesForegroundColor;
244 245
245 bool mHightlightDateTimeEdit; 246 bool mHightlightDateTimeEdit;
246 bool mShortDateInViewer; 247 bool mShortDateInViewer;
247 248
248 bool mShowDateNavigator; 249 bool mShowDateNavigator;
249 250
250 QStringList mLocationDefaults; 251 QStringList mLocationDefaults;
251 QStringList mEventSummaryUser; 252 QStringList mEventSummaryUser;
252 QStringList mTodoSummaryUser; 253 QStringList mTodoSummaryUser;
253 254
254 bool mUseInternalAlarmNotification; 255 bool mUseInternalAlarmNotification;
255 int mAlarmPlayBeeps; 256 int mAlarmPlayBeeps;
256 int mAlarmSuspendTime; 257 int mAlarmSuspendTime;
257 int mAlarmSuspendCount; 258 int mAlarmSuspendCount;
258 int mAlarmBeepInterval; 259 int mAlarmBeepInterval;
259 int mOldLanguage; 260 int mOldLanguage;
260 int mOldLoadedLanguage; 261 int mOldLoadedLanguage;
261 262
262 263
263 QString mActiveSyncPort; 264 QString mActiveSyncPort;
264 QString mActiveSyncIP; 265 QString mActiveSyncIP;
265 266
266 private: 267 private:
267 QDict<QColor> mCategoryColors; 268 QDict<QColor> mCategoryColors;
268 QColor mDefaultCategoryColor; 269 QColor mDefaultCategoryColor;
269 270
270 QFont mDefaultTimeBarFont; 271 QFont mDefaultTimeBarFont;
271 QFont mDefaultViewFont; 272 QFont mDefaultViewFont;
272 QFont mDefaultMonthViewFont; 273 QFont mDefaultMonthViewFont;
273 274
274 QString mName; 275 QString mName;
275 QString mEmail; 276 QString mEmail;
276}; 277};
277 278
278#endif 279#endif
diff --git a/korganizer/koprefsdialog.cpp b/korganizer/koprefsdialog.cpp
index 1b24f56..580dff2 100644
--- a/korganizer/koprefsdialog.cpp
+++ b/korganizer/koprefsdialog.cpp
@@ -987,384 +987,390 @@ void KOPrefsDialog::selectSoundFile()
987 fileName = KFileDialog::getSaveFileName( mDefaultAlarmFile->text() , "Choose default alarm file", this ); 987 fileName = KFileDialog::getSaveFileName( mDefaultAlarmFile->text() , "Choose default alarm file", this );
988 if ( fileName.length() > 0 ) 988 if ( fileName.length() > 0 )
989 mDefaultAlarmFile->setText( fileName ); 989 mDefaultAlarmFile->setText( fileName );
990} 990}
991void KOPrefsDialog::setupFontsTab() 991void KOPrefsDialog::setupFontsTab()
992{ 992{
993 993
994 QFrame *topFrame = addPage(i18n("Fonts"),0,0); 994 QFrame *topFrame = addPage(i18n("Fonts"),0,0);
995 // DesktopIcon("fonts",KIcon::SizeMedium)); 995 // DesktopIcon("fonts",KIcon::SizeMedium));
996 996
997 QGridLayout *topLayout = new QGridLayout(topFrame,7,3); 997 QGridLayout *topLayout = new QGridLayout(topFrame,7,3);
998 topLayout->setSpacing(1); 998 topLayout->setSpacing(1);
999 topLayout->setMargin(3); 999 topLayout->setMargin(3);
1000 KPrefsDialogWidFont * tVFont; 1000 KPrefsDialogWidFont * tVFont;
1001 int i = 0; 1001 int i = 0;
1002 KPrefsDialogWidFont *timeLabelsFont = 1002 KPrefsDialogWidFont *timeLabelsFont =
1003 addWidFont(i18n("23"),i18n("DateNavigator:(nr)"), 1003 addWidFont(i18n("23"),i18n("DateNavigator:(nr)"),
1004 &(KOPrefs::instance()->mDateNavigatorFont),topFrame); 1004 &(KOPrefs::instance()->mDateNavigatorFont),topFrame);
1005 topLayout->addWidget(timeLabelsFont->label(),i,0); 1005 topLayout->addWidget(timeLabelsFont->label(),i,0);
1006 topLayout->addWidget(timeLabelsFont->preview(),i,1); 1006 topLayout->addWidget(timeLabelsFont->preview(),i,1);
1007 topLayout->addWidget(timeLabelsFont->button(),i,2); 1007 topLayout->addWidget(timeLabelsFont->button(),i,2);
1008 ++i; 1008 ++i;
1009 1009
1010 1010
1011 timeLabelsFont = 1011 timeLabelsFont =
1012 addWidFont(i18n("Mon 15"),i18n("Date Labels:"), 1012 addWidFont(i18n("Mon 15"),i18n("Date Labels:"),
1013 &(KOPrefs::instance()->mTimeLabelsFont),topFrame); 1013 &(KOPrefs::instance()->mTimeLabelsFont),topFrame);
1014 topLayout->addWidget(timeLabelsFont->label(),i,0); 1014 topLayout->addWidget(timeLabelsFont->label(),i,0);
1015 topLayout->addWidget(timeLabelsFont->preview(),i,1); 1015 topLayout->addWidget(timeLabelsFont->preview(),i,1);
1016 topLayout->addWidget(timeLabelsFont->button(),i,2); 1016 topLayout->addWidget(timeLabelsFont->button(),i,2);
1017 ++i; 1017 ++i;
1018 1018
1019 KPrefsDialogWidFont *timeBarFont = 1019 KPrefsDialogWidFont *timeBarFont =
1020 addWidFont(KGlobal::locale()->formatTime(QTime(12,34)),i18n("Time bar:"), 1020 addWidFont(KGlobal::locale()->formatTime(QTime(12,34)),i18n("Time bar:"),
1021 &(KOPrefs::instance()->mTimeBarFont),topFrame); 1021 &(KOPrefs::instance()->mTimeBarFont),topFrame);
1022 topLayout->addWidget(timeBarFont->label(),i,0); 1022 topLayout->addWidget(timeBarFont->label(),i,0);
1023 topLayout->addWidget(timeBarFont->preview(),i,1); 1023 topLayout->addWidget(timeBarFont->preview(),i,1);
1024 topLayout->addWidget(timeBarFont->button(),i,2); 1024 topLayout->addWidget(timeBarFont->button(),i,2);
1025 ++i; 1025 ++i;
1026 1026
1027 1027
1028 KPrefsDialogWidFont *marcusBainsFont = 1028 KPrefsDialogWidFont *marcusBainsFont =
1029 addWidFont(KGlobal::locale()->formatTime(QTime(12,34,23)),i18n("M. Bains line:"), 1029 addWidFont(KGlobal::locale()->formatTime(QTime(12,34,23)),i18n("M. Bains line:"),
1030 &(KOPrefs::instance()->mMarcusBainsFont),topFrame); 1030 &(KOPrefs::instance()->mMarcusBainsFont),topFrame);
1031 topLayout->addWidget(marcusBainsFont->label(),i,0); 1031 topLayout->addWidget(marcusBainsFont->label(),i,0);
1032 topLayout->addWidget(marcusBainsFont->preview(),i,1); 1032 topLayout->addWidget(marcusBainsFont->preview(),i,1);
1033 topLayout->addWidget(marcusBainsFont->button(),i,2); 1033 topLayout->addWidget(marcusBainsFont->button(),i,2);
1034 ++i; 1034 ++i;
1035 1035
1036 tVFont = 1036 tVFont =
1037 addWidFont(i18n("Summary"),i18n("Event Viewer:"), 1037 addWidFont(i18n("Summary"),i18n("Event Viewer:"),
1038 &(KOPrefs::instance()->mEventViewFont),topFrame); 1038 &(KOPrefs::instance()->mEventViewFont),topFrame);
1039 topLayout->addWidget(tVFont->label(),i,0); 1039 topLayout->addWidget(tVFont->label(),i,0);
1040 topLayout->addWidget(tVFont->preview(),i,1); 1040 topLayout->addWidget(tVFont->preview(),i,1);
1041 topLayout->addWidget(tVFont->button(),i,2); 1041 topLayout->addWidget(tVFont->button(),i,2);
1042 ++i; 1042 ++i;
1043 1043
1044 1044
1045 1045
1046 tVFont = 1046 tVFont =
1047 addWidFont(i18n("Details"),i18n("EditorBox:"), 1047 addWidFont(i18n("Details"),i18n("EditorBox:"),
1048 &(KOPrefs::instance()->mEditBoxFont),topFrame); 1048 &(KOPrefs::instance()->mEditBoxFont),topFrame);
1049 topLayout->addWidget(tVFont->label(),i,0); 1049 topLayout->addWidget(tVFont->label(),i,0);
1050 topLayout->addWidget(tVFont->preview(),i,1); 1050 topLayout->addWidget(tVFont->preview(),i,1);
1051 topLayout->addWidget(tVFont->button(),i,2); 1051 topLayout->addWidget(tVFont->button(),i,2);
1052 ++i; 1052 ++i;
1053 1053
1054 1054
1055 1055
1056 topLayout->setColStretch(1,1); 1056 topLayout->setColStretch(1,1);
1057 topLayout->setRowStretch(4,1); 1057 topLayout->setRowStretch(4,1);
1058 1058
1059 1059
1060 i = 0; 1060 i = 0;
1061 topFrame = addPage(i18n("View Fonts"),0, 1061 topFrame = addPage(i18n("View Fonts"),0,
1062 DesktopIcon("fonts",KIcon::SizeMedium)); 1062 DesktopIcon("fonts",KIcon::SizeMedium));
1063 1063
1064 topLayout = new QGridLayout(topFrame,7,3); 1064 topLayout = new QGridLayout(topFrame,7,3);
1065 topLayout->setSpacing(1); 1065 topLayout->setSpacing(1);
1066 topLayout->setMargin(3); 1066 topLayout->setMargin(3);
1067 1067
1068 tVFont = 1068 tVFont =
1069 addWidFont(i18n("Configure KO"),i18n("What's Next View:"), 1069 addWidFont(i18n("Configure KO"),i18n("What's Next View:"),
1070 &(KOPrefs::instance()->mWhatsNextFont),topFrame); 1070 &(KOPrefs::instance()->mWhatsNextFont),topFrame);
1071 topLayout->addWidget(tVFont->label(),i,0); 1071 topLayout->addWidget(tVFont->label(),i,0);
1072 topLayout->addWidget(tVFont->preview(),i,1); 1072 topLayout->addWidget(tVFont->preview(),i,1);
1073 topLayout->addWidget(tVFont->button(),i,2); 1073 topLayout->addWidget(tVFont->button(),i,2);
1074 ++i; 1074 ++i;
1075 KPrefsDialogWidFont *agendaViewFont = 1075 KPrefsDialogWidFont *agendaViewFont =
1076 addWidFont(i18n("Event text"),i18n("Agenda view:"), 1076 addWidFont(i18n("Event text"),i18n("Agenda view:"),
1077 &(KOPrefs::instance()->mAgendaViewFont),topFrame); 1077 &(KOPrefs::instance()->mAgendaViewFont),topFrame);
1078 topLayout->addWidget(agendaViewFont->label(),i,0); 1078 topLayout->addWidget(agendaViewFont->label(),i,0);
1079 topLayout->addWidget(agendaViewFont->preview(),i,1); 1079 topLayout->addWidget(agendaViewFont->preview(),i,1);
1080 topLayout->addWidget(agendaViewFont->button(),i,2); 1080 topLayout->addWidget(agendaViewFont->button(),i,2);
1081 ++i; 1081 ++i;
1082 1082
1083 1083
1084 KPrefsDialogWidFont *monthViewFont = 1084 KPrefsDialogWidFont *monthViewFont =
1085 addWidFont(KGlobal::locale()->formatTime(QTime(12,34)) + " " + i18n("Event"), 1085 addWidFont(KGlobal::locale()->formatTime(QTime(12,34)) + " " + i18n("Event"),
1086 i18n("Month view:"),&(KOPrefs::instance()->mMonthViewFont),topFrame); 1086 i18n("Month view:"),&(KOPrefs::instance()->mMonthViewFont),topFrame);
1087 topLayout->addWidget(monthViewFont->label(),i,0); 1087 topLayout->addWidget(monthViewFont->label(),i,0);
1088 topLayout->addWidget(monthViewFont->preview(),i,1); 1088 topLayout->addWidget(monthViewFont->preview(),i,1);
1089 topLayout->addWidget(monthViewFont->button(),i,2); 1089 topLayout->addWidget(monthViewFont->button(),i,2);
1090 ++i; 1090 ++i;
1091 1091
1092 1092
1093 KPrefsDialogWidFont *lVFont = 1093 KPrefsDialogWidFont *lVFont =
1094 addWidFont(i18n("Event"),i18n("List View:"), 1094 addWidFont(i18n("Event"),i18n("List View:"),
1095 &(KOPrefs::instance()->mListViewFont),topFrame); 1095 &(KOPrefs::instance()->mListViewFont),topFrame);
1096 topLayout->addWidget(lVFont->label(),i,0); 1096 topLayout->addWidget(lVFont->label(),i,0);
1097 topLayout->addWidget(lVFont->preview(),i,1); 1097 topLayout->addWidget(lVFont->preview(),i,1);
1098 topLayout->addWidget(lVFont->button(),i,2); 1098 topLayout->addWidget(lVFont->button(),i,2);
1099 ++i; 1099 ++i;
1100 1100
1101 1101
1102 tVFont = 1102 tVFont =
1103 addWidFont(i18n("ToDo"),i18n("ToDoView:"), 1103 addWidFont(i18n("ToDo"),i18n("ToDoView:"),
1104 &(KOPrefs::instance()->mTodoViewFont),topFrame); 1104 &(KOPrefs::instance()->mTodoViewFont),topFrame);
1105 topLayout->addWidget(tVFont->label(),i,0); 1105 topLayout->addWidget(tVFont->label(),i,0);
1106 topLayout->addWidget(tVFont->preview(),i,1); 1106 topLayout->addWidget(tVFont->preview(),i,1);
1107 topLayout->addWidget(tVFont->button(),i,2); 1107 topLayout->addWidget(tVFont->button(),i,2);
1108 ++i; 1108 ++i;
1109 1109
1110 1110
1111 tVFont = 1111 tVFont =
1112 addWidFont(i18n("Today"),i18n("JournalView:"), 1112 addWidFont(i18n("Today"),i18n("JournalView:"),
1113 &(KOPrefs::instance()->mJornalViewFont),topFrame); 1113 &(KOPrefs::instance()->mJornalViewFont),topFrame);
1114 topLayout->addWidget(tVFont->label(),i,0); 1114 topLayout->addWidget(tVFont->label(),i,0);
1115 topLayout->addWidget(tVFont->preview(),i,1); 1115 topLayout->addWidget(tVFont->preview(),i,1);
1116 topLayout->addWidget(tVFont->button(),i,2); 1116 topLayout->addWidget(tVFont->button(),i,2);
1117 ++i; 1117 ++i;
1118 1118
1119 1119
1120 1120
1121 1121
1122 topLayout->setColStretch(1,1); 1122 topLayout->setColStretch(1,1);
1123 topLayout->setRowStretch(4,1); 1123 topLayout->setRowStretch(4,1);
1124 1124
1125 1125
1126 1126
1127 1127
1128} 1128}
1129 1129
1130void KOPrefsDialog::setupColorsTab() 1130void KOPrefsDialog::setupColorsTab()
1131{ 1131{
1132 QFrame *topFrame = addPage(i18n("Colors"),0,0); 1132 QFrame *topFrame = addPage(i18n("Colors"),0,0);
1133 // DesktopIcon("colorize",KIcon::SizeMedium)); 1133 // DesktopIcon("colorize",KIcon::SizeMedium));
1134 1134
1135 QGridLayout *topLayout = new QGridLayout(topFrame,5,2); 1135 QGridLayout *topLayout = new QGridLayout(topFrame,5,2);
1136 // topLayout->setSpacing(spacingHint()); 1136 // topLayout->setSpacing(spacingHint());
1137 // topLayout->setMargin(marginHint()); 1137 // topLayout->setMargin(marginHint());
1138 1138
1139 topLayout->setSpacing(2); 1139 topLayout->setSpacing(2);
1140 topLayout->setMargin(3); 1140 topLayout->setMargin(3);
1141 1141
1142 int ii = 1; 1142 int ii = 1;
1143 QGroupBox *categoryGroup ; 1143 QGroupBox *categoryGroup ;
1144 1144
1145 categoryGroup = new QGroupBox(1,Vertical,i18n("Categories"), 1145 categoryGroup = new QGroupBox(1,Vertical,i18n("Categories"),
1146 topFrame); 1146 topFrame);
1147 topLayout->addMultiCellWidget(categoryGroup,0,0,0,1); 1147 topLayout->addMultiCellWidget(categoryGroup,0,0,0,1);
1148 1148
1149 mCategoryCombo = new QComboBox(categoryGroup); 1149 mCategoryCombo = new QComboBox(categoryGroup);
1150 mCategoryCombo->insertStringList(KOPrefs::instance()->mCustomCategories); 1150 mCategoryCombo->insertStringList(KOPrefs::instance()->mCustomCategories);
1151 connect(mCategoryCombo,SIGNAL(activated(int)),SLOT(updateCategoryColor())); 1151 connect(mCategoryCombo,SIGNAL(activated(int)),SLOT(updateCategoryColor()));
1152 1152
1153 mCategoryButton = new KColorButton(categoryGroup); 1153 mCategoryButton = new KColorButton(categoryGroup);
1154 connect(mCategoryButton,SIGNAL(changed(const QColor &)),SLOT(setCategoryColor())); 1154 connect(mCategoryButton,SIGNAL(changed(const QColor &)),SLOT(setCategoryColor()));
1155 updateCategoryColor(); 1155 updateCategoryColor();
1156 1156
1157 1157
1158 // Holiday Color 1158 // Holiday Color
1159 1159
1160 KPrefsDialogWidColor *holidayColor = 1160 KPrefsDialogWidColor *holidayColor =
1161 addWidColor(i18n("Holiday color:"), 1161 addWidColor(i18n("Holiday color:"),
1162 &(KOPrefs::instance()->mHolidayColor),topFrame); 1162 &(KOPrefs::instance()->mHolidayColor),topFrame);
1163 topLayout->addWidget(holidayColor->label(),ii,0); 1163 topLayout->addWidget(holidayColor->label(),ii,0);
1164 topLayout->addWidget(holidayColor->button(),ii++,1); 1164 topLayout->addWidget(holidayColor->button(),ii++,1);
1165 1165
1166 // Highlight Color 1166 // Highlight Color
1167 KPrefsDialogWidColor *highlightColor = 1167 KPrefsDialogWidColor *highlightColor =
1168 addWidColor(i18n("Highlight color:"), 1168 addWidColor(i18n("Highlight color:"),
1169 &(KOPrefs::instance()->mHighlightColor),topFrame); 1169 &(KOPrefs::instance()->mHighlightColor),topFrame);
1170 topLayout->addWidget(highlightColor->label(),ii,0); 1170 topLayout->addWidget(highlightColor->label(),ii,0);
1171 topLayout->addWidget(highlightColor->button(),ii++,1); 1171 topLayout->addWidget(highlightColor->button(),ii++,1);
1172 1172
1173 // Event color 1173 // Event color
1174 KPrefsDialogWidColor *eventColor = 1174 KPrefsDialogWidColor *eventColor =
1175 addWidColor(i18n("Default event color:"), 1175 addWidColor(i18n("Default event color:"),
1176 &(KOPrefs::instance()->mEventColor),topFrame); 1176 &(KOPrefs::instance()->mEventColor),topFrame);
1177 topLayout->addWidget(eventColor->label(),ii,0); 1177 topLayout->addWidget(eventColor->label(),ii,0);
1178 topLayout->addWidget(eventColor->button(),ii++,1); 1178 topLayout->addWidget(eventColor->button(),ii++,1);
1179 eventColor =
1180 addWidColor(i18n("Default todo done color:"),
1181 &(KOPrefs::instance()->mTodoDoneColor),topFrame);
1182 topLayout->addWidget(eventColor->label(),ii,0);
1183 topLayout->addWidget(eventColor->button(),ii++,1);
1184
1179 1185
1180 // agenda view background color 1186 // agenda view background color
1181 KPrefsDialogWidColor *agendaBgColor = 1187 KPrefsDialogWidColor *agendaBgColor =
1182 addWidColor(i18n("Agenda view background color:"), 1188 addWidColor(i18n("Agenda view background color:"),
1183 &(KOPrefs::instance()->mAgendaBgColor),topFrame); 1189 &(KOPrefs::instance()->mAgendaBgColor),topFrame);
1184 topLayout->addWidget(agendaBgColor->label(),ii,0); 1190 topLayout->addWidget(agendaBgColor->label(),ii,0);
1185 topLayout->addWidget(agendaBgColor->button(),ii++,1); 1191 topLayout->addWidget(agendaBgColor->button(),ii++,1);
1186 1192
1187 // working hours color 1193 // working hours color
1188 KPrefsDialogWidColor *workingHoursColor = 1194 KPrefsDialogWidColor *workingHoursColor =
1189 addWidColor(i18n("Working hours color:"), 1195 addWidColor(i18n("Working hours color:"),
1190 &(KOPrefs::instance()->mWorkingHoursColor),topFrame); 1196 &(KOPrefs::instance()->mWorkingHoursColor),topFrame);
1191 topLayout->addWidget(workingHoursColor->label(),ii,0); 1197 topLayout->addWidget(workingHoursColor->label(),ii,0);
1192 topLayout->addWidget(workingHoursColor->button(),ii++,1); 1198 topLayout->addWidget(workingHoursColor->button(),ii++,1);
1193 1199
1194 KPrefsDialogWidBool *sb = 1200 KPrefsDialogWidBool *sb =
1195 addWidBool(i18n("Use colors for application:"), 1201 addWidBool(i18n("Use colors for application:"),
1196 &(KOPrefs::instance()->mUseAppColors),topFrame); 1202 &(KOPrefs::instance()->mUseAppColors),topFrame);
1197 topLayout->addMultiCellWidget(sb->checkBox(), ii, ii, 0,1 ); 1203 topLayout->addMultiCellWidget(sb->checkBox(), ii, ii, 0,1 );
1198 1204
1199 ii++; 1205 ii++;
1200 KPrefsDialogWidColor * workingHoursColor1 = 1206 KPrefsDialogWidColor * workingHoursColor1 =
1201 addWidColor(i18n("Buttons, menus, etc.:"), 1207 addWidColor(i18n("Buttons, menus, etc.:"),
1202 &(KOPrefs::instance()->mAppColor1),topFrame); 1208 &(KOPrefs::instance()->mAppColor1),topFrame);
1203 topLayout->addWidget(workingHoursColor1->label(),ii,0); 1209 topLayout->addWidget(workingHoursColor1->label(),ii,0);
1204 topLayout->addWidget(workingHoursColor1->button(),ii++,1); 1210 topLayout->addWidget(workingHoursColor1->button(),ii++,1);
1205 1211
1206 KPrefsDialogWidColor * workingHoursColor2 = 1212 KPrefsDialogWidColor * workingHoursColor2 =
1207 addWidColor(i18n("Frames, labels, etc.:"), 1213 addWidColor(i18n("Frames, labels, etc.:"),
1208 &(KOPrefs::instance()->mAppColor2),topFrame); 1214 &(KOPrefs::instance()->mAppColor2),topFrame);
1209 topLayout->addWidget(workingHoursColor2->label(),ii,0); 1215 topLayout->addWidget(workingHoursColor2->label(),ii,0);
1210 topLayout->addWidget(workingHoursColor2->button(),ii++,1); 1216 topLayout->addWidget(workingHoursColor2->button(),ii++,1);
1211 1217
1212 1218
1213 1219
1214} 1220}
1215 1221
1216void KOPrefsDialog::setCategoryColor() 1222void KOPrefsDialog::setCategoryColor()
1217{ 1223{
1218 mCategoryDict.replace(mCategoryCombo->currentText(), new QColor(mCategoryButton->color())); 1224 mCategoryDict.replace(mCategoryCombo->currentText(), new QColor(mCategoryButton->color()));
1219} 1225}
1220 1226
1221void KOPrefsDialog::updateCategoryColor() 1227void KOPrefsDialog::updateCategoryColor()
1222{ 1228{
1223 QString cat = mCategoryCombo->currentText(); 1229 QString cat = mCategoryCombo->currentText();
1224 QColor *color = mCategoryDict.find(cat); 1230 QColor *color = mCategoryDict.find(cat);
1225 if (!color) { 1231 if (!color) {
1226 color = KOPrefs::instance()->categoryColor(cat); 1232 color = KOPrefs::instance()->categoryColor(cat);
1227 } 1233 }
1228 if (color) { 1234 if (color) {
1229 mCategoryButton->setColor(*color); 1235 mCategoryButton->setColor(*color);
1230 } 1236 }
1231} 1237}
1232 1238
1233void KOPrefsDialog::setupPrinterTab() 1239void KOPrefsDialog::setupPrinterTab()
1234{ 1240{
1235 mPrinterTab = addPage(i18n("Printing"),0, 1241 mPrinterTab = addPage(i18n("Printing"),0,
1236 DesktopIcon("fileprint",KIcon::SizeMedium)); 1242 DesktopIcon("fileprint",KIcon::SizeMedium));
1237 1243
1238 QGridLayout *topLayout = new QGridLayout(mPrinterTab,5,2); 1244 QGridLayout *topLayout = new QGridLayout(mPrinterTab,5,2);
1239 topLayout->setSpacing(spacingHint()); 1245 topLayout->setSpacing(spacingHint());
1240 topLayout->setMargin(marginHint()); 1246 topLayout->setMargin(marginHint());
1241 1247
1242 topLayout->setRowStretch(4,1); 1248 topLayout->setRowStretch(4,1);
1243} 1249}
1244 1250
1245void KOPrefsDialog::setupGroupSchedulingTab() 1251void KOPrefsDialog::setupGroupSchedulingTab()
1246{ 1252{
1247#if 0 1253#if 0
1248 QFrame *topFrame = addPage(i18n("Group Scheduling"),0, 1254 QFrame *topFrame = addPage(i18n("Group Scheduling"),0,
1249 DesktopIcon("personal",KIcon::SizeMedium)); 1255 DesktopIcon("personal",KIcon::SizeMedium));
1250 1256
1251 QGridLayout *topLayout = new QGridLayout(topFrame,6,2); 1257 QGridLayout *topLayout = new QGridLayout(topFrame,6,2);
1252 topLayout->setSpacing(spacingHint()); 1258 topLayout->setSpacing(spacingHint());
1253 topLayout->setMargin(marginHint()); 1259 topLayout->setMargin(marginHint());
1254 1260
1255#if 0 1261#if 0
1256 KPrefsDialogWidRadios *schedulerGroup = 1262 KPrefsDialogWidRadios *schedulerGroup =
1257 addWidRadios(i18n("Scheduler Mail Client"),&(KOPrefs::instance()->mIMIPScheduler), 1263 addWidRadios(i18n("Scheduler Mail Client"),&(KOPrefs::instance()->mIMIPScheduler),
1258 topFrame); 1264 topFrame);
1259 schedulerGroup->addRadio("Dummy"); // Only for debugging 1265 schedulerGroup->addRadio("Dummy"); // Only for debugging
1260 schedulerGroup->addRadio(i18n("Mail client")); 1266 schedulerGroup->addRadio(i18n("Mail client"));
1261 1267
1262 topLayout->addMultiCellWidget(schedulerGroup->groupBox(),0,0,0,1); 1268 topLayout->addMultiCellWidget(schedulerGroup->groupBox(),0,0,0,1);
1263#endif 1269#endif
1264 1270
1265 KPrefsDialogWidRadios *sendGroup = 1271 KPrefsDialogWidRadios *sendGroup =
1266 addWidRadios(i18n("Scheduler Mails Should Be"),&(KOPrefs::instance()->mIMIPSend), 1272 addWidRadios(i18n("Scheduler Mails Should Be"),&(KOPrefs::instance()->mIMIPSend),
1267 topFrame); 1273 topFrame);
1268 sendGroup->addRadio(i18n("Send to outbox")); 1274 sendGroup->addRadio(i18n("Send to outbox"));
1269 sendGroup->addRadio(i18n("Send directly")); 1275 sendGroup->addRadio(i18n("Send directly"));
1270 1276
1271 topLayout->addMultiCellWidget(sendGroup->groupBox(),1,1,0,1); 1277 topLayout->addMultiCellWidget(sendGroup->groupBox(),1,1,0,1);
1272 1278
1273 topLayout->addMultiCellWidget(new QLabel(i18n("Additional email addresses:"),topFrame),2,2,0,1); 1279 topLayout->addMultiCellWidget(new QLabel(i18n("Additional email addresses:"),topFrame),2,2,0,1);
1274 mAMails = new QListView(topFrame); 1280 mAMails = new QListView(topFrame);
1275 mAMails->addColumn(i18n("Email"),300); 1281 mAMails->addColumn(i18n("Email"),300);
1276 topLayout->addMultiCellWidget(mAMails,3,3,0,1); 1282 topLayout->addMultiCellWidget(mAMails,3,3,0,1);
1277 1283
1278 topLayout->addWidget(new QLabel(i18n("Additional email address:"),topFrame),4,0); 1284 topLayout->addWidget(new QLabel(i18n("Additional email address:"),topFrame),4,0);
1279 aEmailsEdit = new QLineEdit(topFrame); 1285 aEmailsEdit = new QLineEdit(topFrame);
1280 aEmailsEdit->setEnabled(false); 1286 aEmailsEdit->setEnabled(false);
1281 topLayout->addWidget(aEmailsEdit,4,1); 1287 topLayout->addWidget(aEmailsEdit,4,1);
1282 1288
1283 QPushButton *add = new QPushButton(i18n("New"),topFrame,"new"); 1289 QPushButton *add = new QPushButton(i18n("New"),topFrame,"new");
1284 topLayout->addWidget(add,5,0); 1290 topLayout->addWidget(add,5,0);
1285 QPushButton *del = new QPushButton(i18n("Remove"),topFrame,"remove"); 1291 QPushButton *del = new QPushButton(i18n("Remove"),topFrame,"remove");
1286 topLayout->addWidget(del,5,1); 1292 topLayout->addWidget(del,5,1);
1287 1293
1288 //topLayout->setRowStretch(2,1); 1294 //topLayout->setRowStretch(2,1);
1289 connect(add, SIGNAL( clicked() ), this, SLOT(addItem()) ); 1295 connect(add, SIGNAL( clicked() ), this, SLOT(addItem()) );
1290 connect(del, SIGNAL( clicked() ), this, SLOT(removeItem()) ); 1296 connect(del, SIGNAL( clicked() ), this, SLOT(removeItem()) );
1291 connect(aEmailsEdit,SIGNAL( textChanged(const QString&) ), this,SLOT(updateItem())); 1297 connect(aEmailsEdit,SIGNAL( textChanged(const QString&) ), this,SLOT(updateItem()));
1292 connect(mAMails,SIGNAL(selectionChanged(QListViewItem *)),SLOT(updateInput())); 1298 connect(mAMails,SIGNAL(selectionChanged(QListViewItem *)),SLOT(updateInput()));
1293#endif 1299#endif
1294} 1300}
1295 1301
1296void KOPrefsDialog::setupGroupAutomationTab() 1302void KOPrefsDialog::setupGroupAutomationTab()
1297{ 1303{
1298 return; 1304 return;
1299 QFrame *topFrame = addPage(i18n("Group Automation"),0, 1305 QFrame *topFrame = addPage(i18n("Group Automation"),0,
1300 DesktopIcon("personal",KIcon::SizeMedium)); 1306 DesktopIcon("personal",KIcon::SizeMedium));
1301 1307
1302 QGridLayout *topLayout = new QGridLayout(topFrame,5,1); 1308 QGridLayout *topLayout = new QGridLayout(topFrame,5,1);
1303 topLayout->setSpacing(spacingHint()); 1309 topLayout->setSpacing(spacingHint());
1304 topLayout->setMargin(marginHint()); 1310 topLayout->setMargin(marginHint());
1305 1311
1306 KPrefsDialogWidRadios *autoRefreshGroup = 1312 KPrefsDialogWidRadios *autoRefreshGroup =
1307 addWidRadios(i18n("Auto Send Refresh"), 1313 addWidRadios(i18n("Auto Send Refresh"),
1308 &(KOPrefs::instance()->mIMIPAutoRefresh),topFrame); 1314 &(KOPrefs::instance()->mIMIPAutoRefresh),topFrame);
1309 autoRefreshGroup->addRadio(i18n("Never")); 1315 autoRefreshGroup->addRadio(i18n("Never"));
1310 autoRefreshGroup->addRadio(i18n("If attendee is in addressbook")); 1316 autoRefreshGroup->addRadio(i18n("If attendee is in addressbook"));
1311 //autoRefreshGroup->addRadio(i18n("selected emails")); 1317 //autoRefreshGroup->addRadio(i18n("selected emails"));
1312 topLayout->addMultiCellWidget(autoRefreshGroup->groupBox(),0,0,0,0); 1318 topLayout->addMultiCellWidget(autoRefreshGroup->groupBox(),0,0,0,0);
1313 1319
1314 KPrefsDialogWidRadios *autoInsertGroup = 1320 KPrefsDialogWidRadios *autoInsertGroup =
1315 addWidRadios(i18n("Auto Insert IMIP Replies"), 1321 addWidRadios(i18n("Auto Insert IMIP Replies"),
1316 &(KOPrefs::instance()->mIMIPAutoInsertReply),topFrame); 1322 &(KOPrefs::instance()->mIMIPAutoInsertReply),topFrame);
1317 autoInsertGroup->addRadio(i18n("Never")); 1323 autoInsertGroup->addRadio(i18n("Never"));
1318 autoInsertGroup->addRadio(i18n("If attendee is in addressbook")); 1324 autoInsertGroup->addRadio(i18n("If attendee is in addressbook"));
1319 //autoInsertGroup->addRadio(i18n("selected emails")); 1325 //autoInsertGroup->addRadio(i18n("selected emails"));
1320 topLayout->addMultiCellWidget(autoInsertGroup->groupBox(),1,1,0,0); 1326 topLayout->addMultiCellWidget(autoInsertGroup->groupBox(),1,1,0,0);
1321 1327
1322 KPrefsDialogWidRadios *autoRequestGroup = 1328 KPrefsDialogWidRadios *autoRequestGroup =
1323 addWidRadios(i18n("Auto Insert IMIP Requests"), 1329 addWidRadios(i18n("Auto Insert IMIP Requests"),
1324 &(KOPrefs::instance()->mIMIPAutoInsertRequest),topFrame); 1330 &(KOPrefs::instance()->mIMIPAutoInsertRequest),topFrame);
1325 autoRequestGroup->addRadio(i18n("Never")); 1331 autoRequestGroup->addRadio(i18n("Never"));
1326 autoRequestGroup->addRadio(i18n("If organizer is in addressbook")); 1332 autoRequestGroup->addRadio(i18n("If organizer is in addressbook"));
1327 //autoInsertGroup->addRadio(i18n("selected emails")); 1333 //autoInsertGroup->addRadio(i18n("selected emails"));
1328 topLayout->addMultiCellWidget(autoRequestGroup->groupBox(),2,2,0,0); 1334 topLayout->addMultiCellWidget(autoRequestGroup->groupBox(),2,2,0,0);
1329 1335
1330 KPrefsDialogWidRadios *autoFreeBusyGroup = 1336 KPrefsDialogWidRadios *autoFreeBusyGroup =
1331 addWidRadios(i18n("Auto Send FreeBusy Information"), 1337 addWidRadios(i18n("Auto Send FreeBusy Information"),
1332 &(KOPrefs::instance()->mIMIPAutoFreeBusy),topFrame); 1338 &(KOPrefs::instance()->mIMIPAutoFreeBusy),topFrame);
1333 autoFreeBusyGroup->addRadio(i18n("Never")); 1339 autoFreeBusyGroup->addRadio(i18n("Never"));
1334 autoFreeBusyGroup->addRadio(i18n("If requested from an email in addressbook")); 1340 autoFreeBusyGroup->addRadio(i18n("If requested from an email in addressbook"));
1335 //autoFreeBusyGroup->addRadio(i18n("selected emails")); 1341 //autoFreeBusyGroup->addRadio(i18n("selected emails"));
1336 topLayout->addMultiCellWidget(autoFreeBusyGroup->groupBox(),3,3,0,0); 1342 topLayout->addMultiCellWidget(autoFreeBusyGroup->groupBox(),3,3,0,0);
1337 1343
1338 KPrefsDialogWidRadios *autoFreeBusyReplyGroup = 1344 KPrefsDialogWidRadios *autoFreeBusyReplyGroup =
1339 addWidRadios(i18n("Auto Save FreeBusy Replies"), 1345 addWidRadios(i18n("Auto Save FreeBusy Replies"),
1340 &(KOPrefs::instance()->mIMIPAutoFreeBusyReply),topFrame); 1346 &(KOPrefs::instance()->mIMIPAutoFreeBusyReply),topFrame);
1341 autoFreeBusyReplyGroup->addRadio(i18n("Never")); 1347 autoFreeBusyReplyGroup->addRadio(i18n("Never"));
1342 autoFreeBusyReplyGroup->addRadio(i18n("If attendee is in addressbook")); 1348 autoFreeBusyReplyGroup->addRadio(i18n("If attendee is in addressbook"));
1343 //autoFreeBusyGroup->addRadio(i18n("selected emails")); 1349 //autoFreeBusyGroup->addRadio(i18n("selected emails"));
1344 topLayout->addMultiCellWidget(autoFreeBusyReplyGroup->groupBox(),4,4,0,0); 1350 topLayout->addMultiCellWidget(autoFreeBusyReplyGroup->groupBox(),4,4,0,0);
1345} 1351}
1346 1352
1347void KOPrefsDialog::showPrinterTab() 1353void KOPrefsDialog::showPrinterTab()
1348{ 1354{
1349 showPage(pageIndex(mPrinterTab)); 1355 showPage(pageIndex(mPrinterTab));
1350} 1356}
1351 1357
1352 1358
1353void KOPrefsDialog::setCombo(QComboBox *combo, const QString & text, 1359void KOPrefsDialog::setCombo(QComboBox *combo, const QString & text,
1354 const QStringList *tags) 1360 const QStringList *tags)
1355{ 1361{
1356 if (tags) { 1362 if (tags) {
1357 int i = tags->findIndex(text); 1363 int i = tags->findIndex(text);
1358 if (i > 0) combo->setCurrentItem(i); 1364 if (i > 0) combo->setCurrentItem(i);
1359 } else { 1365 } else {
1360 for(int i=0;i<combo->count();++i) { 1366 for(int i=0;i<combo->count();++i) {
1361 if (combo->text(i) == text) { 1367 if (combo->text(i) == text) {
1362 combo->setCurrentItem(i); 1368 combo->setCurrentItem(i);
1363 break; 1369 break;
1364 } 1370 }
1365 } 1371 }
1366 } 1372 }
1367} 1373}
1368 1374
1369void KOPrefsDialog::usrReadConfig() 1375void KOPrefsDialog::usrReadConfig()
1370{ 1376{