summaryrefslogtreecommitdiffabout
path: root/korganizer
authorzautrix <zautrix>2005-01-25 15:12:21 (UTC)
committer zautrix <zautrix>2005-01-25 15:12:21 (UTC)
commitfe4e6e85abc2ec90cc80108fc7434899b6e13048 (patch) (unidiff)
tree9a3cf83ecf8796d0020076e4e8e275d193fb2584 /korganizer
parent165d969ce6ac38c5e3d7b5c629af0b00d0fff017 (diff)
downloadkdepimpi-fe4e6e85abc2ec90cc80108fc7434899b6e13048.zip
kdepimpi-fe4e6e85abc2ec90cc80108fc7434899b6e13048.tar.gz
kdepimpi-fe4e6e85abc2ec90cc80108fc7434899b6e13048.tar.bz2
small fixes
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koprefsdialog.cpp2
-rw-r--r--korganizer/korganizer.pro32
-rw-r--r--korganizer/main.cpp29
-rw-r--r--korganizer/mainwindow.cpp8
4 files changed, 37 insertions, 34 deletions
diff --git a/korganizer/koprefsdialog.cpp b/korganizer/koprefsdialog.cpp
index 8aa24ee..ea73fd0 100644
--- a/korganizer/koprefsdialog.cpp
+++ b/korganizer/koprefsdialog.cpp
@@ -1,290 +1,292 @@
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 23
24#include <qlayout.h> 24#include <qlayout.h>
25#include <qlabel.h> 25#include <qlabel.h>
26#include <qgroupbox.h> 26#include <qgroupbox.h>
27#include <qbuttongroup.h> 27#include <qbuttongroup.h>
28#include <qlineedit.h> 28#include <qlineedit.h>
29#include <qfont.h> 29#include <qfont.h>
30#include <qslider.h> 30#include <qslider.h>
31#include <qfile.h> 31#include <qfile.h>
32#include <qtextstream.h> 32#include <qtextstream.h>
33#include <qcombobox.h> 33#include <qcombobox.h>
34#include <qvbox.h> 34#include <qvbox.h>
35#include <qhbox.h> 35#include <qhbox.h>
36#include <qregexp.h> 36#include <qregexp.h>
37#include <qspinbox.h> 37#include <qspinbox.h>
38#include <qdatetime.h> 38#include <qdatetime.h>
39#include <qcheckbox.h> 39#include <qcheckbox.h>
40#include <qradiobutton.h> 40#include <qradiobutton.h>
41#include <qpushbutton.h> 41#include <qpushbutton.h>
42#include <qstrlist.h> 42#include <qstrlist.h>
43#include <qapplication.h> 43#include <qapplication.h>
44 44
45#include <kcolorbutton.h> 45#include <kcolorbutton.h>
46#include <kdebug.h> 46#include <kdebug.h>
47#include <klocale.h> 47#include <klocale.h>
48#include <kglobal.h> 48#include <kglobal.h>
49#include <kfontdialog.h> 49#include <kfontdialog.h>
50#include <kfiledialog.h> 50#include <kfiledialog.h>
51#include <kmessagebox.h> 51#include <kmessagebox.h>
52#include <kcolordialog.h> 52#include <kcolordialog.h>
53#include <kiconloader.h> 53#include <kiconloader.h>
54#include <kemailsettings.h> 54#include <kemailsettings.h>
55#include <kstandarddirs.h> 55#include <kstandarddirs.h>
56 56
57#include <kurlrequester.h> 57#include <kurlrequester.h>
58#include <klineedit.h> 58#include <klineedit.h>
59 59
60#if defined(USE_SOLARIS) 60#if defined(USE_SOLARIS)
61#include <sys/param.h> 61#include <sys/param.h>
62 62
63#define ZONEINFODIR "/usr/share/lib/zoneinfo" 63#define ZONEINFODIR "/usr/share/lib/zoneinfo"
64#define INITFILE "/etc/default/init" 64#define INITFILE "/etc/default/init"
65#endif 65#endif
66 66
67#include "koprefs.h" 67#include "koprefs.h"
68 68
69#include "koprefsdialog.h" 69#include "koprefsdialog.h"
70#include "kpimglobalprefs.h" 70#include "kpimglobalprefs.h"
71 71
72 72
73KOPrefsDialog::KOPrefsDialog(QWidget *parent, char *name, bool modal) : 73KOPrefsDialog::KOPrefsDialog(QWidget *parent, char *name, bool modal) :
74 KPrefsDialog(KOPrefs::instance(),parent,name,true) 74 KPrefsDialog(KOPrefs::instance(),parent,name,true)
75{ 75{
76 76
77 setCaption( i18n("Preferences - some settings need a restart (nr)")); 77 setCaption( i18n("Preferences - some settings need a restart (nr)"));
78 mCategoryDict.setAutoDelete(true); 78 mCategoryDict.setAutoDelete(true);
79 79
80 KGlobal::locale()->insertCatalogue("timezones"); 80 KGlobal::locale()->insertCatalogue("timezones");
81 81
82 setupGlobalTab(); 82 setupGlobalTab();
83 setupMainTab(); 83 setupMainTab();
84 // setupLocaleTab(); 84 // setupLocaleTab();
85 //setupTimeZoneTab(); 85 //setupTimeZoneTab();
86 setupTimeTab(); 86 setupTimeTab();
87 //setupLocaleDateTab(); 87 //setupLocaleDateTab();
88 setupFontsTab(); 88 setupFontsTab();
89 setupColorsTab(); 89 setupColorsTab();
90 setupViewsTab(); 90 setupViewsTab();
91 //setupSyncTab(); 91 //setupSyncTab();
92 //setupSyncAlgTab(); 92 //setupSyncAlgTab();
93 //setupPrinterTab(); 93 //setupPrinterTab();
94 //setupGroupSchedulingTab(); 94 //setupGroupSchedulingTab();
95 //setupGroupAutomationTab(); 95 //setupGroupAutomationTab();
96 96
97#ifndef DESKTOP_VERSION
97 if ( QApplication::desktop()->height() == 480 ) 98 if ( QApplication::desktop()->height() == 480 )
98 hideButtons(); 99 hideButtons();
100#endif
99} 101}
100 102
101 103
102KOPrefsDialog::~KOPrefsDialog() 104KOPrefsDialog::~KOPrefsDialog()
103{ 105{
104} 106}
105void KOPrefsDialog::setupGlobalTab() 107void KOPrefsDialog::setupGlobalTab()
106{ 108{
107 QFrame *topFrame = addPage(i18n("Global"),0,0); 109 QFrame *topFrame = addPage(i18n("Global"),0,0);
108 kdelibcfg = new KDEPIMConfigWidget( KPimGlobalPrefs::instance(), topFrame, "KCMKdeLibConfig" ); 110 kdelibcfg = new KDEPIMConfigWidget( KPimGlobalPrefs::instance(), topFrame, "KCMKdeLibConfig" );
109 QVBoxLayout *topLayout = new QVBoxLayout(topFrame); 111 QVBoxLayout *topLayout = new QVBoxLayout(topFrame);
110 topLayout->addWidget( kdelibcfg ); 112 topLayout->addWidget( kdelibcfg );
111 113
112 114
113} 115}
114void KOPrefsDialog::setupLocaleDateTab() 116void KOPrefsDialog::setupLocaleDateTab()
115{ 117{
116#if 0 118#if 0
117QFrame *topFrame = addPage(i18n("Date Format"),0,0); 119QFrame *topFrame = addPage(i18n("Date Format"),0,0);
118 QGridLayout *topLayout = new QGridLayout(topFrame,3,2); 120 QGridLayout *topLayout = new QGridLayout(topFrame,3,2);
119 topLayout->setSpacing(spacingHint()); 121 topLayout->setSpacing(spacingHint());
120 topLayout->setMargin(marginHint()); 122 topLayout->setMargin(marginHint());
121 int iii = 0; 123 int iii = 0;
122 124
123 125
124 KPrefsDialogWidRadios *syncPrefsGroup = 126 KPrefsDialogWidRadios *syncPrefsGroup =
125 addWidRadios(i18n("Date Format:"),&(KOPrefs::instance()->mPreferredDate),topFrame); 127 addWidRadios(i18n("Date Format:"),&(KOPrefs::instance()->mPreferredDate),topFrame);
126 QString format; 128 QString format;
127 if ( QApplication::desktop()->width() < 480 ) 129 if ( QApplication::desktop()->width() < 480 )
128 format = "(%d.%m.%Y)"; 130 format = "(%d.%m.%Y)";
129 else 131 else
130 format = "(%d.%m.%Y|%A %d %B %Y)"; 132 format = "(%d.%m.%Y|%A %d %B %Y)";
131 syncPrefsGroup->addRadio(i18n("24.03.2004 "+format)); 133 syncPrefsGroup->addRadio(i18n("24.03.2004 "+format));
132 if ( QApplication::desktop()->width() < 480 ) 134 if ( QApplication::desktop()->width() < 480 )
133 format = "(%m.%d.%Y)"; 135 format = "(%m.%d.%Y)";
134 else 136 else
135 format = "(%m.%d.%Y|%A %B %d %Y)"; 137 format = "(%m.%d.%Y|%A %B %d %Y)";
136 syncPrefsGroup->addRadio(i18n("03.24.2004 "+format)); 138 syncPrefsGroup->addRadio(i18n("03.24.2004 "+format));
137 if ( QApplication::desktop()->width() < 480 ) 139 if ( QApplication::desktop()->width() < 480 )
138 format = "(%Y-%m-%d)"; 140 format = "(%Y-%m-%d)";
139 else 141 else
140 format = "(%Y-%m-%d|%A %Y %B %d)"; 142 format = "(%Y-%m-%d|%A %Y %B %d)";
141 syncPrefsGroup->addRadio(i18n("2004-03-24 "+format)); 143 syncPrefsGroup->addRadio(i18n("2004-03-24 "+format));
142 syncPrefsGroup->addRadio(i18n("User defined")); 144 syncPrefsGroup->addRadio(i18n("User defined"));
143 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1); 145 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
144 ++iii; 146 ++iii;
145 ++iii; 147 ++iii;
146 QLabel * lab; 148 QLabel * lab;
147 mUserDateFormatLong = new QLineEdit(topFrame); 149 mUserDateFormatLong = new QLineEdit(topFrame);
148 lab = new QLabel(mUserDateFormatLong, i18n("User long date:"), topFrame); 150 lab = new QLabel(mUserDateFormatLong, i18n("User long date:"), topFrame);
149 topLayout->addWidget(lab ,iii,0); 151 topLayout->addWidget(lab ,iii,0);
150 topLayout->addWidget(mUserDateFormatLong,iii,1); 152 topLayout->addWidget(mUserDateFormatLong,iii,1);
151 ++iii; 153 ++iii;
152 mUserDateFormatShort = new QLineEdit(topFrame); 154 mUserDateFormatShort = new QLineEdit(topFrame);
153 lab = new QLabel(mUserDateFormatShort, i18n("User short date:"), topFrame); 155 lab = new QLabel(mUserDateFormatShort, i18n("User short date:"), topFrame);
154 topLayout->addWidget(lab ,iii,0); 156 topLayout->addWidget(lab ,iii,0);
155 topLayout->addWidget(mUserDateFormatShort,iii,1); 157 topLayout->addWidget(mUserDateFormatShort,iii,1);
156 ++iii; 158 ++iii;
157 lab = new QLabel( i18n("Monday 19 April 2004: %A %d %B %Y"), topFrame); 159 lab = new QLabel( i18n("Monday 19 April 2004: %A %d %B %Y"), topFrame);
158 topLayout->addMultiCellWidget(lab ,iii,iii,0,1); 160 topLayout->addMultiCellWidget(lab ,iii,iii,0,1);
159 ++iii; 161 ++iii;
160 lab = new QLabel( i18n("Mon 19.04.04: %a %d.%m.%y"), topFrame); 162 lab = new QLabel( i18n("Mon 19.04.04: %a %d.%m.%y"), topFrame);
161 topLayout->addMultiCellWidget(lab ,iii,iii,0,1); 163 topLayout->addMultiCellWidget(lab ,iii,iii,0,1);
162 ++iii; 164 ++iii;
163 lab = new QLabel( i18n("Mon, 19.Apr.04: %a, %d.%b.%y"), topFrame); 165 lab = new QLabel( i18n("Mon, 19.Apr.04: %a, %d.%b.%y"), topFrame);
164 topLayout->addMultiCellWidget(lab ,iii,iii,0,1); 166 topLayout->addMultiCellWidget(lab ,iii,iii,0,1);
165 ++iii; 167 ++iii;
166#endif 168#endif
167 169
168} 170}
169 171
170void KOPrefsDialog::setupLocaleTab() 172void KOPrefsDialog::setupLocaleTab()
171{ 173{
172#if 0 174#if 0
173 QFrame *topFrame = addPage(i18n("Locale"),0,0); 175 QFrame *topFrame = addPage(i18n("Locale"),0,0);
174 QGridLayout *topLayout = new QGridLayout(topFrame,4,2); 176 QGridLayout *topLayout = new QGridLayout(topFrame,4,2);
175 topLayout->setSpacing(spacingHint()); 177 topLayout->setSpacing(spacingHint());
176 topLayout->setMargin(marginHint()); 178 topLayout->setMargin(marginHint());
177 int iii = 0; 179 int iii = 0;
178 KPrefsDialogWidRadios *syncPrefsGroup = 180 KPrefsDialogWidRadios *syncPrefsGroup =
179 addWidRadios(i18n("Language:(needs restart)"),&(KOPrefs::instance()->mPreferredLanguage),topFrame); 181 addWidRadios(i18n("Language:(needs restart)"),&(KOPrefs::instance()->mPreferredLanguage),topFrame);
180 syncPrefsGroup->addRadio(i18n("English")); 182 syncPrefsGroup->addRadio(i18n("English"));
181 syncPrefsGroup->addRadio(i18n("German")); 183 syncPrefsGroup->addRadio(i18n("German"));
182 syncPrefsGroup->addRadio(i18n("French")); 184 syncPrefsGroup->addRadio(i18n("French"));
183 syncPrefsGroup->addRadio(i18n("User defined (usertranslation.txt)")); 185 syncPrefsGroup->addRadio(i18n("User defined (usertranslation.txt)"));
184 if ( QApplication::desktop()->width() < 300 ) 186 if ( QApplication::desktop()->width() < 300 )
185 ;// syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical); 187 ;// syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical);
186 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1); 188 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
187 ++iii; 189 ++iii;
188 190
189 syncPrefsGroup = 191 syncPrefsGroup =
190 addWidRadios(i18n("Time Format(nr):"),&(KOPrefs::instance()->mPreferredTime),topFrame); 192 addWidRadios(i18n("Time Format(nr):"),&(KOPrefs::instance()->mPreferredTime),topFrame);
191 if ( QApplication::desktop()->width() > 300 ) 193 if ( QApplication::desktop()->width() > 300 )
192 syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical); 194 syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical);
193 syncPrefsGroup->addRadio(i18n("24:00")); 195 syncPrefsGroup->addRadio(i18n("24:00"));
194 syncPrefsGroup->addRadio(i18n("12:00am")); 196 syncPrefsGroup->addRadio(i18n("12:00am"));
195 syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical); 197 syncPrefsGroup->groupBox()-> setOrientation (Qt::Vertical);
196 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1); 198 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
197 ++iii; 199 ++iii;
198 KPrefsDialogWidBool *sb; 200 KPrefsDialogWidBool *sb;
199 if ( QApplication::desktop()->width() < 300 ) { 201 if ( QApplication::desktop()->width() < 300 ) {
200 sb = 202 sb =
201 addWidBool(i18n("Week starts on Sunday"), 203 addWidBool(i18n("Week starts on Sunday"),
202 &(KOPrefs::instance()->mWeekStartsOnSunday),topFrame); 204 &(KOPrefs::instance()->mWeekStartsOnSunday),topFrame);
203 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 205 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
204 ++iii; 206 ++iii;
205 sb = 207 sb =
206 addWidBool(i18n("Use short date in (WN/E) view"), 208 addWidBool(i18n("Use short date in (WN/E) view"),
207 &(KOPrefs::instance()->mShortDateInViewer),topFrame); 209 &(KOPrefs::instance()->mShortDateInViewer),topFrame);
208 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 210 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
209 } 211 }
210 else { 212 else {
211 QWidget * hb = new QWidget( topFrame ); 213 QWidget * hb = new QWidget( topFrame );
212 QHBoxLayout *hbLayout = new QHBoxLayout(hb); 214 QHBoxLayout *hbLayout = new QHBoxLayout(hb);
213 sb = 215 sb =
214 addWidBool(i18n("Week starts on Sunday"), 216 addWidBool(i18n("Week starts on Sunday"),
215 &(KOPrefs::instance()->mWeekStartsOnSunday),hb); 217 &(KOPrefs::instance()->mWeekStartsOnSunday),hb);
216 hbLayout->addWidget(sb->checkBox() ); 218 hbLayout->addWidget(sb->checkBox() );
217 sb = 219 sb =
218 addWidBool(i18n("Use short date in (WN/E) view"), 220 addWidBool(i18n("Use short date in (WN/E) view"),
219 &(KOPrefs::instance()->mShortDateInViewer),hb); 221 &(KOPrefs::instance()->mShortDateInViewer),hb);
220 hbLayout->addWidget(sb->checkBox() ); 222 hbLayout->addWidget(sb->checkBox() );
221 topLayout->addMultiCellWidget(hb, iii,iii,0,1); 223 topLayout->addMultiCellWidget(hb, iii,iii,0,1);
222 224
223 } 225 }
224 // KPrefsDialogWidBool *sb; //#ifndef DESKTOP_VERSION 226 // KPrefsDialogWidBool *sb; //#ifndef DESKTOP_VERSION
225#if 0 227#if 0
226 ++iii; 228 ++iii;
227 sb = 229 sb =
228 addWidBool(i18n("Quick load/save (w/o Unicode)"), 230 addWidBool(i18n("Quick load/save (w/o Unicode)"),
229 &(KOPrefs::instance()->mUseQuicksave),topFrame); 231 &(KOPrefs::instance()->mUseQuicksave),topFrame);
230 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 232 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
231#endif 233#endif
232#endif 234#endif
233} 235}
234void KOPrefsDialog::showSyncPage() 236void KOPrefsDialog::showSyncPage()
235{ 237{
236 showPage ( 0 ) ; 238 showPage ( 0 ) ;
237 kdelibcfg->showTimeZoneTab() ; 239 kdelibcfg->showTimeZoneTab() ;
238 240
239} 241}
240void KOPrefsDialog::setupSyncAlgTab() 242void KOPrefsDialog::setupSyncAlgTab()
241{ 243{
242#if 0 244#if 0
243 QLabel * lab; 245 QLabel * lab;
244 QFrame *topFrame = addPage(i18n("Sync Prefs"),0,0); 246 QFrame *topFrame = addPage(i18n("Sync Prefs"),0,0);
245 mSetupSyncAlgTab = topFrame; 247 mSetupSyncAlgTab = topFrame;
246 QGridLayout *topLayout = new QGridLayout(topFrame,6,2); 248 QGridLayout *topLayout = new QGridLayout(topFrame,6,2);
247 topLayout->setSpacing(spacingHint()); 249 topLayout->setSpacing(spacingHint());
248 topLayout->setMargin(marginHint()); 250 topLayout->setMargin(marginHint());
249 int iii = 0; 251 int iii = 0;
250 252
251 KPrefsDialogWidBool *sb = 253 KPrefsDialogWidBool *sb =
252 addWidBool(i18n("Ask for preferences before syncing"), 254 addWidBool(i18n("Ask for preferences before syncing"),
253 &(KOPrefs::instance()->mAskForPreferences),topFrame); 255 &(KOPrefs::instance()->mAskForPreferences),topFrame);
254 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 256 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
255 257
256 ++iii; 258 ++iii;
257 259
258 KPrefsDialogWidRadios *syncPrefsGroup = 260 KPrefsDialogWidRadios *syncPrefsGroup =
259 addWidRadios(i18n("Sync preferences:"),&(KOPrefs::instance()->mSyncAlgoPrefs), 261 addWidRadios(i18n("Sync preferences:"),&(KOPrefs::instance()->mSyncAlgoPrefs),
260 topFrame); 262 topFrame);
261 syncPrefsGroup->addRadio(i18n("Take local entry on conflict")); 263 syncPrefsGroup->addRadio(i18n("Take local entry on conflict"));
262 syncPrefsGroup->addRadio(i18n("Take remote entry on conflict")); 264 syncPrefsGroup->addRadio(i18n("Take remote entry on conflict"));
263 syncPrefsGroup->addRadio(i18n("Take newest entry on conflict")); 265 syncPrefsGroup->addRadio(i18n("Take newest entry on conflict"));
264 syncPrefsGroup->addRadio(i18n("Ask for every entry on conflict")); 266 syncPrefsGroup->addRadio(i18n("Ask for every entry on conflict"));
265 syncPrefsGroup->addRadio(i18n("Force take local entry always")); 267 syncPrefsGroup->addRadio(i18n("Force take local entry always"));
266 syncPrefsGroup->addRadio(i18n("Force take remote entry always")); 268 syncPrefsGroup->addRadio(i18n("Force take remote entry always"));
267 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1); 269 topLayout->addMultiCellWidget( syncPrefsGroup->groupBox(),iii,iii,0,1);
268 ++iii; 270 ++iii;
269 sb = 271 sb =
270 addWidBool(i18n("Show summary after syncing"), 272 addWidBool(i18n("Show summary after syncing"),
271 &(KOPrefs::instance()->mShowSyncSummary),topFrame); 273 &(KOPrefs::instance()->mShowSyncSummary),topFrame);
272 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1); 274 topLayout->addMultiCellWidget(sb->checkBox(), iii,iii,0,1);
273 275
274 ++iii; 276 ++iii;
275#endif 277#endif
276 278
277 279
278 280
279} 281}
280 282
281 283
282void KOPrefsDialog::setupSyncTab() 284void KOPrefsDialog::setupSyncTab()
283{ 285{
284#if 0 286#if 0
285 QLabel * lab; 287 QLabel * lab;
286 QFrame *topFrame = addPage(i18n("Sync Network"),0,0); 288 QFrame *topFrame = addPage(i18n("Sync Network"),0,0);
287 QGridLayout *topLayout = new QGridLayout(topFrame,6,2); 289 QGridLayout *topLayout = new QGridLayout(topFrame,6,2);
288 topLayout->setSpacing(spacingHint()); 290 topLayout->setSpacing(spacingHint());
289 topLayout->setMargin(marginHint()); 291 topLayout->setMargin(marginHint());
290 lab = new QLabel(i18n("Remote syncing (via ssh/scp)\nnetwork settings "), topFrame); 292 lab = new QLabel(i18n("Remote syncing (via ssh/scp)\nnetwork settings "), topFrame);
diff --git a/korganizer/korganizer.pro b/korganizer/korganizer.pro
index c2602b2..4d67dca 100644
--- a/korganizer/korganizer.pro
+++ b/korganizer/korganizer.pro
@@ -1,193 +1,191 @@
1 TEMPLATE= app 1 TEMPLATE= app
2 CONFIG = qt warn_on 2 CONFIG += qt warn_off
3 TARGET = kopi 3 TARGET = kopi
4OBJECTS_DIR = _obj/ 4OBJECTS_DIR = _obj/
5MOC_DIR = _moc 5MOC_DIR = _moc
6DESTDIR= ../bin 6DESTDIR= ../bin
7 7
8include( ../variables.pri ) 8include( ../variables.pri )
9 9
10INCLUDEPATH += ../microkde ../ interfaces ../microkde/kdecore ../microkde/kdeui ../microkde/kio/kfile ../microkde/kio/kio ../libkdepim 10INCLUDEPATH += ../microkde ../ interfaces ../microkde/kdecore ../microkde/kdeui ../microkde/kio/kfile ../microkde/kio/kio ../libkdepim
11#../qtcompat 11#../qtcompat
12DEFINES += KORG_NODND KORG_NOPLUGINS KORG_NOARCHIVE KORG_NOMAIL 12DEFINES += KORG_NODND KORG_NOPLUGINS KORG_NOARCHIVE KORG_NOMAIL
13DEFINES += KORG_NODCOP KORG_NOKALARMD KORG_NORESOURCEVIEW KORG_NOSPLITTER 13DEFINES += KORG_NODCOP KORG_NOKALARMD KORG_NORESOURCEVIEW KORG_NOSPLITTER
14#KORG_NOPRINTER KORG_NOKABC 14#KORG_NOPRINTER KORG_NOKABC
15DEFINES += KORG_NOLVALTERNATION 15DEFINES += KORG_NOLVALTERNATION
16DEFINES += DESKTOP_VERSION 16DEFINES += DESKTOP_VERSION
17unix : { 17unix : {
18LIBS += ../bin/libmicrokdepim.so 18LIBS += ../bin/libmicrokdepim.so
19LIBS += ../bin/libmicrokcal.so 19LIBS += ../bin/libmicrokcal.so
20LIBS += ../bin/libmicrokde.so 20LIBS += ../bin/libmicrokde.so
21LIBS += ../bin/libmicrokabc.so 21LIBS += ../bin/libmicrokabc.so
22#LIBS += -lbluetooth 22#LIBS += -lbluetooth
23#LIBS += -lsdp 23#LIBS += -lsdp
24 24
25#LIBS += -lldap 25#LIBS += -lldap
26OBJECTS_DIR = obj/unix 26OBJECTS_DIR = obj/unix
27MOC_DIR = moc/unix 27MOC_DIR = moc/unix
28} 28}
29win32: { 29win32: {
30RC_FILE = winicons.rc 30RC_FILE = winicons.rc
31DEFINES += _WIN32_ 31DEFINES += _WIN32_
32LIBS += ../bin/microkdepim.lib 32LIBS += ../bin/microkdepim.lib
33LIBS += ../bin/microkcal.lib 33LIBS += ../bin/microkcal.lib
34LIBS += ../bin/microkde.lib 34LIBS += ../bin/microkde.lib
35LIBS += ../bin/microkabc.lib 35LIBS += ../bin/microkabc.lib
36LIBS += ../libical/lib/ical.lib 36LIBS += ../libical/lib/ical.lib
37LIBS += ../libical/lib/icalss.lib 37LIBS += ../libical/lib/icalss.lib
38#LIBS += atls.lib 38#LIBS += atls.lib
39LIBS += mfc71u.lib
40QMAKE_LINK += /NODEFAULTLIB:LIBC 39QMAKE_LINK += /NODEFAULTLIB:LIBC
41#QMAKE_LINK += /NODEFAULTLIB:MSVCRT 40#QMAKE_LINK += /NODEFAULTLIB:MSVCRT
42#QMAKE_LINK += /NODEFAULTLIB:uafxcw.lib 41#QMAKE_LINK += /NODEFAULTLIB:uafxcw.lib
43OBJECTS_DIR = obj/win 42OBJECTS_DIR = obj/win
44MOC_DIR = moc/win 43MOC_DIR = moc/win
44#olimport section
45#blabla: {
46LIBS += mfc71u.lib
47DEFINES += _OL_IMPORT_
48
49HEADERS += ../outport/msoutl9.h \
50 koimportoldialog.h
51SOURCES += ../outport/msoutl9.cpp \
52 koimportoldialog.cpp
53#}
54#olimport section end
55
45} 56}
46 57
47 58
48INTERFACES = kofilterview_base.ui 59INTERFACES = kofilterview_base.ui
49#filteredit_base.ui 60#filteredit_base.ui
50 61
51# kdateedit.h \ 62# kdateedit.h \
52 63
53HEADERS = \ 64HEADERS += \
54 filteredit_base.h \ 65 filteredit_base.h \
55 alarmclient.h \ 66 alarmclient.h \
56 calendarview.h \ 67 calendarview.h \
57 customlistviewitem.h \ 68 customlistviewitem.h \
58 datenavigator.h \ 69 datenavigator.h \
59 docprefs.h \ 70 docprefs.h \
60 filtereditdialog.h \ 71 filtereditdialog.h \
61 incomingdialog.h \ 72 incomingdialog.h \
62 incomingdialog_base.h \ 73 incomingdialog_base.h \
63 interfaces/korganizer/baseview.h \ 74 interfaces/korganizer/baseview.h \
64 interfaces/korganizer/calendarviewbase.h \ 75 interfaces/korganizer/calendarviewbase.h \
65 journalentry.h \ 76 journalentry.h \
66 kdatenavigator.h \ 77 kdatenavigator.h \
67 koagenda.h \ 78 koagenda.h \
68 koagendaitem.h \ 79 koagendaitem.h \
69 koagendaview.h \ 80 koagendaview.h \
70 kocounterdialog.h \ 81 kocounterdialog.h \
71 kodaymatrix.h \ 82 kodaymatrix.h \
72 kodialogmanager.h \ 83 kodialogmanager.h \
73 koeditordetails.h \ 84 koeditordetails.h \
74 koeditorgeneral.h \ 85 koeditorgeneral.h \
75 koeditorgeneralevent.h \ 86 koeditorgeneralevent.h \
76 koeditorgeneraltodo.h \ 87 koeditorgeneraltodo.h \
77 koeditorrecurrence.h \ 88 koeditorrecurrence.h \
78 koeventeditor.h \ 89 koeventeditor.h \
79 koeventpopupmenu.h \ 90 koeventpopupmenu.h \
80 koeventview.h \ 91 koeventview.h \
81 koeventviewer.h \ 92 koeventviewer.h \
82 koeventviewerdialog.h \ 93 koeventviewerdialog.h \
83 kofilterview.h \ 94 kofilterview.h \
84 koglobals.h \ 95 koglobals.h \
85 koincidenceeditor.h \ 96 koincidenceeditor.h \
86 kojournalview.h \ 97 kojournalview.h \
87 kolistview.h \ 98 kolistview.h \
88 kolocationbox.h \ 99 kolocationbox.h \
89 komonthview.h \ 100 komonthview.h \
90 koprefs.h \ 101 koprefs.h \
91 koprefsdialog.h \ 102 koprefsdialog.h \
92 kotimespanview.h \ 103 kotimespanview.h \
93 kotodoeditor.h \ 104 kotodoeditor.h \
94 kotodoview.h \ 105 kotodoview.h \
95 kotodoviewitem.h \ 106 kotodoviewitem.h \
96 koviewmanager.h \ 107 koviewmanager.h \
97 kowhatsnextview.h \ 108 kowhatsnextview.h \
98 ktimeedit.h \ 109 ktimeedit.h \
99 lineview.h \ 110 lineview.h \
100 mainwindow.h \ 111 mainwindow.h \
101 navigatorbar.h \ 112 navigatorbar.h \
102 outgoingdialog.h \ 113 outgoingdialog.h \
103 outgoingdialog_base.h \ 114 outgoingdialog_base.h \
104 publishdialog.h \ 115 publishdialog.h \
105 publishdialog_base.h \ 116 publishdialog_base.h \
106 savetemplatedialog.h \ 117 savetemplatedialog.h \
107 searchdialog.h \ 118 searchdialog.h \
108 simplealarmclient.h \ 119 simplealarmclient.h \
109 statusdialog.h \ 120 statusdialog.h \
110 timeline.h \ 121 timeline.h \
111 timespanview.h \ 122 timespanview.h \
112 version.h \ 123 version.h \
113 ../kalarmd/alarmdialog.h \ 124 ../kalarmd/alarmdialog.h \
114 125
115 126
116SOURCES = \ 127SOURCES += \
117filteredit_base.cpp \ 128filteredit_base.cpp \
118 calendarview.cpp \ 129 calendarview.cpp \
119 datenavigator.cpp \ 130 datenavigator.cpp \
120 docprefs.cpp \ 131 docprefs.cpp \
121 filtereditdialog.cpp \ 132 filtereditdialog.cpp \
122 incomingdialog.cpp \ 133 incomingdialog.cpp \
123 incomingdialog_base.cpp \ 134 incomingdialog_base.cpp \
124 journalentry.cpp \ 135 journalentry.cpp \
125 kdatenavigator.cpp \ 136 kdatenavigator.cpp \
126 koagenda.cpp \ 137 koagenda.cpp \
127 koagendaitem.cpp \ 138 koagendaitem.cpp \
128 koagendaview.cpp \ 139 koagendaview.cpp \
129 kocounterdialog.cpp \ 140 kocounterdialog.cpp \
130 kodaymatrix.cpp \ 141 kodaymatrix.cpp \
131 kodialogmanager.cpp \ 142 kodialogmanager.cpp \
132 koeditordetails.cpp \ 143 koeditordetails.cpp \
133 koeditorgeneral.cpp \ 144 koeditorgeneral.cpp \
134 koeditorgeneralevent.cpp \ 145 koeditorgeneralevent.cpp \
135 koeditorgeneraltodo.cpp \ 146 koeditorgeneraltodo.cpp \
136 koeditorrecurrence.cpp \ 147 koeditorrecurrence.cpp \
137 koeventeditor.cpp \ 148 koeventeditor.cpp \
138 koeventpopupmenu.cpp \ 149 koeventpopupmenu.cpp \
139 koeventview.cpp \ 150 koeventview.cpp \
140 koeventviewer.cpp \ 151 koeventviewer.cpp \
141 koeventviewerdialog.cpp \ 152 koeventviewerdialog.cpp \
142 kofilterview.cpp \ 153 kofilterview.cpp \
143 koglobals.cpp \ 154 koglobals.cpp \
144 koincidenceeditor.cpp \ 155 koincidenceeditor.cpp \
145 kojournalview.cpp \ 156 kojournalview.cpp \
146 kolistview.cpp \ 157 kolistview.cpp \
147 kolocationbox.cpp \ 158 kolocationbox.cpp \
148 komonthview.cpp \ 159 komonthview.cpp \
149 koprefs.cpp \ 160 koprefs.cpp \
150 koprefsdialog.cpp \ 161 koprefsdialog.cpp \
151 kotimespanview.cpp \ 162 kotimespanview.cpp \
152 kotodoeditor.cpp \ 163 kotodoeditor.cpp \
153 kotodoview.cpp \ 164 kotodoview.cpp \
154 kotodoviewitem.cpp \ 165 kotodoviewitem.cpp \
155 koviewmanager.cpp \ 166 koviewmanager.cpp \
156 kowhatsnextview.cpp \ 167 kowhatsnextview.cpp \
157 ktimeedit.cpp \ 168 ktimeedit.cpp \
158 lineview.cpp \ 169 lineview.cpp \
159 main.cpp \ 170 main.cpp \
160 mainwindow.cpp \ 171 mainwindow.cpp \
161 navigatorbar.cpp \ 172 navigatorbar.cpp \
162 outgoingdialog.cpp \ 173 outgoingdialog.cpp \
163 outgoingdialog_base.cpp \ 174 outgoingdialog_base.cpp \
164 publishdialog.cpp \ 175 publishdialog.cpp \
165 publishdialog_base.cpp \ 176 publishdialog_base.cpp \
166 savetemplatedialog.cpp \ 177 savetemplatedialog.cpp \
167 searchdialog.cpp \ 178 searchdialog.cpp \
168 simplealarmclient.cpp \ 179 simplealarmclient.cpp \
169 statusdialog.cpp \ 180 statusdialog.cpp \
170 timeline.cpp \ 181 timeline.cpp \
171 timespanview.cpp \ 182 timespanview.cpp \
172 ../kalarmd/alarmdialog.cpp 183 ../kalarmd/alarmdialog.cpp
173 184
174HEADERS += calprintbase.h calprinter.h calprintplugins.h cellitem.h 185HEADERS += calprintbase.h calprinter.h calprintplugins.h cellitem.h
175INTERFACES += calprintdayconfig_base.ui \ 186INTERFACES += calprintdayconfig_base.ui \
176 calprintmonthconfig_base.ui \ 187 calprintmonthconfig_base.ui \
177 calprinttodoconfig_base.ui \ 188 calprinttodoconfig_base.ui \
178 calprintweekconfig_base.ui 189 calprintweekconfig_base.ui
179SOURCES += calprintbase.cpp calprinter.cpp calprintplugins.cpp cellitem.cpp 190SOURCES += calprintbase.cpp calprinter.cpp calprintplugins.cpp cellitem.cpp
180 191
181
182
183win32: {
184HEADERS += ../outport/msoutl9.h \
185 koimportoldialog.h
186
187
188SOURCES += ../outport/msoutl9.cpp \
189 koimportoldialog.cpp
190
191
192}
193
diff --git a/korganizer/main.cpp b/korganizer/main.cpp
index 2481ca4..4b207d9 100644
--- a/korganizer/main.cpp
+++ b/korganizer/main.cpp
@@ -1,109 +1,110 @@
1 1
2 2
3#ifndef DESKTOP_VERSION 3#ifndef DESKTOP_VERSION
4#include <qpe/qpeapplication.h> 4#include <qpe/qpeapplication.h>
5#include <qcopchannel_qws.h> 5#include <qcopchannel_qws.h>
6#include <qpe/global.h> 6#include <qpe/global.h>
7#include <stdlib.h> 7#include <stdlib.h>
8#else 8#else
9#include <qapplication.h> 9#include <qapplication.h>
10#include <qstring.h> 10#include <qstring.h>
11#include <qwindowsstyle.h> 11#include <qwindowsstyle.h>
12#include <qplatinumstyle.h> 12#include <qplatinumstyle.h>
13#include <qsgistyle.h> 13#include <qsgistyle.h>
14#include <stdlib.h>
14#endif 15#endif
15#include <qtextcodec.h> 16#include <qtextcodec.h>
16 17
17#include <qdir.h> 18#include <qdir.h>
18#include <kstandarddirs.h> 19#include <kstandarddirs.h>
19#include <kglobal.h> 20#include <kglobal.h>
20#include <stdio.h> 21#include <stdio.h>
21#include "mainwindow.h" 22#include "mainwindow.h"
22#include <libkdepim/kpimglobalprefs.h> 23#include <libkdepim/kpimglobalprefs.h>
23void dumpMissing(); 24void dumpMissing();
24int main( int argc, char **argv ) 25int main( int argc, char **argv )
25{ 26{
26#ifndef DESKTOP_VERSION 27#ifndef DESKTOP_VERSION
27 QPEApplication a( argc, argv ); 28 QPEApplication a( argc, argv );
28 a.setKeepRunning (); 29 a.setKeepRunning ();
29#else 30#else
30 QApplication a( argc, argv ); 31 QApplication a( argc, argv );
31 QApplication::setStyle( new QPlatinumStyle ()); 32 QApplication::setStyle( new QPlatinumStyle ());
32 QString hdir = QDir::homeDirPath(); 33#ifdef _WIN32_
33 // there is a bug when creating dirs for WIN 98 34 QString hdir ( getenv( "HOME") );
34 // it is difficult to fix, because we have no WIN 98 runnung 35 if ( hdir.isEmpty() ) {
35 // such that we try it to create the dirs at startup here 36 QString hd ("C:/" );
36 if ( hdir == "C:\\" ) { // win 98 or ME 37 //QMessageBox::information(0,"hh",QDir::homeDirPath()+" xx" +hd );
37 QDir app_dir; 38 if ( QDir::homeDirPath().lower() == hd.lower() ) {
38 if ( !app_dir.exists("C:\\kdepim") ) 39 _putenv( "HOME=C:");
39 app_dir.mkdir ("C:\\kdepim"); 40 //QMessageBox::information(0,"hh",QString ( getenv( "HOME") ) );
40 if ( !app_dir.exists("C:\\kdepim\\apps") ) 41 }
41 app_dir.mkdir ("C:\\kdepim\\apps"); 42 } else {
42 if ( !app_dir.exists("C:\\kdepim\\config") ) 43 QDir app_dir;
43 app_dir.mkdir ("C:\\kdepim\\config"); 44 if ( !app_dir.exists(hdir) )
44 if ( !app_dir.exists("C:\\kdepim\\apps\\korganizer") ) 45 app_dir.mkdir (hdir);
45 app_dir.mkdir ("C:\\kdepim\\apps\\korganizer");
46 } 46 }
47#endif 47#endif
48#endif
48 bool exitHelp = false; 49 bool exitHelp = false;
49 if ( argc > 1 ) { 50 if ( argc > 1 ) {
50 QString command = argv[1]; 51 QString command = argv[1];
51 if ( command == "-help" ){ 52 if ( command == "-help" ){
52 printf("KO/Pi command line commands:\n"); 53 printf("KO/Pi command line commands:\n");
53 printf(" no command: Start KO/Pi in usual way\n"); 54 printf(" no command: Start KO/Pi in usual way\n");
54 printf(" -help: This output\n"); 55 printf(" -help: This output\n");
55 printf("Next Option: Open or Show after start:\n"); 56 printf("Next Option: Open or Show after start:\n");
56 printf(" -newTodo: New Todo dialog\n"); 57 printf(" -newTodo: New Todo dialog\n");
57 printf(" -newEvent: New Event dialog\n"); 58 printf(" -newEvent: New Event dialog\n");
58 printf(" -showList: List view\n"); 59 printf(" -showList: List view\n");
59 printf(" -showDay: Day view\n"); 60 printf(" -showDay: Day view\n");
60 printf(" -showWWeek: Work Week view\n"); 61 printf(" -showWWeek: Work Week view\n");
61 printf(" -showWeek: Week view\n"); 62 printf(" -showWeek: Week view\n");
62 printf(" -showTodo: Todo view\n"); 63 printf(" -showTodo: Todo view\n");
63 printf(" -showJournal: Journal view\n"); 64 printf(" -showJournal: Journal view\n");
64 printf(" -showKO: Next Days view\n"); 65 printf(" -showKO: Next Days view\n");
65 printf(" -showWNext: What's Next view\n"); 66 printf(" -showWNext: What's Next view\n");
66 printf(" -showNextXView: Next X View\n"); 67 printf(" -showNextXView: Next X View\n");
67 printf(" -new[Y] and -show[X] may be used togehther\n"); 68 printf(" -new[Y] and -show[X] may be used togehther\n");
68 printf(" KO/Pi is exiting now. Bye!\n"); 69 printf(" KO/Pi is exiting now. Bye!\n");
69 exitHelp = true; 70 exitHelp = true;
70 } 71 }
71 } 72 }
72 if ( ! exitHelp ) { 73 if ( ! exitHelp ) {
73 KGlobal::setAppName( "korganizer" ); 74 KGlobal::setAppName( "korganizer" );
74 QString fileName ; 75 QString fileName ;
75#ifndef DESKTOP_VERSION 76#ifndef DESKTOP_VERSION
76 fileName = getenv("QPEDIR"); 77 fileName = getenv("QPEDIR");
77 KGlobal::iconLoader()->setIconPath( fileName +"/pics/kdepim/korganizer/"); 78 KGlobal::iconLoader()->setIconPath( fileName +"/pics/kdepim/korganizer/");
78#else 79#else
79 fileName = qApp->applicationDirPath () + "/kdepim/korganizer/"; 80 fileName = qApp->applicationDirPath () + "/kdepim/korganizer/";
80 KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName)); 81 KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName));
81#endif 82#endif
82 KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "korganizer"))); 83 KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "korganizer")));
83 MainWindow m; 84 MainWindow m;
84#ifndef DESKTOP_VERSION 85#ifndef DESKTOP_VERSION
85 86
86 QObject::connect( &a, SIGNAL (appMessage ( const QCString &, const QByteArray & )),&m, SLOT(recieve( const QCString&, const QByteArray& ))); 87 QObject::connect( &a, SIGNAL (appMessage ( const QCString &, const QByteArray & )),&m, SLOT(recieve( const QCString&, const QByteArray& )));
87 a.showMainWidget(&m ); 88 a.showMainWidget(&m );
88#else 89#else
89 a.setMainWidget(&m ); 90 a.setMainWidget(&m );
90 m.show(); 91 m.show();
91 //m.resize( 800, 600 ); 92 //m.resize( 800, 600 );
92 QObject::connect(&a, SIGNAL(lastWindowClosed()), &a, SLOT(quit())); 93 QObject::connect(&a, SIGNAL(lastWindowClosed()), &a, SLOT(quit()));
93#endif 94#endif
94 if ( argc > 1 ) { 95 if ( argc > 1 ) {
95 QCString command = argv[1]; 96 QCString command = argv[1];
96 if ( argc > 2 ) 97 if ( argc > 2 )
97 command += argv[2]; 98 command += argv[2];
98 qApp->processEvents(); 99 qApp->processEvents();
99 m.recieve(command, QByteArray() ); 100 m.recieve(command, QByteArray() );
100 101
101 } 102 }
102 103
103 a.exec(); 104 a.exec();
104 dumpMissing(); 105 dumpMissing();
105 106
106 KPimGlobalPrefs::instance()->writeConfig(); 107 KPimGlobalPrefs::instance()->writeConfig();
107 } 108 }
108 qDebug("KO: Bye! "); 109 qDebug("KO: Bye! ");
109} 110}
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp
index 7b07a2e..26ea1e2 100644
--- a/korganizer/mainwindow.cpp
+++ b/korganizer/mainwindow.cpp
@@ -1,262 +1,264 @@
1#include <stdlib.h> 1#include <stdlib.h>
2 2
3#include <qaction.h> 3#include <qaction.h>
4#include <qpopupmenu.h> 4#include <qpopupmenu.h>
5#include <qpainter.h> 5#include <qpainter.h>
6#include <qwhatsthis.h> 6#include <qwhatsthis.h>
7#include <qpushbutton.h> 7#include <qpushbutton.h>
8#include <qmessagebox.h> 8#include <qmessagebox.h>
9#include <qlineedit.h> 9#include <qlineedit.h>
10#include <qtextcodec.h> 10#include <qtextcodec.h>
11#include <qfile.h> 11#include <qfile.h>
12#include <qdir.h> 12#include <qdir.h>
13#include <qapp.h> 13#include <qapp.h>
14#include <qfileinfo.h> 14#include <qfileinfo.h>
15#include <qlabel.h> 15#include <qlabel.h>
16#include <qspinbox.h> 16#include <qspinbox.h>
17#include <qcheckbox.h> 17#include <qcheckbox.h>
18#include <qmap.h> 18#include <qmap.h>
19#include <qwmatrix.h> 19#include <qwmatrix.h>
20#include <qtextbrowser.h> 20#include <qtextbrowser.h>
21#include <qtextstream.h> 21#include <qtextstream.h>
22#ifndef DESKTOP_VERSION 22#ifndef DESKTOP_VERSION
23#include <qpe/global.h> 23#include <qpe/global.h>
24#include <qpe/qpemenubar.h> 24#include <qpe/qpemenubar.h>
25#include <qpe/qpetoolbar.h> 25#include <qpe/qpetoolbar.h>
26#include <qpe/resource.h> 26#include <qpe/resource.h>
27#include <qpe/qpeapplication.h> 27#include <qpe/qpeapplication.h>
28#include <qtopia/alarmserver.h> 28#include <qtopia/alarmserver.h>
29#include <qtopia/qcopenvelope_qws.h> 29#include <qtopia/qcopenvelope_qws.h>
30#include <unistd.h> // for sleep 30#include <unistd.h> // for sleep
31#else 31#else
32#include <qmenubar.h> 32#include <qmenubar.h>
33#include <qtoolbar.h> 33#include <qtoolbar.h>
34#include <qapplication.h> 34#include <qapplication.h>
35//#include <resource.h> 35//#include <resource.h>
36 36
37#endif 37#endif
38#include <libkcal/calendarlocal.h> 38#include <libkcal/calendarlocal.h>
39#include <libkcal/todo.h> 39#include <libkcal/todo.h>
40#include <libkcal/phoneformat.h> 40#include <libkcal/phoneformat.h>
41#include <libkdepim/ksyncprofile.h> 41#include <libkdepim/ksyncprofile.h>
42#include <libkdepim/phoneaccess.h> 42#include <libkdepim/phoneaccess.h>
43#include <libkcal/kincidenceformatter.h> 43#include <libkcal/kincidenceformatter.h>
44#include <libkdepim/kpimglobalprefs.h> 44#include <libkdepim/kpimglobalprefs.h>
45 45
46#include "calendarview.h" 46#include "calendarview.h"
47#include "koviewmanager.h" 47#include "koviewmanager.h"
48#include "datenavigator.h" 48#include "datenavigator.h"
49#include "koagendaview.h" 49#include "koagendaview.h"
50#include "koagenda.h" 50#include "koagenda.h"
51#include "kodialogmanager.h" 51#include "kodialogmanager.h"
52#include "kdialogbase.h" 52#include "kdialogbase.h"
53#include "kapplication.h" 53#include "kapplication.h"
54#include "kofilterview.h" 54#include "kofilterview.h"
55#include "kstandarddirs.h" 55#include "kstandarddirs.h"
56#include "koprefs.h" 56#include "koprefs.h"
57#include "kfiledialog.h" 57#include "kfiledialog.h"
58#include "koglobals.h" 58#include "koglobals.h"
59#include "kglobal.h" 59#include "kglobal.h"
60#include "klocale.h" 60#include "klocale.h"
61#include "kconfig.h" 61#include "kconfig.h"
62#include "simplealarmclient.h" 62#include "simplealarmclient.h"
63#include "externalapphandler.h" 63#include "externalapphandler.h"
64 64
65using namespace KCal; 65using namespace KCal;
66#ifndef _WIN32_ 66#ifndef _WIN32_
67#include <unistd.h> 67#include <unistd.h>
68#else 68#else
69#ifdef _OL_IMPORT_
69#include "koimportoldialog.h" 70#include "koimportoldialog.h"
70#endif 71#endif
72#endif
71#include "mainwindow.h" 73#include "mainwindow.h"
72 74
73class KOex2phonePrefs : public QDialog 75class KOex2phonePrefs : public QDialog
74{ 76{
75 public: 77 public:
76 KOex2phonePrefs( QWidget *parent=0, const char *name=0 ) : 78 KOex2phonePrefs( QWidget *parent=0, const char *name=0 ) :
77 QDialog( parent, name, true ) 79 QDialog( parent, name, true )
78 { 80 {
79 setCaption( i18n("Export to phone options") ); 81 setCaption( i18n("Export to phone options") );
80 QVBoxLayout* lay = new QVBoxLayout( this ); 82 QVBoxLayout* lay = new QVBoxLayout( this );
81 lay->setSpacing( 3 ); 83 lay->setSpacing( 3 );
82 lay->setMargin( 3 ); 84 lay->setMargin( 3 );
83 QLabel *lab; 85 QLabel *lab;
84 lay->addWidget(lab = new QLabel( i18n("Please read Help-Sync Howto\nto know what settings to use."), this ) ); 86 lay->addWidget(lab = new QLabel( i18n("Please read Help-Sync Howto\nto know what settings to use."), this ) );
85 lab->setAlignment (AlignHCenter ); 87 lab->setAlignment (AlignHCenter );
86 QHBox* temphb; 88 QHBox* temphb;
87 temphb = new QHBox( this ); 89 temphb = new QHBox( this );
88 new QLabel( i18n("I/O device: "), temphb ); 90 new QLabel( i18n("I/O device: "), temphb );
89 mPhoneDevice = new QLineEdit( temphb); 91 mPhoneDevice = new QLineEdit( temphb);
90 lay->addWidget( temphb ); 92 lay->addWidget( temphb );
91 temphb = new QHBox( this ); 93 temphb = new QHBox( this );
92 new QLabel( i18n("Connection: "), temphb ); 94 new QLabel( i18n("Connection: "), temphb );
93 mPhoneConnection = new QLineEdit( temphb); 95 mPhoneConnection = new QLineEdit( temphb);
94 lay->addWidget( temphb ); 96 lay->addWidget( temphb );
95 temphb = new QHBox( this ); 97 temphb = new QHBox( this );
96 new QLabel( i18n("Model(opt.): "), temphb ); 98 new QLabel( i18n("Model(opt.): "), temphb );
97 mPhoneModel = new QLineEdit( temphb); 99 mPhoneModel = new QLineEdit( temphb);
98 lay->addWidget( temphb ); 100 lay->addWidget( temphb );
99 mWriteBackFuture= new QCheckBox( i18n("Write back events in future only"), this ); 101 mWriteBackFuture= new QCheckBox( i18n("Write back events in future only"), this );
100 mWriteBackFuture->setChecked( true ); 102 mWriteBackFuture->setChecked( true );
101 lay->addWidget( mWriteBackFuture ); 103 lay->addWidget( mWriteBackFuture );
102 temphb = new QHBox( this ); 104 temphb = new QHBox( this );
103 new QLabel( i18n("Max. weeks in future: ") , temphb ); 105 new QLabel( i18n("Max. weeks in future: ") , temphb );
104 mWriteBackFutureWeeks= new QSpinBox(1,104, 1, temphb); 106 mWriteBackFutureWeeks= new QSpinBox(1,104, 1, temphb);
105 mWriteBackFutureWeeks->setValue( 8 ); 107 mWriteBackFutureWeeks->setValue( 8 );
106 lay->addWidget( temphb ); 108 lay->addWidget( temphb );
107 lay->addWidget(lab = new QLabel( i18n("NOTE: This will remove all old\ntodo/calendar data on phone!"), this ) ); 109 lay->addWidget(lab = new QLabel( i18n("NOTE: This will remove all old\ntodo/calendar data on phone!"), this ) );
108 lab->setAlignment (AlignHCenter ); 110 lab->setAlignment (AlignHCenter );
109 QPushButton * ok = new QPushButton( i18n("Export to mobile phone!"), this ); 111 QPushButton * ok = new QPushButton( i18n("Export to mobile phone!"), this );
110 lay->addWidget( ok ); 112 lay->addWidget( ok );
111 QPushButton * cancel = new QPushButton( i18n("Cancel"), this ); 113 QPushButton * cancel = new QPushButton( i18n("Cancel"), this );
112 lay->addWidget( cancel ); 114 lay->addWidget( cancel );
113 connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); 115 connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) );
114 connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) ); 116 connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) );
115 resize( 220, 240 ); 117 resize( 220, 240 );
116 qApp->processEvents(); 118 qApp->processEvents();
117 int dw = QApplication::desktop()->width(); 119 int dw = QApplication::desktop()->width();
118 int dh = QApplication::desktop()->height(); 120 int dh = QApplication::desktop()->height();
119 move( (dw-width())/2, (dh - height() )/2 ); 121 move( (dw-width())/2, (dh - height() )/2 );
120 } 122 }
121 123
122public: 124public:
123 QLineEdit* mPhoneConnection, *mPhoneDevice, *mPhoneModel; 125 QLineEdit* mPhoneConnection, *mPhoneDevice, *mPhoneModel;
124 QCheckBox* mWriteBackFuture; 126 QCheckBox* mWriteBackFuture;
125 QSpinBox* mWriteBackFutureWeeks; 127 QSpinBox* mWriteBackFutureWeeks;
126}; 128};
127 129
128int globalFlagBlockStartup; 130int globalFlagBlockStartup;
129MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) : 131MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) :
130 QMainWindow( parent, name ) 132 QMainWindow( parent, name )
131{ 133{
132 134
133#ifdef DESKTOP_VERSION 135#ifdef DESKTOP_VERSION
134 setFont( QFont("Arial"), 14 ); 136 setFont( QFont("Arial"), 14 );
135#endif 137#endif
136 mClosed = false; 138 mClosed = false;
137 //QString confFile = KStandardDirs::appDir() + "config/korganizerrc"; 139 //QString confFile = KStandardDirs::appDir() + "config/korganizerrc";
138 QString confFile = locateLocal("config","korganizerrc"); 140 QString confFile = locateLocal("config","korganizerrc");
139 QFileInfo finf ( confFile ); 141 QFileInfo finf ( confFile );
140 bool showWarning = !finf.exists(); 142 bool showWarning = !finf.exists();
141 setIcon(SmallIcon( "ko24" ) ); 143 setIcon(SmallIcon( "ko24" ) );
142 mBlockAtStartup = true; 144 mBlockAtStartup = true;
143 mFlagKeyPressed = false; 145 mFlagKeyPressed = false;
144 setCaption("KOrganizer/Pi"); 146 setCaption("KOrganizer/Pi");
145 KOPrefs *p = KOPrefs::instance(); 147 KOPrefs *p = KOPrefs::instance();
146 KPimGlobalPrefs::instance()->setGlobalConfig(); 148 KPimGlobalPrefs::instance()->setGlobalConfig();
147 if ( p->mHourSize > 18 ) 149 if ( p->mHourSize > 18 )
148 p->mHourSize = 18; 150 p->mHourSize = 18;
149 QMainWindow::ToolBarDock tbd; 151 QMainWindow::ToolBarDock tbd;
150 if ( p->mToolBarHor ) { 152 if ( p->mToolBarHor ) {
151 if ( p->mToolBarUp ) 153 if ( p->mToolBarUp )
152 tbd = Bottom; 154 tbd = Bottom;
153 else 155 else
154 tbd = Top; 156 tbd = Top;
155 } 157 }
156 else { 158 else {
157 if ( p->mToolBarUp ) 159 if ( p->mToolBarUp )
158 tbd = Right; 160 tbd = Right;
159 else 161 else
160 tbd = Left; 162 tbd = Left;
161 } 163 }
162 if ( KOPrefs::instance()->mUseAppColors ) 164 if ( KOPrefs::instance()->mUseAppColors )
163 QApplication::setPalette( QPalette (KOPrefs::instance()->mAppColor1, KOPrefs::instance()->mAppColor2), true ); 165 QApplication::setPalette( QPalette (KOPrefs::instance()->mAppColor1, KOPrefs::instance()->mAppColor2), true );
164 globalFlagBlockStartup = 1; 166 globalFlagBlockStartup = 1;
165 iconToolBar = new QPEToolBar( this ); 167 iconToolBar = new QPEToolBar( this );
166 addToolBar (iconToolBar , tbd ); 168 addToolBar (iconToolBar , tbd );
167 mCalendarModifiedFlag = false; 169 mCalendarModifiedFlag = false;
168 170
169 QLabel* splash = new QLabel(i18n("KO/Pi is starting ... "), this ); 171 QLabel* splash = new QLabel(i18n("KO/Pi is starting ... "), this );
170 splash->setAlignment ( AlignCenter ); 172 splash->setAlignment ( AlignCenter );
171 setCentralWidget( splash ); 173 setCentralWidget( splash );
172#ifndef DESKTOP_VERSION 174#ifndef DESKTOP_VERSION
173 showMaximized(); 175 showMaximized();
174#endif 176#endif
175 //qDebug("Mainwidget x %d y %d w %d h %d", x(), y(), width(), height ()); 177 //qDebug("Mainwidget x %d y %d w %d h %d", x(), y(), width(), height ());
176 setDefaultPreferences(); 178 setDefaultPreferences();
177 mCalendar = new CalendarLocal(); 179 mCalendar = new CalendarLocal();
178 mView = new CalendarView( mCalendar, this,"mCalendar " ); 180 mView = new CalendarView( mCalendar, this,"mCalendar " );
179 mView->hide(); 181 mView->hide();
180 //mView->resize(splash->size() ); 182 //mView->resize(splash->size() );
181 initActions(); 183 initActions();
182 mSyncManager = new KSyncManager((QWidget*)this, (KSyncInterface*)mView, KSyncManager::KOPI, KOPrefs::instance(), syncMenu); 184 mSyncManager = new KSyncManager((QWidget*)this, (KSyncInterface*)mView, KSyncManager::KOPI, KOPrefs::instance(), syncMenu);
183 mSyncManager->setBlockSave(false); 185 mSyncManager->setBlockSave(false);
184 mView->setSyncManager(mSyncManager); 186 mView->setSyncManager(mSyncManager);
185#ifndef DESKTOP_VERSION 187#ifndef DESKTOP_VERSION
186 iconToolBar->show(); 188 iconToolBar->show();
187 qApp->processEvents(); 189 qApp->processEvents();
188#endif 190#endif
189 //qDebug("Splashwidget x %d y %d w %d h %d", splash-> x(), splash->y(), splash->width(),splash-> height ()); 191 //qDebug("Splashwidget x %d y %d w %d h %d", splash-> x(), splash->y(), splash->width(),splash-> height ());
190 int vh = height() ; 192 int vh = height() ;
191 int vw = width(); 193 int vw = width();
192 //qDebug("Toolbar hei %d ",iconToolBar->height() ); 194 //qDebug("Toolbar hei %d ",iconToolBar->height() );
193 if ( iconToolBar->orientation () == Qt:: Horizontal ) { 195 if ( iconToolBar->orientation () == Qt:: Horizontal ) {
194 vh -= iconToolBar->height(); 196 vh -= iconToolBar->height();
195 } else { 197 } else {
196 vw -= iconToolBar->height(); 198 vw -= iconToolBar->height();
197 } 199 }
198 //mView->setMaximumSize( splash->size() ); 200 //mView->setMaximumSize( splash->size() );
199 //mView->resize( splash->size() ); 201 //mView->resize( splash->size() );
200 //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ()); 202 //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ());
201 mView->readSettings(); 203 mView->readSettings();
202 bool newFile = false; 204 bool newFile = false;
203 if( !QFile::exists( defaultFileName() ) ) { 205 if( !QFile::exists( defaultFileName() ) ) {
204 QFileInfo finfo ( defaultFileName() ); 206 QFileInfo finfo ( defaultFileName() );
205 QString oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/Applications/korganizer/mycalendar.ics"); 207 QString oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/Applications/korganizer/mycalendar.ics");
206 qDebug("oldfile %s ", oldFile.latin1()); 208 qDebug("oldfile %s ", oldFile.latin1());
207 QString message = "You are starting KO/Pi for the\nfirst time after updating to a\nversion >= 1.9.1. The location of the\ndefault calendar file has changed.\nA mycalendar.ics file was detected\nat the old location.\nThis file will be loaded now\nand stored at the new location!\n(Config file location has changed, too!)\nPlease read menu Help-What's New!\n"; 209 QString message = "You are starting KO/Pi for the\nfirst time after updating to a\nversion >= 1.9.1. The location of the\ndefault calendar file has changed.\nA mycalendar.ics file was detected\nat the old location.\nThis file will be loaded now\nand stored at the new location!\n(Config file location has changed, too!)\nPlease read menu Help-What's New!\n";
208 finfo.setFile( oldFile ); 210 finfo.setFile( oldFile );
209 if (finfo.exists() ) { 211 if (finfo.exists() ) {
210 KMessageBox::information( this, message); 212 KMessageBox::information( this, message);
211 mView->openCalendar( oldFile ); 213 mView->openCalendar( oldFile );
212 qApp->processEvents(); 214 qApp->processEvents();
213 } else { 215 } else {
214 oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/korganizer/mycalendar.ics"); 216 oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/korganizer/mycalendar.ics");
215 finfo.setFile( oldFile ); 217 finfo.setFile( oldFile );
216 if (finfo.exists() ) { 218 if (finfo.exists() ) {
217 KMessageBox::information( this, message); 219 KMessageBox::information( this, message);
218 mView->openCalendar( oldFile ); 220 mView->openCalendar( oldFile );
219 qApp->processEvents(); 221 qApp->processEvents();
220 } 222 }
221 } 223 }
222 mView->saveCalendar( defaultFileName() ); 224 mView->saveCalendar( defaultFileName() );
223 newFile = true; 225 newFile = true;
224 } 226 }
225 227
226 QTime neededSaveTime = QDateTime::currentDateTime().time(); 228 QTime neededSaveTime = QDateTime::currentDateTime().time();
227 mView->openCalendar( defaultFileName() ); 229 mView->openCalendar( defaultFileName() );
228 int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); 230 int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() );
229 qDebug("KO: Calendar loading time: %d ms",msNeeded ); 231 qDebug("KO: Calendar loading time: %d ms",msNeeded );
230 232
231 if ( KPimGlobalPrefs::instance()->mPreferredLanguage != KOPrefs::instance()->mOldLoadedLanguage ) { 233 if ( KPimGlobalPrefs::instance()->mPreferredLanguage != KOPrefs::instance()->mOldLoadedLanguage ) {
232 KOPrefs::instance()->setCategoryDefaults(); 234 KOPrefs::instance()->setCategoryDefaults();
233 int count = mView->addCategories(); 235 int count = mView->addCategories();
234 } 236 }
235 processIncidenceSelection( 0 ); 237 processIncidenceSelection( 0 );
236 connect( mView, SIGNAL( incidenceSelected( Incidence * ) ), 238 connect( mView, SIGNAL( incidenceSelected( Incidence * ) ),
237 SLOT( processIncidenceSelection( Incidence * ) ) ); 239 SLOT( processIncidenceSelection( Incidence * ) ) );
238 connect( mView, SIGNAL( modifiedChanged( bool ) ), 240 connect( mView, SIGNAL( modifiedChanged( bool ) ),
239 SLOT( slotModifiedChanged( bool ) ) ); 241 SLOT( slotModifiedChanged( bool ) ) );
240 242
241 243
242 connect( mView, SIGNAL( tempDisableBR(bool) ), 244 connect( mView, SIGNAL( tempDisableBR(bool) ),
243 SLOT( disableBR(bool) ) ); 245 SLOT( disableBR(bool) ) );
244 connect( &mSaveTimer, SIGNAL( timeout() ), SLOT( save() ) ); 246 connect( &mSaveTimer, SIGNAL( timeout() ), SLOT( save() ) );
245 mView->setModified( false ); 247 mView->setModified( false );
246 mBlockAtStartup = false; 248 mBlockAtStartup = false;
247 mView->setModified( false ); 249 mView->setModified( false );
248 setCentralWidget( mView ); 250 setCentralWidget( mView );
249 globalFlagBlockStartup = 0; 251 globalFlagBlockStartup = 0;
250 mView->show(); 252 mView->show();
251 delete splash; 253 delete splash;
252 if ( newFile ) 254 if ( newFile )
253 mView->updateConfig(); 255 mView->updateConfig();
254 // qApp->processEvents(); 256 // qApp->processEvents();
255 //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ()); 257 //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ());
256 //fillSyncMenu(); 258 //fillSyncMenu();
257 259
258 260
259 connect(mSyncManager , SIGNAL( save() ), this, SLOT( save() ) ); 261 connect(mSyncManager , SIGNAL( save() ), this, SLOT( save() ) );
260 connect(mSyncManager , SIGNAL( request_file() ), this, SLOT( syncFileRequest() ) ); 262 connect(mSyncManager , SIGNAL( request_file() ), this, SLOT( syncFileRequest() ) );
261 connect(mSyncManager , SIGNAL( getFile( bool )), this, SLOT(getFile( bool ) ) ); 263 connect(mSyncManager , SIGNAL( getFile( bool )), this, SLOT(getFile( bool ) ) );
262 mSyncManager->setDefaultFileName( defaultFileName()); 264 mSyncManager->setDefaultFileName( defaultFileName());
@@ -589,385 +591,385 @@ void MainWindow::initActions()
589 ne_action->addTo( actionMenu ); 591 ne_action->addTo( actionMenu );
590 connect( ne_action, SIGNAL( activated() ), 592 connect( ne_action, SIGNAL( activated() ),
591 mView, SLOT( newEvent() ) ); 593 mView, SLOT( newEvent() ) );
592 icon = loadPixmap( pathString + "newtodo" ); 594 icon = loadPixmap( pathString + "newtodo" );
593 configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 ); 595 configureToolBarMenu->insertItem(icon, i18n("New Todo..."), 20 );
594 QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this ); 596 QAction* nt_action = new QAction( i18n("New Todo..."), icon, i18n("New Todo..."), 0, this );
595 nt_action->addTo( actionMenu ); 597 nt_action->addTo( actionMenu );
596 connect( nt_action, SIGNAL( activated() ), 598 connect( nt_action, SIGNAL( activated() ),
597 mView, SLOT( newTodo() ) ); 599 mView, SLOT( newTodo() ) );
598 icon = loadPixmap( pathString + "navi" ); 600 icon = loadPixmap( pathString + "navi" );
599 action = new QAction( i18n("Toggle DateNavigator"), icon, i18n("Toggle DateNavigator"), 0, this ); 601 action = new QAction( i18n("Toggle DateNavigator"), icon, i18n("Toggle DateNavigator"), 0, this );
600 action->addTo( viewMenu ); 602 action->addTo( viewMenu );
601 connect( action, SIGNAL( activated() ), 603 connect( action, SIGNAL( activated() ),
602 mView, SLOT( toggleDateNavigatorWidget() ) ); 604 mView, SLOT( toggleDateNavigatorWidget() ) );
603 icon = loadPixmap( pathString + "filter" ); 605 icon = loadPixmap( pathString + "filter" );
604 action = new QAction( i18n("Toggle FilterView"), icon, i18n("Toggle FilterView"), 0, this ); 606 action = new QAction( i18n("Toggle FilterView"), icon, i18n("Toggle FilterView"), 0, this );
605 action->addTo( viewMenu ); 607 action->addTo( viewMenu );
606 connect( action, SIGNAL( activated() ), 608 connect( action, SIGNAL( activated() ),
607 mView, SLOT( toggleFilter() ) ); 609 mView, SLOT( toggleFilter() ) );
608 action = new QAction( i18n("Toggle Allday"), i18n("Toggle Allday"), 0, this ); 610 action = new QAction( i18n("Toggle Allday"), i18n("Toggle Allday"), 0, this );
609 action->addTo( viewMenu ); 611 action->addTo( viewMenu );
610 connect( action, SIGNAL( activated() ), 612 connect( action, SIGNAL( activated() ),
611 mView, SLOT( toggleAllDaySize() ) ); 613 mView, SLOT( toggleAllDaySize() ) );
612 614
613 viewMenu->insertSeparator(); 615 viewMenu->insertSeparator();
614 icon = loadPixmap( pathString + "picker" ); 616 icon = loadPixmap( pathString + "picker" );
615 action = new QAction( i18n("Date Picker"), icon, i18n("Date Picker"), 0, this ); 617 action = new QAction( i18n("Date Picker"), icon, i18n("Date Picker"), 0, this );
616 action->addTo( viewMenu ); 618 action->addTo( viewMenu );
617 connect( action, SIGNAL( activated() ), 619 connect( action, SIGNAL( activated() ),
618 mView, SLOT( showDatePicker() ) ); 620 mView, SLOT( showDatePicker() ) );
619 action->addTo( iconToolBar ); 621 action->addTo( iconToolBar );
620 viewMenu->insertSeparator(); 622 viewMenu->insertSeparator();
621 icon = loadPixmap( pathString + "list" ); 623 icon = loadPixmap( pathString + "list" );
622 configureToolBarMenu->insertItem(icon, i18n("List View"), 30 ); 624 configureToolBarMenu->insertItem(icon, i18n("List View"), 30 );
623 QAction* showlist_action = new QAction( i18n("List View"), icon, i18n("List View"), 0, this ); 625 QAction* showlist_action = new QAction( i18n("List View"), icon, i18n("List View"), 0, this );
624 showlist_action->addTo( viewMenu ); 626 showlist_action->addTo( viewMenu );
625 connect( showlist_action, SIGNAL( activated() ), 627 connect( showlist_action, SIGNAL( activated() ),
626 mView->viewManager(), SLOT( showListView() ) ); 628 mView->viewManager(), SLOT( showListView() ) );
627 629
628 630
629 icon = loadPixmap( pathString + "day" ); 631 icon = loadPixmap( pathString + "day" );
630 configureToolBarMenu->insertItem(icon, i18n("Day View"), 40 ); 632 configureToolBarMenu->insertItem(icon, i18n("Day View"), 40 );
631 QAction* day1_action = new QAction( i18n("Day View"), icon, i18n("Day View"), 0, this ); 633 QAction* day1_action = new QAction( i18n("Day View"), icon, i18n("Day View"), 0, this );
632 day1_action->addTo( viewMenu ); 634 day1_action->addTo( viewMenu );
633 // action->addTo( toolBar ); 635 // action->addTo( toolBar );
634 connect( day1_action, SIGNAL( activated() ), 636 connect( day1_action, SIGNAL( activated() ),
635 mView->viewManager(), SLOT( showDayView() ) ); 637 mView->viewManager(), SLOT( showDayView() ) );
636 638
637 icon = loadPixmap( pathString + "workweek" ); 639 icon = loadPixmap( pathString + "workweek" );
638 configureToolBarMenu->insertItem(icon, i18n("Work Week"), 50 ); 640 configureToolBarMenu->insertItem(icon, i18n("Work Week"), 50 );
639 QAction* day5_action = new QAction( i18n("Work Week"), icon, i18n("Work Week"), 0, this ); 641 QAction* day5_action = new QAction( i18n("Work Week"), icon, i18n("Work Week"), 0, this );
640 day5_action->addTo( viewMenu ); 642 day5_action->addTo( viewMenu );
641 connect( day5_action, SIGNAL( activated() ), 643 connect( day5_action, SIGNAL( activated() ),
642 mView->viewManager(), SLOT( showWorkWeekView() ) ); 644 mView->viewManager(), SLOT( showWorkWeekView() ) );
643 645
644 icon = loadPixmap( pathString + "week" ); 646 icon = loadPixmap( pathString + "week" );
645 configureToolBarMenu->insertItem(icon, i18n("Week"), 60 ); 647 configureToolBarMenu->insertItem(icon, i18n("Week"), 60 );
646 QAction* day7_action = new QAction( i18n("Week"), icon, i18n("Week"), 0, this ); 648 QAction* day7_action = new QAction( i18n("Week"), icon, i18n("Week"), 0, this );
647 day7_action->addTo( viewMenu ); 649 day7_action->addTo( viewMenu );
648 connect( day7_action, SIGNAL( activated() ), 650 connect( day7_action, SIGNAL( activated() ),
649 mView->viewManager(), SLOT( showWeekView() ) ); 651 mView->viewManager(), SLOT( showWeekView() ) );
650 652
651 icon = loadPixmap( pathString + "month" ); 653 icon = loadPixmap( pathString + "month" );
652 configureToolBarMenu->insertItem(icon, i18n("Month"), 70 ); 654 configureToolBarMenu->insertItem(icon, i18n("Month"), 70 );
653 QAction* month_action = new QAction( i18n("Month"), icon, i18n("Month"), 0, this ); 655 QAction* month_action = new QAction( i18n("Month"), icon, i18n("Month"), 0, this );
654 month_action->addTo( viewMenu ); 656 month_action->addTo( viewMenu );
655 connect( month_action, SIGNAL( activated() ), 657 connect( month_action, SIGNAL( activated() ),
656 mView->viewManager(), SLOT( showMonthView() ) ); 658 mView->viewManager(), SLOT( showMonthView() ) );
657 659
658 icon = loadPixmap( pathString + "todo" ); 660 icon = loadPixmap( pathString + "todo" );
659 configureToolBarMenu->insertItem(icon, i18n("Todo View"), 80 ); 661 configureToolBarMenu->insertItem(icon, i18n("Todo View"), 80 );
660 QAction* todoview_action = new QAction( i18n("Todo View"), icon, i18n("Todo View"), 0, this ); 662 QAction* todoview_action = new QAction( i18n("Todo View"), icon, i18n("Todo View"), 0, this );
661 todoview_action->addTo( viewMenu ); 663 todoview_action->addTo( viewMenu );
662 connect( todoview_action, SIGNAL( activated() ), 664 connect( todoview_action, SIGNAL( activated() ),
663 mView->viewManager(), SLOT( showTodoView() ) ); 665 mView->viewManager(), SLOT( showTodoView() ) );
664 666
665 icon = loadPixmap( pathString + "journal" ); 667 icon = loadPixmap( pathString + "journal" );
666 configureToolBarMenu->insertItem(icon, i18n("Journal"), 90 ); 668 configureToolBarMenu->insertItem(icon, i18n("Journal"), 90 );
667 QAction* viewjournal_action = new QAction( i18n("Journal"), icon, i18n("Journal"), 0, this ); 669 QAction* viewjournal_action = new QAction( i18n("Journal"), icon, i18n("Journal"), 0, this );
668 viewjournal_action->addTo( viewMenu ); 670 viewjournal_action->addTo( viewMenu );
669 connect( viewjournal_action, SIGNAL( activated() ), 671 connect( viewjournal_action, SIGNAL( activated() ),
670 mView->viewManager(), SLOT( showJournalView() ) ); 672 mView->viewManager(), SLOT( showJournalView() ) );
671 673
672 icon = loadPixmap( pathString + "xdays" ); 674 icon = loadPixmap( pathString + "xdays" );
673 configureToolBarMenu->insertItem(icon, i18n("Next days"), 100,4 ); 675 configureToolBarMenu->insertItem(icon, i18n("Next days"), 100,4 );
674 QAction* xdays_action = new QAction( i18n("Next days"), icon, i18n("Next days"), 0, this ); 676 QAction* xdays_action = new QAction( i18n("Next days"), icon, i18n("Next days"), 0, this );
675 xdays_action->addTo( viewMenu ); 677 xdays_action->addTo( viewMenu );
676 connect( xdays_action, SIGNAL( activated() ), 678 connect( xdays_action, SIGNAL( activated() ),
677 mView->viewManager(), SLOT( showNextXView() ) ); 679 mView->viewManager(), SLOT( showNextXView() ) );
678 680
679 icon = loadPixmap( pathString + "whatsnext" ); 681 icon = loadPixmap( pathString + "whatsnext" );
680 configureToolBarMenu->insertItem(icon, i18n("What's Next"), 110, 4 ); 682 configureToolBarMenu->insertItem(icon, i18n("What's Next"), 110, 4 );
681 QAction* whatsnext_action = new QAction( i18n("What's Next"), icon, i18n("What's Next"), 0, this ); 683 QAction* whatsnext_action = new QAction( i18n("What's Next"), icon, i18n("What's Next"), 0, this );
682 whatsnext_action->addTo( viewMenu ); 684 whatsnext_action->addTo( viewMenu );
683 connect( whatsnext_action, SIGNAL( activated() ), 685 connect( whatsnext_action, SIGNAL( activated() ),
684 mView->viewManager(), SLOT( showWhatsNextView() ) ); 686 mView->viewManager(), SLOT( showWhatsNextView() ) );
685 687
686#if 0 688#if 0
687 action = new QAction( "view_timespan", "Time Span", 0, this ); 689 action = new QAction( "view_timespan", "Time Span", 0, this );
688 action->addTo( viewMenu ); 690 action->addTo( viewMenu );
689 connect( action, SIGNAL( activated() ), 691 connect( action, SIGNAL( activated() ),
690 mView->viewManager(), SLOT( showTimeSpanView() ) ); 692 mView->viewManager(), SLOT( showTimeSpanView() ) );
691#endif 693#endif
692 694
693 mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0, 695 mNewSubTodoAction = new QAction( "new_subtodo", i18n("New Sub-Todo..."), 0,
694 this ); 696 this );
695 mNewSubTodoAction->addTo( actionMenu ); 697 mNewSubTodoAction->addTo( actionMenu );
696 connect( mNewSubTodoAction, SIGNAL( activated() ), 698 connect( mNewSubTodoAction, SIGNAL( activated() ),
697 mView, SLOT( newSubTodo() ) ); 699 mView, SLOT( newSubTodo() ) );
698 700
699 actionMenu->insertSeparator(); 701 actionMenu->insertSeparator();
700 702
701 mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this ); 703 mShowAction = new QAction( "show_incidence", i18n("Show..."), 0, this );
702 mShowAction->addTo( actionMenu ); 704 mShowAction->addTo( actionMenu );
703 connect( mShowAction, SIGNAL( activated() ), 705 connect( mShowAction, SIGNAL( activated() ),
704 mView, SLOT( showIncidence() ) ); 706 mView, SLOT( showIncidence() ) );
705 707
706 mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this ); 708 mEditAction = new QAction( "edit_incidence", i18n("Edit..."), 0, this );
707 mEditAction->addTo( actionMenu ); 709 mEditAction->addTo( actionMenu );
708 connect( mEditAction, SIGNAL( activated() ), 710 connect( mEditAction, SIGNAL( activated() ),
709 mView, SLOT( editIncidence() ) ); 711 mView, SLOT( editIncidence() ) );
710 712
711 mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this ); 713 mDeleteAction = new QAction( "delete_incidence", i18n("Delete..."), 0, this );
712 mDeleteAction->addTo( actionMenu ); 714 mDeleteAction->addTo( actionMenu );
713 connect( mDeleteAction, SIGNAL( activated() ), 715 connect( mDeleteAction, SIGNAL( activated() ),
714 mView, SLOT( deleteIncidence() ) ); 716 mView, SLOT( deleteIncidence() ) );
715 717
716 718
717 mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this ); 719 mCloneAction = new QAction( "clone_incidence", i18n("Clone..."), 0, this );
718 mCloneAction->addTo( actionMenu ); 720 mCloneAction->addTo( actionMenu );
719 connect( mCloneAction, SIGNAL( activated() ), 721 connect( mCloneAction, SIGNAL( activated() ),
720 mView, SLOT( cloneIncidence() ) ); 722 mView, SLOT( cloneIncidence() ) );
721 mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this ); 723 mMoveAction = new QAction( "Move_incidence", i18n("Move..."), 0, this );
722 mMoveAction->addTo( actionMenu ); 724 mMoveAction->addTo( actionMenu );
723 connect( mMoveAction, SIGNAL( activated() ), 725 connect( mMoveAction, SIGNAL( activated() ),
724 mView, SLOT( moveIncidence() ) ); 726 mView, SLOT( moveIncidence() ) );
725 mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this ); 727 mBeamAction = new QAction( "Beam_incidence", i18n("Beam..."), 0, this );
726 mBeamAction->addTo( actionMenu ); 728 mBeamAction->addTo( actionMenu );
727 connect( mBeamAction, SIGNAL( activated() ), 729 connect( mBeamAction, SIGNAL( activated() ),
728 mView, SLOT( beamIncidence() ) ); 730 mView, SLOT( beamIncidence() ) );
729 mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this ); 731 mCancelAction = new QAction( "Cancel_incidence", i18n("Toggle Cancel"), 0, this );
730 mCancelAction->addTo( actionMenu ); 732 mCancelAction->addTo( actionMenu );
731 connect( mCancelAction, SIGNAL( activated() ), 733 connect( mCancelAction, SIGNAL( activated() ),
732 mView, SLOT( toggleCancelIncidence() ) ); 734 mView, SLOT( toggleCancelIncidence() ) );
733 735
734 actionMenu->insertSeparator(); 736 actionMenu->insertSeparator();
735 737
736 action = new QAction( "purge_completed", i18n("Purge Completed"), 0, 738 action = new QAction( "purge_completed", i18n("Purge Completed"), 0,
737 this ); 739 this );
738 action->addTo( actionMenu ); 740 action->addTo( actionMenu );
739 connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) ); 741 connect( action, SIGNAL( activated() ), mView, SLOT( purgeCompleted() ) );
740 742
741 icon = loadPixmap( pathString + "search" ); 743 icon = loadPixmap( pathString + "search" );
742 QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this ); 744 QAction* search_action = new QAction( i18n("Search"), icon, i18n("Search..."), 0, this );
743 configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 4); 745 configureToolBarMenu->insertItem(icon, i18n("Search"), 120 , 4);
744 search_action->addTo( actionMenu ); 746 search_action->addTo( actionMenu );
745 connect( search_action, SIGNAL( activated() ), 747 connect( search_action, SIGNAL( activated() ),
746 mView->dialogManager(), SLOT( showSearchDialog() ) ); 748 mView->dialogManager(), SLOT( showSearchDialog() ) );
747 749
748 icon = loadPixmap( pathString + "today" ); 750 icon = loadPixmap( pathString + "today" );
749 configureToolBarMenu->insertItem(icon, i18n("Go to Today"), 130); 751 configureToolBarMenu->insertItem(icon, i18n("Go to Today"), 130);
750 QAction* today_action = new QAction( i18n("Go to Today"), icon, i18n("Go to Today"), 0, this ); 752 QAction* today_action = new QAction( i18n("Go to Today"), icon, i18n("Go to Today"), 0, this );
751 today_action->addTo( actionMenu ); 753 today_action->addTo( actionMenu );
752 connect( today_action, SIGNAL( activated() ), 754 connect( today_action, SIGNAL( activated() ),
753 mView, SLOT( goToday() ) ); 755 mView, SLOT( goToday() ) );
754 756
755 if ( KOPrefs::instance()->mShowFullMenu ) { 757 if ( KOPrefs::instance()->mShowFullMenu ) {
756 actionMenu->insertSeparator(); 758 actionMenu->insertSeparator();
757 actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu ); 759 actionMenu->insertItem( i18n("Configure Toolbar"),configureToolBarMenu );
758 760
759 } 761 }
760 // actionMenu->insertSeparator(); 762 // actionMenu->insertSeparator();
761 action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0, 763 action = new QAction( "import_qtopia", i18n("Import (*.ics/*.vcs) file"), 0,
762 this ); 764 this );
763 action->addTo( importMenu ); 765 action->addTo( importMenu );
764 connect( action, SIGNAL( activated() ), SLOT( importIcal() ) ); 766 connect( action, SIGNAL( activated() ), SLOT( importIcal() ) );
765 action = new QAction( "import_quick", i18n("Import last file"), 0, 767 action = new QAction( "import_quick", i18n("Import last file"), 0,
766 this ); 768 this );
767 action->addTo( importMenu ); 769 action->addTo( importMenu );
768 connect( action, SIGNAL( activated() ), SLOT( quickImportIcal() ) ); 770 connect( action, SIGNAL( activated() ), SLOT( quickImportIcal() ) );
769 importMenu->insertSeparator(); 771 importMenu->insertSeparator();
770 action = new QAction( "import_bday", i18n("Import Birthdays (KA/Pi)"), 0, 772 action = new QAction( "import_bday", i18n("Import Birthdays (KA/Pi)"), 0,
771 this ); 773 this );
772 action->addTo( importMenu ); 774 action->addTo( importMenu );
773 connect( action, SIGNAL( activated() ), SLOT( importBday() ) ); 775 connect( action, SIGNAL( activated() ), SLOT( importBday() ) );
774#ifndef DESKTOP_VERSION 776#ifndef DESKTOP_VERSION
775 importMenu->insertSeparator(); 777 importMenu->insertSeparator();
776 action = new QAction( "import_qtopia", i18n("Import Opie/Qtopia Cal."), 0, 778 action = new QAction( "import_qtopia", i18n("Import Opie/Qtopia Cal."), 0,
777 this ); 779 this );
778 action->addTo( importMenu ); 780 action->addTo( importMenu );
779 connect( action, SIGNAL( activated() ), SLOT( importQtopia() ) ); 781 connect( action, SIGNAL( activated() ), SLOT( importQtopia() ) );
780#else 782#else
781#ifdef _WIN32_ 783#ifdef _OL_IMPORT_
782 importMenu->insertSeparator(); 784 importMenu->insertSeparator();
783 action = new QAction( "import_ol", i18n("Import from OL"), 0, 785 action = new QAction( "import_ol", i18n("Import from OL"), 0,
784 this ); 786 this );
785 action->addTo( importMenu ); 787 action->addTo( importMenu );
786 connect( action, SIGNAL( activated() ), SLOT( importOL() ) ); 788 connect( action, SIGNAL( activated() ), SLOT( importOL() ) );
787#endif 789#endif
788#endif 790#endif
789 791
790 importMenu->insertSeparator(); 792 importMenu->insertSeparator();
791 action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0, 793 action = new QAction( "load_cal", i18n("Load Calendar Backup"), 0,
792 this ); 794 this );
793 action->addTo( importMenu ); 795 action->addTo( importMenu );
794 connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) ); 796 connect( action, SIGNAL( activated() ), SLOT( loadCalendar() ) );
795 797
796 action = new QAction( "save_cal", i18n("Save Calendar Backup"), 0, 798 action = new QAction( "save_cal", i18n("Save Calendar Backup"), 0,
797 this ); 799 this );
798 action->addTo( importMenu ); 800 action->addTo( importMenu );
799 connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); 801 connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) );
800 802
801 importMenu->insertSeparator(); 803 importMenu->insertSeparator();
802 action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0, 804 action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0,
803 this ); 805 this );
804 action->addTo( importMenu ); connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) ); 806 action->addTo( importMenu ); connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) );
805 807
806 808
807 //LR 809 //LR
808 QPopupMenu *ex2phone = new QPopupMenu( this ); 810 QPopupMenu *ex2phone = new QPopupMenu( this );
809 ex2phone->insertItem(i18n("Complete calendar..."), 1 ); 811 ex2phone->insertItem(i18n("Complete calendar..."), 1 );
810 ex2phone->insertItem(i18n("Filtered calendar..."), 2 ); 812 ex2phone->insertItem(i18n("Filtered calendar..."), 2 );
811 connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) ); 813 connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) );
812 importMenu->insertItem( i18n("Export to phone"), ex2phone ); 814 importMenu->insertItem( i18n("Export to phone"), ex2phone );
813 815
814 importMenu->insertSeparator(); 816 importMenu->insertSeparator();
815 action = new QAction( "manage cat", i18n("Manage new categories..."), 0, 817 action = new QAction( "manage cat", i18n("Manage new categories..."), 0,
816 this ); 818 this );
817 action->addTo( importMenu ); 819 action->addTo( importMenu );
818 connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); 820 connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) );
819#ifndef DESKTOP_VERSION 821#ifndef DESKTOP_VERSION
820 importMenu->insertSeparator(); 822 importMenu->insertSeparator();
821 brAction = new QAction( "beam toggle", i18n("Beam receive enabled"), 0, 823 brAction = new QAction( "beam toggle", i18n("Beam receive enabled"), 0,
822 this ); 824 this );
823 brAction->addTo( importMenu ); 825 brAction->addTo( importMenu );
824 brAction->setToggleAction (true ) ; 826 brAction->setToggleAction (true ) ;
825 connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) ); 827 connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) );
826 828
827 action = new QAction( "beam all", i18n("Beam complete calendar..."), 0, 829 action = new QAction( "beam all", i18n("Beam complete calendar..."), 0,
828 this ); 830 this );
829 action->addTo( importMenu ); 831 action->addTo( importMenu );
830 connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) ); 832 connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) );
831 833
832 action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0, 834 action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0,
833 this ); 835 this );
834 action->addTo( importMenu ); 836 action->addTo( importMenu );
835 connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) ); 837 connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) );
836#else 838#else
837 importMenu->insertSeparator(); 839 importMenu->insertSeparator();
838 icon = loadPixmap( pathString + "print" ); 840 icon = loadPixmap( pathString + "print" );
839 action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this ); 841 action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this );
840 action->addTo( importMenu ); 842 action->addTo( importMenu );
841 connect( action, SIGNAL( activated() ), 843 connect( action, SIGNAL( activated() ),
842 this, SLOT( printCal() ) ); 844 this, SLOT( printCal() ) );
843 845
844 icon = loadPixmap( pathString + "print" ); 846 icon = loadPixmap( pathString + "print" );
845 action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this ); 847 action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this );
846 action->addTo( importMenu ); 848 action->addTo( importMenu );
847 connect( action, SIGNAL( activated() ), 849 connect( action, SIGNAL( activated() ),
848 this, SLOT( printSel() ) ); 850 this, SLOT( printSel() ) );
849 action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this ); 851 action = new QAction( i18n("Print What's Next View..."),icon,i18n("Print What's Next View..."), 0, this );
850 action->addTo( importMenu ); 852 action->addTo( importMenu );
851 connect( action, SIGNAL( activated() ), 853 connect( action, SIGNAL( activated() ),
852 mView->viewManager(), SIGNAL( printWNV() ) ); 854 mView->viewManager(), SIGNAL( printWNV() ) );
853#endif 855#endif
854 importMenu->insertSeparator(); 856 importMenu->insertSeparator();
855 action = new QAction( "beam all", i18n("Save"), 0, 857 action = new QAction( "beam all", i18n("Save"), 0,
856 this ); 858 this );
857 action->addTo( importMenu ); 859 action->addTo( importMenu );
858 connect( action, SIGNAL( activated() ), this, SLOT( save() ) ); 860 connect( action, SIGNAL( activated() ), this, SLOT( save() ) );
859 action = new QAction( "beam all", i18n("Exit (+save)"), 0, 861 action = new QAction( "beam all", i18n("Exit (+save)"), 0,
860 this ); 862 this );
861 action->addTo( importMenu ); 863 action->addTo( importMenu );
862 connect( action, SIGNAL( activated() ), this, SLOT( close() ) ); 864 connect( action, SIGNAL( activated() ), this, SLOT( close() ) );
863 865
864 //menuBar->insertItem( "Configure",configureMenu ); 866 //menuBar->insertItem( "Configure",configureMenu );
865 //configureMenu->insertItem( "Toolbar",configureToolBarMenu ); 867 //configureMenu->insertItem( "Toolbar",configureToolBarMenu );
866 icon = loadPixmap( "korganizer/korganizer" ); 868 icon = loadPixmap( "korganizer/korganizer" );
867 869
868 action = new QAction( "Whats New", i18n("What's new?"), 0,this ); 870 action = new QAction( "Whats New", i18n("What's new?"), 0,this );
869 action->addTo( helpMenu ); 871 action->addTo( helpMenu );
870 connect( action, SIGNAL( activated() ), 872 connect( action, SIGNAL( activated() ),
871 SLOT( whatsNew() ) ); 873 SLOT( whatsNew() ) );
872 action = new QAction( "featureHowto", i18n("Features + hints..."), 0,this ); 874 action = new QAction( "featureHowto", i18n("Features + hints..."), 0,this );
873 action->addTo( helpMenu ); 875 action->addTo( helpMenu );
874 connect( action, SIGNAL( activated() ), 876 connect( action, SIGNAL( activated() ),
875 SLOT( features() ) ); 877 SLOT( features() ) );
876 action = new QAction( "Keys + Colors", i18n("Keys + Colors..."), 0, this ); 878 action = new QAction( "Keys + Colors", i18n("Keys + Colors..."), 0, this );
877 action->addTo( helpMenu ); 879 action->addTo( helpMenu );
878 connect( action, SIGNAL( activated() ), 880 connect( action, SIGNAL( activated() ),
879 SLOT( keyBindings() ) ); 881 SLOT( keyBindings() ) );
880 action = new QAction( "Sync Howto", i18n("Sync HowTo..."), 0,this ); 882 action = new QAction( "Sync Howto", i18n("Sync HowTo..."), 0,this );
881 action->addTo( helpMenu ); 883 action->addTo( helpMenu );
882 connect( action, SIGNAL( activated() ), 884 connect( action, SIGNAL( activated() ),
883 SLOT( synchowto() ) ); 885 SLOT( synchowto() ) );
884 action = new QAction( "KDE Sync Howto", i18n("KDE Sync HowTo..."), 0,this ); 886 action = new QAction( "KDE Sync Howto", i18n("KDE Sync HowTo..."), 0,this );
885 action->addTo( helpMenu ); 887 action->addTo( helpMenu );
886 connect( action, SIGNAL( activated() ), 888 connect( action, SIGNAL( activated() ),
887 SLOT( kdesynchowto() ) ); 889 SLOT( kdesynchowto() ) );
888 action = new QAction( "Multi Sync Howto", i18n("Multi Sync HowTo..."), 0,this ); 890 action = new QAction( "Multi Sync Howto", i18n("Multi Sync HowTo..."), 0,this );
889 action->addTo( helpMenu ); 891 action->addTo( helpMenu );
890 connect( action, SIGNAL( activated() ), 892 connect( action, SIGNAL( activated() ),
891 SLOT( multisynchowto() ) ); 893 SLOT( multisynchowto() ) );
892 action = new QAction( "Auto saving", i18n("Auto saving..."), 0, this ); 894 action = new QAction( "Auto saving", i18n("Auto saving..."), 0, this );
893 action->addTo( helpMenu ); 895 action->addTo( helpMenu );
894 connect( action, SIGNAL( activated() ), 896 connect( action, SIGNAL( activated() ),
895 SLOT( aboutAutoSaving() ) ); 897 SLOT( aboutAutoSaving() ) );
896 action = new QAction( "Problemd", i18n("Known Problems..."), 0,this ); 898 action = new QAction( "Problemd", i18n("Known Problems..."), 0,this );
897 action->addTo( helpMenu ); 899 action->addTo( helpMenu );
898 connect( action, SIGNAL( activated() ), 900 connect( action, SIGNAL( activated() ),
899 SLOT( aboutKnownBugs() ) ); 901 SLOT( aboutKnownBugs() ) );
900 action = new QAction( "Translate Howto", i18n("User translation..."), 0,this ); 902 action = new QAction( "Translate Howto", i18n("User translation..."), 0,this );
901 action->addTo( helpMenu ); 903 action->addTo( helpMenu );
902 connect( action, SIGNAL( activated() ), 904 connect( action, SIGNAL( activated() ),
903 SLOT( usertrans() ) ); 905 SLOT( usertrans() ) );
904 action = new QAction( "Frequently asked questions", i18n("FAQ..."), 0,this ); 906 action = new QAction( "Frequently asked questions", i18n("FAQ..."), 0,this );
905 action->addTo( helpMenu ); 907 action->addTo( helpMenu );
906 connect( action, SIGNAL( activated() ), 908 connect( action, SIGNAL( activated() ),
907 SLOT( faq() ) ); 909 SLOT( faq() ) );
908 action = new QAction( "licence", i18n("Licence..."), 0, this ); 910 action = new QAction( "licence", i18n("Licence..."), 0, this );
909 action->addTo( helpMenu ); 911 action->addTo( helpMenu );
910 connect( action, SIGNAL( activated() ), 912 connect( action, SIGNAL( activated() ),
911 SLOT( licence() ) ); 913 SLOT( licence() ) );
912 action = new QAction( "about", i18n("About..."), 0, this ); 914 action = new QAction( "about", i18n("About..."), 0, this );
913 action->addTo( helpMenu ); 915 action->addTo( helpMenu );
914 connect( action, SIGNAL( activated() ), 916 connect( action, SIGNAL( activated() ),
915 SLOT( about() ) ); 917 SLOT( about() ) );
916 //menuBar->insertSeparator(); 918 //menuBar->insertSeparator();
917 919
918 // ****************************************************** 920 // ******************************************************
919 // menubar icons 921 // menubar icons
920 922
921 923
922 iconToolBar->setHorizontalStretchable (true ); 924 iconToolBar->setHorizontalStretchable (true );
923 //menuBar->insertItem( iconToolBar ); 925 //menuBar->insertItem( iconToolBar );
924 //xdays_action 926 //xdays_action
925 if (p-> mShowIconNewEvent) 927 if (p-> mShowIconNewEvent)
926 ne_action->addTo( iconToolBar ); 928 ne_action->addTo( iconToolBar );
927 if (p->mShowIconNewTodo ) 929 if (p->mShowIconNewTodo )
928 nt_action->addTo( iconToolBar ); 930 nt_action->addTo( iconToolBar );
929 if (p-> mShowIconSearch) 931 if (p-> mShowIconSearch)
930 search_action->addTo( iconToolBar ); 932 search_action->addTo( iconToolBar );
931 if (p-> mShowIconNext) 933 if (p-> mShowIconNext)
932 whatsnext_action->addTo( iconToolBar ); 934 whatsnext_action->addTo( iconToolBar );
933 if (p-> mShowIconNextDays) 935 if (p-> mShowIconNextDays)
934 xdays_action->addTo( iconToolBar ); 936 xdays_action->addTo( iconToolBar );
935 if (p-> mShowIconList) 937 if (p-> mShowIconList)
936 showlist_action->addTo( iconToolBar ); 938 showlist_action->addTo( iconToolBar );
937 if (p-> mShowIconDay1) 939 if (p-> mShowIconDay1)
938 day1_action->addTo( iconToolBar ); 940 day1_action->addTo( iconToolBar );
939 if (p-> mShowIconDay5) 941 if (p-> mShowIconDay5)
940 day5_action->addTo( iconToolBar ); 942 day5_action->addTo( iconToolBar );
941 if (p-> mShowIconDay7) 943 if (p-> mShowIconDay7)
942 day7_action->addTo( iconToolBar ); 944 day7_action->addTo( iconToolBar );
943 if (p-> mShowIconMonth) 945 if (p-> mShowIconMonth)
944 month_action->addTo( iconToolBar ); 946 month_action->addTo( iconToolBar );
945 if (p-> mShowIconTodoview) 947 if (p-> mShowIconTodoview)
946 todoview_action->addTo( iconToolBar ); 948 todoview_action->addTo( iconToolBar );
947 if (p-> mShowIconJournal) 949 if (p-> mShowIconJournal)
948 viewjournal_action->addTo( iconToolBar ); 950 viewjournal_action->addTo( iconToolBar );
949 icon = loadPixmap( pathString + "2leftarrowB" ); 951 icon = loadPixmap( pathString + "2leftarrowB" );
950 configureToolBarMenu->insertItem(icon, i18n("Prev. month"), 200, 14); 952 configureToolBarMenu->insertItem(icon, i18n("Prev. month"), 200, 14);
951 if (p-> mShowIconBackFast) { 953 if (p-> mShowIconBackFast) {
952 action = new QAction( i18n("Prev. month"), icon, i18n("Prev. month"),0 , this ); 954 action = new QAction( i18n("Prev. month"), icon, i18n("Prev. month"),0 , this );
953 connect( action, SIGNAL( activated() ), 955 connect( action, SIGNAL( activated() ),
954 mView, SLOT( goPreviousMonth() ) ); 956 mView, SLOT( goPreviousMonth() ) );
955 action->addTo( iconToolBar ); 957 action->addTo( iconToolBar );
956 } 958 }
957 icon = loadPixmap( pathString + "1leftarrowB" ); 959 icon = loadPixmap( pathString + "1leftarrowB" );
958 configureToolBarMenu->insertItem(icon, i18n("Go backward"), 210,15); 960 configureToolBarMenu->insertItem(icon, i18n("Go backward"), 210,15);
959 if (p-> mShowIconBack) { 961 if (p-> mShowIconBack) {
960 action = new QAction( i18n("Go backward"), icon, i18n("Go backward"),0 , this ); 962 action = new QAction( i18n("Go backward"), icon, i18n("Go backward"),0 , this );
961 connect( action, SIGNAL( activated() ), 963 connect( action, SIGNAL( activated() ),
962 mView, SLOT( goPrevious() ) ); 964 mView, SLOT( goPrevious() ) );
963 action->addTo( iconToolBar ); 965 action->addTo( iconToolBar );
964 } 966 }
965 if (p-> mShowIconToday) 967 if (p-> mShowIconToday)
966 today_action->addTo( iconToolBar ); 968 today_action->addTo( iconToolBar );
967 icon = loadPixmap( pathString + "1rightarrowB" ); 969 icon = loadPixmap( pathString + "1rightarrowB" );
968 configureToolBarMenu->insertItem(icon, i18n("Go forward"), 220); 970 configureToolBarMenu->insertItem(icon, i18n("Go forward"), 220);
969 if (p-> mShowIconForward) { 971 if (p-> mShowIconForward) {
970 action = new QAction( i18n("Go forward"), icon, i18n("Go forward"),0 , this ); 972 action = new QAction( i18n("Go forward"), icon, i18n("Go forward"),0 , this );
971 connect( action, SIGNAL( activated() ), 973 connect( action, SIGNAL( activated() ),
972 mView, SLOT( goNext() ) ); 974 mView, SLOT( goNext() ) );
973 action->addTo( iconToolBar ); 975 action->addTo( iconToolBar );
@@ -1178,386 +1180,386 @@ void MainWindow::whatsNew()
1178 KApplication::showFile( "KDE-Pim/Pi Version Info", "kdepim/WhatsNew.txt" ); 1180 KApplication::showFile( "KDE-Pim/Pi Version Info", "kdepim/WhatsNew.txt" );
1179 1181
1180} 1182}
1181void MainWindow::licence() 1183void MainWindow::licence()
1182{ 1184{
1183 KApplication::showLicence(); 1185 KApplication::showLicence();
1184 1186
1185} 1187}
1186void MainWindow::about() 1188void MainWindow::about()
1187{ 1189{
1188 QString version; 1190 QString version;
1189#include <../version> 1191#include <../version>
1190 QMessageBox::about( this, i18n("About KOrganizer/Pi"), 1192 QMessageBox::about( this, i18n("About KOrganizer/Pi"),
1191 i18n("KOrganizer/Platform-independent\n") + 1193 i18n("KOrganizer/Platform-independent\n") +
1192 "(KO/Pi) " + version + " - " + 1194 "(KO/Pi) " + version + " - " +
1193 1195
1194#ifdef DESKTOP_VERSION 1196#ifdef DESKTOP_VERSION
1195 i18n("Desktop Edition\n") + 1197 i18n("Desktop Edition\n") +
1196#else 1198#else
1197 i18n("PDA-Edition\nfor: Zaurus 5x00 / 7x0 / 8x0\n") + 1199 i18n("PDA-Edition\nfor: Zaurus 5x00 / 7x0 / 8x0\n") +
1198#endif 1200#endif
1199 i18n("(c) 2004 Lutz Rogowski\nEmail:lutz@pi-sync.net\nKO/Pi is based on KOrganizer\n(c) 2002,2003 Cornelius Schumacher\nEmail: schumacher@kde.org\nKOrganizer/Pi is licensed\nunder the GPL.\nKO/Pi can be compiled for\nLinux, Zaurus-PDA and Windows\nwww.korganizer.org\nwww.pi-sync.net\n") ); 1201 i18n("(c) 2004 Lutz Rogowski\nEmail:lutz@pi-sync.net\nKO/Pi is based on KOrganizer\n(c) 2002,2003 Cornelius Schumacher\nEmail: schumacher@kde.org\nKOrganizer/Pi is licensed\nunder the GPL.\nKO/Pi can be compiled for\nLinux, Zaurus-PDA and Windows\nwww.korganizer.org\nwww.pi-sync.net\n") );
1200} 1202}
1201void MainWindow::keyBindings() 1203void MainWindow::keyBindings()
1202{ 1204{
1203 QString cap = i18n("KO/Pi Keys + Colors"); 1205 QString cap = i18n("KO/Pi Keys + Colors");
1204 QString text = i18n("<p><h2>KO/Pi key shortcuts:</h2></p>\n") + 1206 QString text = i18n("<p><h2>KO/Pi key shortcuts:</h2></p>\n") +
1205 i18n("<p><b>H</b>: This help dialog | <b>S</b>: Search dialog</p>\n")+ 1207 i18n("<p><b>H</b>: This help dialog | <b>S</b>: Search dialog</p>\n")+
1206 i18n("<p><b>I</b>: Show info for selected event/todo</p>\n") + 1208 i18n("<p><b>I</b>: Show info for selected event/todo</p>\n") +
1207 i18n("<p><b>Space</b>: Toggle fullscreen | <b>P</b>: Date picker</p>\n")+ 1209 i18n("<p><b>Space</b>: Toggle fullscreen | <b>P</b>: Date picker</p>\n")+
1208 i18n("<p><b>F</b>: Toggle filterview |<b>F+ctrl</b>: Edit filter </p>\n")+ 1210 i18n("<p><b>F</b>: Toggle filterview |<b>F+ctrl</b>: Edit filter </p>\n")+
1209 i18n("<p><b>O</b>: Filter On/Off | <b>J</b>: Journal view</p>\n")+ 1211 i18n("<p><b>O</b>: Filter On/Off | <b>J</b>: Journal view</p>\n")+
1210 i18n("<p><b>1-0</b> (+<b>ctrl</b>): Select filter 1-10 (11-20)</p>\n")+ 1212 i18n("<p><b>1-0</b> (+<b>ctrl</b>): Select filter 1-10 (11-20)</p>\n")+
1211 i18n("<p><b>N</b>: Next days view| <b>W</b>: What's next view\n ")+ 1213 i18n("<p><b>N</b>: Next days view| <b>W</b>: What's next view\n ")+
1212 i18n("<p><b>V</b>: Todo view | <b>L</b>: Event list view</p>\n")+ 1214 i18n("<p><b>V</b>: Todo view | <b>L</b>: Event list view</p>\n")+
1213 i18n("<p><b>Z,Y</b>: Work week view | <b>U</b>: Week view</p>\n")+ 1215 i18n("<p><b>Z,Y</b>: Work week view | <b>U</b>: Week view</p>\n")+
1214 i18n("<p><b>D</b>: One day view | <b>M</b>: Month view</p>\n")+ 1216 i18n("<p><b>D</b>: One day view | <b>M</b>: Month view</p>\n")+
1215 i18n("<p><b>E</b>: Edit selected item |<b> E+ctrl</b>: New Event</p>\n")+ 1217 i18n("<p><b>E</b>: Edit selected item |<b> E+ctrl</b>: New Event</p>\n")+
1216 i18n("<p><b>T</b>: Goto today | <b>T+ctrl</b>: New Todo</p>\n")+ 1218 i18n("<p><b>T</b>: Goto today | <b>T+ctrl</b>: New Todo</p>\n")+
1217 i18n("<p><b>S+ctrl</b>: Add sub-todo | <b>X</b>: Toggle datenavigator</p>\n")+ 1219 i18n("<p><b>S+ctrl</b>: Add sub-todo | <b>X</b>: Toggle datenavigator</p>\n")+
1218 i18n("<p><b>+,-</b> : Zoom in/out agenda | <b>A</b>: Toggle allday agenda height</p>\n")+ 1220 i18n("<p><b>+,-</b> : Zoom in/out agenda | <b>A</b>: Toggle allday agenda height</p>\n")+
1219 i18n("<p><b>C</b>: Show current time in agenda view</p>\n")+ 1221 i18n("<p><b>C</b>: Show current time in agenda view</p>\n")+
1220 i18n("<p><b>B</b>: Edit description (details) of selected item</p>\n")+ 1222 i18n("<p><b>B</b>: Edit description (details) of selected item</p>\n")+
1221 i18n("<p><b>right</b>: Next week | <b>right+ctrl</b>: Next month</p>\n")+ 1223 i18n("<p><b>right</b>: Next week | <b>right+ctrl</b>: Next month</p>\n")+
1222 i18n("<p><b>left</b>: Prev. week | <b>left+ctrl</b>: Prev. month</p>\n")+ 1224 i18n("<p><b>left</b>: Prev. week | <b>left+ctrl</b>: Prev. month</p>\n")+
1223 i18n("<p><b>del,backspace</b>: Delete selected item</p>\n")+ 1225 i18n("<p><b>del,backspace</b>: Delete selected item</p>\n")+
1224 i18n("<p><h3>In agenda view:</h3></p>\n") + 1226 i18n("<p><h3>In agenda view:</h3></p>\n") +
1225 i18n("<p><b>up/down</b>: Scroll agenda view</p>\n")+ 1227 i18n("<p><b>up/down</b>: Scroll agenda view</p>\n")+
1226 i18n("<p><b>ctrl+up/down</b>: Scroll small todo view</p>\n")+ 1228 i18n("<p><b>ctrl+up/down</b>: Scroll small todo view</p>\n")+
1227 i18n("<p><h3>In todo view:</h3></p>\n") + 1229 i18n("<p><h3>In todo view:</h3></p>\n") +
1228 i18n("<p><b>shift+U</b>: <b>U</b>nparent todo (make root todo)</p>\n")+ 1230 i18n("<p><b>shift+U</b>: <b>U</b>nparent todo (make root todo)</p>\n")+
1229 i18n("<p><b>shift+S</b>: Make <b>S</b>ubtodo (reparent todo)</p>\n")+ 1231 i18n("<p><b>shift+S</b>: Make <b>S</b>ubtodo (reparent todo)</p>\n")+
1230 i18n("<p><b>shift+P</b>: Make new <b>P</b>arent for todo selected with shift+S</p>\n")+ 1232 i18n("<p><b>shift+P</b>: Make new <b>P</b>arent for todo selected with shift+S</p>\n")+
1231 i18n("<p><b>Q</b>: Toggle quick todo line edit.</p>\n")+ 1233 i18n("<p><b>Q</b>: Toggle quick todo line edit.</p>\n")+
1232 i18n("<p><b>I</b>: Show info of current item+one step down.</p>\n")+ 1234 i18n("<p><b>I</b>: Show info of current item+one step down.</p>\n")+
1233 i18n("<p><b>return</b>: Mark item as completed+one step down.</p>\n")+ 1235 i18n("<p><b>return</b>: Mark item as completed+one step down.</p>\n")+
1234 i18n("<p><b>return+shift</b>: Mark item as not completed+one step down</p>\n")+ 1236 i18n("<p><b>return+shift</b>: Mark item as not completed+one step down</p>\n")+
1235 i18n("<p><h3>In list view:</h3></p>\n") + 1237 i18n("<p><h3>In list view:</h3></p>\n") +
1236 i18n("<p><b>I</b>: Show info of current item+one step down.</p>\n")+ 1238 i18n("<p><b>I</b>: Show info of current item+one step down.</p>\n")+
1237 i18n("<p><b>return</b>: Select item+one step down</p>\n")+ 1239 i18n("<p><b>return</b>: Select item+one step down</p>\n")+
1238 i18n("<p><b>return+shift</b>: Deselect item+one step down</p>\n")+ 1240 i18n("<p><b>return+shift</b>: Deselect item+one step down</p>\n")+
1239 i18n("<p><b>up/down</b>: Next/prev item</p>\n")+ 1241 i18n("<p><b>up/down</b>: Next/prev item</p>\n")+
1240 i18n("<p><b>ctrl+up/down</b>: Goto up/down by 20% of items</p>\n")+ 1242 i18n("<p><b>ctrl+up/down</b>: Goto up/down by 20% of items</p>\n")+
1241 i18n("<p><b>shift+up/down</b>: Goto first/last item</p>\n")+ 1243 i18n("<p><b>shift+up/down</b>: Goto first/last item</p>\n")+
1242 i18n("<p><h3>In event/todo viewer:</h3></p>\n") + 1244 i18n("<p><h3>In event/todo viewer:</h3></p>\n") +
1243 i18n("<p><b>I,C</b>: Close dialog.</p>\n")+ 1245 i18n("<p><b>I,C</b>: Close dialog.</p>\n")+
1244 i18n("<p><b>A</b>: Show agenda view.</p>\n")+ 1246 i18n("<p><b>A</b>: Show agenda view.</p>\n")+
1245 i18n("<p><b>E</b>: Edit item</p>\n") + 1247 i18n("<p><b>E</b>: Edit item</p>\n") +
1246 i18n("<p><h2>KO/Pi icon colors:</h2></p>\n") + 1248 i18n("<p><h2>KO/Pi icon colors:</h2></p>\n") +
1247 i18n("<p><b>(for square icons in agenda and month view)</b></p>\n") + 1249 i18n("<p><b>(for square icons in agenda and month view)</b></p>\n") +
1248 i18n("<p><b>Cross</b>: Item cancelled.([c] in Whats'Next view)</p>\n")+ 1250 i18n("<p><b>Cross</b>: Item cancelled.([c] in Whats'Next view)</p>\n")+
1249 i18n("<p><b>Red</b>: Alarm set.([a] in Whats'Next view)</p>\n")+ 1251 i18n("<p><b>Red</b>: Alarm set.([a] in Whats'Next view)</p>\n")+
1250 i18n("<p><b>Blue</b>: Recurrent event.([r] in Whats'Next view)</p>\n")+ 1252 i18n("<p><b>Blue</b>: Recurrent event.([r] in Whats'Next view)</p>\n")+
1251 i18n("<p><b>Dark green</b>: Information(description) available.([i] in WN view)</p>\n")+ 1253 i18n("<p><b>Dark green</b>: Information(description) available.([i] in WN view)</p>\n")+
1252 i18n("<p><b>Black</b>: Event/todo with attendees. You are the organizer!</p>\n")+ 1254 i18n("<p><b>Black</b>: Event/todo with attendees. You are the organizer!</p>\n")+
1253 i18n("<p><b>Dark yellow</b>: Event/todo with attendees.</p>\n") + 1255 i18n("<p><b>Dark yellow</b>: Event/todo with attendees.</p>\n") +
1254 i18n("<p><b>White</b>: Item readonly</p>\n"); 1256 i18n("<p><b>White</b>: Item readonly</p>\n");
1255 displayText( text, cap); 1257 displayText( text, cap);
1256} 1258}
1257void MainWindow::aboutAutoSaving() 1259void MainWindow::aboutAutoSaving()
1258{ 1260{
1259 QString text = i18n("After changing something, the data is\nautomatically saved to the file\n~/kdepim/apps/korganizer/mycalendar.ics\nafter (configurable) three minutes.\nFor safety reasons there is one autosaving\nafter 10 minutes (of idle time) again. The \ndata is saved automatically when closing KO/Pi\nYou can create a backup file \nwith: File - Save Calendar Backup\n"); 1261 QString text = i18n("After changing something, the data is\nautomatically saved to the file\n~/kdepim/apps/korganizer/mycalendar.ics\nafter (configurable) three minutes.\nFor safety reasons there is one autosaving\nafter 10 minutes (of idle time) again. The \ndata is saved automatically when closing KO/Pi\nYou can create a backup file \nwith: File - Save Calendar Backup\n");
1260 1262
1261 KApplication::showText( i18n("Auto Saving in KOrganizer/Pi"), text); 1263 KApplication::showText( i18n("Auto Saving in KOrganizer/Pi"), text);
1262 1264
1263} 1265}
1264void MainWindow::aboutKnownBugs() 1266void MainWindow::aboutKnownBugs()
1265{ 1267{
1266 QMessageBox* msg; 1268 QMessageBox* msg;
1267 msg = new QMessageBox( i18n("Known Problems in KOrganizer/Pi"), 1269 msg = new QMessageBox( i18n("Known Problems in KOrganizer/Pi"),
1268 i18n("1) Importing *.vcs or *.ics files from\nother applications may not work properly,\nif there are events with properties\nKO/Pi does not support.\n")+ 1270 i18n("1) Importing *.vcs or *.ics files from\nother applications may not work properly,\nif there are events with properties\nKO/Pi does not support.\n")+
1269 i18n("2) Audio alarm daemon\nfor Zaurus is available!\nas an additional small application\n")+ 1271 i18n("2) Audio alarm daemon\nfor Zaurus is available!\nas an additional small application\n")+
1270 i18n("\nPlease report unexpected behaviour to\nlutz@pi-sync.net\n") + 1272 i18n("\nPlease report unexpected behaviour to\nlutz@pi-sync.net\n") +
1271 i18n("\nor report them in the bugtracker on\n") + 1273 i18n("\nor report them in the bugtracker on\n") +
1272 i18n("\nhttp://sourceforge.net/projects/kdepimpi\n"), 1274 i18n("\nhttp://sourceforge.net/projects/kdepimpi\n"),
1273 QMessageBox::NoIcon, 1275 QMessageBox::NoIcon,
1274 QMessageBox::Ok, 1276 QMessageBox::Ok,
1275 QMessageBox::NoButton, 1277 QMessageBox::NoButton,
1276 QMessageBox::NoButton); 1278 QMessageBox::NoButton);
1277 msg->exec(); 1279 msg->exec();
1278 delete msg; 1280 delete msg;
1279 1281
1280} 1282}
1281 1283
1282QString MainWindow::defaultFileName() 1284QString MainWindow::defaultFileName()
1283{ 1285{
1284 return locateLocal( "data", "korganizer/mycalendar.ics" ); 1286 return locateLocal( "data", "korganizer/mycalendar.ics" );
1285} 1287}
1286QString MainWindow::syncFileName() 1288QString MainWindow::syncFileName()
1287{ 1289{
1288#ifdef DESKTOP_VERSION 1290#ifdef DESKTOP_VERSION
1289 return locateLocal( "tmp", "synccalendar.ics" ); 1291 return locateLocal( "tmp", "synccalendar.ics" );
1290#else 1292#else
1291 return QString( "/tmp/synccalendar.ics" ); 1293 return QString( "/tmp/synccalendar.ics" );
1292#endif 1294#endif
1293} 1295}
1294 1296
1295void MainWindow::processIncidenceSelection( Incidence *incidence ) 1297void MainWindow::processIncidenceSelection( Incidence *incidence )
1296{ 1298{
1297 if ( !incidence ) { 1299 if ( !incidence ) {
1298 enableIncidenceActions( false ); 1300 enableIncidenceActions( false );
1299 1301
1300 mNewSubTodoAction->setEnabled( false ); 1302 mNewSubTodoAction->setEnabled( false );
1301 setCaptionToDates(); 1303 setCaptionToDates();
1302 return; 1304 return;
1303 1305
1304 } 1306 }
1305 1307
1306 //KGlobal::locale()->formatDateTime(nextA, true); 1308 //KGlobal::locale()->formatDateTime(nextA, true);
1307 QString startString = ""; 1309 QString startString = "";
1308 if ( incidence->type() != "Todo" ) { 1310 if ( incidence->type() != "Todo" ) {
1309 if ( incidence->dtStart().date() < incidence->dtEnd().date() ) { 1311 if ( incidence->dtStart().date() < incidence->dtEnd().date() ) {
1310 if ( incidence->doesFloat() ) { 1312 if ( incidence->doesFloat() ) {
1311 startString += ": "+incidence->dtStartDateStr( true ); 1313 startString += ": "+incidence->dtStartDateStr( true );
1312 startString += " --- "+((Event*)incidence)->dtEndDateStr( true ); 1314 startString += " --- "+((Event*)incidence)->dtEndDateStr( true );
1313 1315
1314 } else { 1316 } else {
1315 startString = ": "+incidence->dtStartStr(true); 1317 startString = ": "+incidence->dtStartStr(true);
1316 startString += " --- "+((Event*)incidence)->dtEndStr(true); 1318 startString += " --- "+((Event*)incidence)->dtEndStr(true);
1317 1319
1318 } 1320 }
1319 1321
1320 } else { 1322 } else {
1321 if ( incidence->dtStart().time() != incidence->dtEnd().time() ) 1323 if ( incidence->dtStart().time() != incidence->dtEnd().time() )
1322 startString = ": "+KGlobal::locale()->formatTime(incidence->dtStart().time())+ 1324 startString = ": "+KGlobal::locale()->formatTime(incidence->dtStart().time())+
1323 "-"+KGlobal::locale()->formatTime(incidence->dtEnd().time()); 1325 "-"+KGlobal::locale()->formatTime(incidence->dtEnd().time());
1324 startString +=" "+KGlobal::locale()->formatDate( incidence->dtStart().date(), true); 1326 startString +=" "+KGlobal::locale()->formatDate( incidence->dtStart().date(), true);
1325 } 1327 }
1326 1328
1327 } 1329 }
1328 else 1330 else
1329 startString = i18n(": (Prio ") +QString::number( (( KCal::Todo*)incidence)->priority() ) +") "+QString::number( (( KCal::Todo*)incidence)->percentComplete() ) +i18n("\% completed"); 1331 startString = i18n(": (Prio ") +QString::number( (( KCal::Todo*)incidence)->priority() ) +") "+QString::number( (( KCal::Todo*)incidence)->percentComplete() ) +i18n("\% completed");
1330 if ( !incidence->location().isEmpty() ) 1332 if ( !incidence->location().isEmpty() )
1331 startString += " (" +incidence->location()+")"; 1333 startString += " (" +incidence->location()+")";
1332 setCaption( incidence->summary()+startString); 1334 setCaption( incidence->summary()+startString);
1333 1335
1334 enableIncidenceActions( true ); 1336 enableIncidenceActions( true );
1335 1337
1336 if ( incidence->type() == "Event" ) { 1338 if ( incidence->type() == "Event" ) {
1337 mShowAction->setText( i18n("Show Event...") ); 1339 mShowAction->setText( i18n("Show Event...") );
1338 mEditAction->setText( i18n("Edit Event...") ); 1340 mEditAction->setText( i18n("Edit Event...") );
1339 mDeleteAction->setText( i18n("Delete Event...") ); 1341 mDeleteAction->setText( i18n("Delete Event...") );
1340 1342
1341 mNewSubTodoAction->setEnabled( false ); 1343 mNewSubTodoAction->setEnabled( false );
1342 } else if ( incidence->type() == "Todo" ) { 1344 } else if ( incidence->type() == "Todo" ) {
1343 mShowAction->setText( i18n("Show Todo...") ); 1345 mShowAction->setText( i18n("Show Todo...") );
1344 mEditAction->setText( i18n("Edit Todo...") ); 1346 mEditAction->setText( i18n("Edit Todo...") );
1345 mDeleteAction->setText( i18n("Delete Todo...") ); 1347 mDeleteAction->setText( i18n("Delete Todo...") );
1346 1348
1347 mNewSubTodoAction->setEnabled( true ); 1349 mNewSubTodoAction->setEnabled( true );
1348 } else { 1350 } else {
1349 mShowAction->setText( i18n("Show...") ); 1351 mShowAction->setText( i18n("Show...") );
1350 mShowAction->setText( i18n("Edit...") ); 1352 mShowAction->setText( i18n("Edit...") );
1351 mShowAction->setText( i18n("Delete...") ); 1353 mShowAction->setText( i18n("Delete...") );
1352 1354
1353 mNewSubTodoAction->setEnabled( false ); 1355 mNewSubTodoAction->setEnabled( false );
1354 } 1356 }
1355} 1357}
1356 1358
1357void MainWindow::enableIncidenceActions( bool enabled ) 1359void MainWindow::enableIncidenceActions( bool enabled )
1358{ 1360{
1359 mShowAction->setEnabled( enabled ); 1361 mShowAction->setEnabled( enabled );
1360 mEditAction->setEnabled( enabled ); 1362 mEditAction->setEnabled( enabled );
1361 mDeleteAction->setEnabled( enabled ); 1363 mDeleteAction->setEnabled( enabled );
1362 1364
1363 mCloneAction->setEnabled( enabled ); 1365 mCloneAction->setEnabled( enabled );
1364 mMoveAction->setEnabled( enabled ); 1366 mMoveAction->setEnabled( enabled );
1365 mBeamAction->setEnabled( enabled ); 1367 mBeamAction->setEnabled( enabled );
1366 mCancelAction->setEnabled( enabled ); 1368 mCancelAction->setEnabled( enabled );
1367} 1369}
1368 1370
1369void MainWindow::importOL() 1371void MainWindow::importOL()
1370{ 1372{
1371#ifdef _WIN32_ 1373#ifdef _OL_IMPORT_
1372 KOImportOLdialog *id = new KOImportOLdialog("Import from OL - select folder!" , mView->calendar(),this ); 1374 KOImportOLdialog *id = new KOImportOLdialog("Import from OL - select folder!" , mView->calendar(),this );
1373 id->exec(); 1375 id->exec();
1374 delete id; 1376 delete id;
1375 mView->updateView(); 1377 mView->updateView();
1376#endif 1378#endif
1377} 1379}
1378void MainWindow::importBday() 1380void MainWindow::importBday()
1379{ 1381{
1380 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), 1382 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),
1381 i18n("When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n"), 1383 i18n("When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n"),
1382 i18n("Import!"), i18n("Cancel"), 0, 1384 i18n("Import!"), i18n("Cancel"), 0,
1383 0, 1 ); 1385 0, 1 );
1384 if ( result == 0 ) { 1386 if ( result == 0 ) {
1385 mView->importBday(); 1387 mView->importBday();
1386 1388
1387 } 1389 }
1388 1390
1389 1391
1390} 1392}
1391void MainWindow::importQtopia() 1393void MainWindow::importQtopia()
1392{ 1394{
1393#ifndef DESKTOP_VERSION 1395#ifndef DESKTOP_VERSION
1394 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), 1396 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),
1395 i18n("When importing a calendar twice\nduplicated events will be ignored!\nYou can create a backup file with\nFile - Save Calendar Backup\nto revert importing"), 1397 i18n("When importing a calendar twice\nduplicated events will be ignored!\nYou can create a backup file with\nFile - Save Calendar Backup\nto revert importing"),
1396 i18n("Import!"), i18n("Cancel"), 0, 1398 i18n("Import!"), i18n("Cancel"), 0,
1397 0, 1 ); 1399 0, 1 );
1398 if ( result == 0 ) { 1400 if ( result == 0 ) {
1399 QString datebook = Global::applicationFileName( "datebook", "datebook.xml"); 1401 QString datebook = Global::applicationFileName( "datebook", "datebook.xml");
1400 QString todolist = Global::applicationFileName( "todolist", "todolist.xml"); 1402 QString todolist = Global::applicationFileName( "todolist", "todolist.xml");
1401 QString categories = QString( getenv( "HOME" ) ) + "/Settings/Categories.xml"; 1403 QString categories = QString( getenv( "HOME" ) ) + "/Settings/Categories.xml";
1402 mView->importQtopia( categories, datebook, todolist ); 1404 mView->importQtopia( categories, datebook, todolist );
1403 } 1405 }
1404#else 1406#else
1405 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), 1407 int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"),
1406 i18n("Not supported \non desktop!\n"), 1408 i18n("Not supported \non desktop!\n"),
1407 i18n("Ok"), i18n("Cancel"), 0, 1409 i18n("Ok"), i18n("Cancel"), 0,
1408 0, 1 ); 1410 0, 1 );
1409 1411
1410#endif 1412#endif
1411} 1413}
1412 1414
1413void MainWindow::saveOnClose() 1415void MainWindow::saveOnClose()
1414{ 1416{
1415 KOPrefs *p = KOPrefs::instance(); 1417 KOPrefs *p = KOPrefs::instance();
1416 p->mToolBarHor = ( iconToolBar->orientation () == Qt:: Horizontal ); 1418 p->mToolBarHor = ( iconToolBar->orientation () == Qt:: Horizontal );
1417 p->mToolBarUp = iconToolBar->x() > width()/2 || 1419 p->mToolBarUp = iconToolBar->x() > width()/2 ||
1418 iconToolBar->y() > height()/2; 1420 iconToolBar->y() > height()/2;
1419 mView->writeSettings(); 1421 mView->writeSettings();
1420 if ( mCalendarModifiedFlag || mView->checkFileChanged( defaultFileName())) 1422 if ( mCalendarModifiedFlag || mView->checkFileChanged( defaultFileName()))
1421 save(); 1423 save();
1422} 1424}
1423void MainWindow::slotModifiedChanged( bool changed ) 1425void MainWindow::slotModifiedChanged( bool changed )
1424{ 1426{
1425 if ( mBlockAtStartup ) 1427 if ( mBlockAtStartup )
1426 return; 1428 return;
1427 int msec; 1429 int msec;
1428 // we store the changes after 1 minute, 1430 // we store the changes after 1 minute,
1429 // and for safety reasons after 10 minutes again 1431 // and for safety reasons after 10 minutes again
1430 if ( !mSyncManager->blockSave() ) 1432 if ( !mSyncManager->blockSave() )
1431 msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000; 1433 msec = (1000 * 60*KOPrefs::instance()->mAutoSaveInterval) +1000;
1432 else 1434 else
1433 msec = 1000 * 600; 1435 msec = 1000 * 600;
1434 mSaveTimer.start( msec, true ); // 1 minute 1436 mSaveTimer.start( msec, true ); // 1 minute
1435 qDebug("KO: Saving File in %d secs!", msec/1000); 1437 qDebug("KO: Saving File in %d secs!", msec/1000);
1436 mCalendarModifiedFlag = true; 1438 mCalendarModifiedFlag = true;
1437} 1439}
1438void MainWindow::save() 1440void MainWindow::save()
1439{ 1441{
1440 if ( mSyncManager->blockSave() ) 1442 if ( mSyncManager->blockSave() )
1441 return; 1443 return;
1442 mSyncManager->setBlockSave(true); 1444 mSyncManager->setBlockSave(true);
1443 if ( mView->checkFileVersion( defaultFileName()) ) { 1445 if ( mView->checkFileVersion( defaultFileName()) ) {
1444 1446
1445 QTime neededSaveTime = QDateTime::currentDateTime().time(); 1447 QTime neededSaveTime = QDateTime::currentDateTime().time();
1446 setCaption(i18n("KO/Pi:Saving Data to File ..." )); 1448 setCaption(i18n("KO/Pi:Saving Data to File ..." ));
1447 qDebug("KO: Start saving data to file!"); 1449 qDebug("KO: Start saving data to file!");
1448 mView->saveCalendar( defaultFileName() ); 1450 mView->saveCalendar( defaultFileName() );
1449 1451
1450 int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); 1452 int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() );
1451 qDebug("KO: Needed %d ms for saving.",msNeeded ); 1453 qDebug("KO: Needed %d ms for saving.",msNeeded );
1452 QString savemes; 1454 QString savemes;
1453 savemes.sprintf(i18n("KO/Pi:File Saved. Needed %d sec, %d ms"),(msNeeded/1000)%100,msNeeded%1000 ); 1455 savemes.sprintf(i18n("KO/Pi:File Saved. Needed %d sec, %d ms"),(msNeeded/1000)%100,msNeeded%1000 );
1454 setCaption(savemes); 1456 setCaption(savemes);
1455 } else 1457 } else
1456 setCaption(i18n("Saving cancelled!")); 1458 setCaption(i18n("Saving cancelled!"));
1457 mCalendarModifiedFlag = false; 1459 mCalendarModifiedFlag = false;
1458 mSyncManager->setBlockSave( false ); 1460 mSyncManager->setBlockSave( false );
1459} 1461}
1460 1462
1461void MainWindow::keyReleaseEvent ( QKeyEvent * e) 1463void MainWindow::keyReleaseEvent ( QKeyEvent * e)
1462{ 1464{
1463 if ( !e->isAutoRepeat() ) { 1465 if ( !e->isAutoRepeat() ) {
1464 mFlagKeyPressed = false; 1466 mFlagKeyPressed = false;
1465 } 1467 }
1466} 1468}
1467void MainWindow::keyPressEvent ( QKeyEvent * e ) 1469void MainWindow::keyPressEvent ( QKeyEvent * e )
1468{ 1470{
1469 qApp->processEvents(); 1471 qApp->processEvents();
1470 if ( e->isAutoRepeat() && !mFlagKeyPressed ) { 1472 if ( e->isAutoRepeat() && !mFlagKeyPressed ) {
1471 e->ignore(); 1473 e->ignore();
1472 // qDebug(" ignore %d",e->isAutoRepeat() ); 1474 // qDebug(" ignore %d",e->isAutoRepeat() );
1473 return; 1475 return;
1474 } 1476 }
1475 if (! e->isAutoRepeat() ) 1477 if (! e->isAutoRepeat() )
1476 mFlagKeyPressed = true; 1478 mFlagKeyPressed = true;
1477 KOPrefs *p = KOPrefs::instance(); 1479 KOPrefs *p = KOPrefs::instance();
1478 bool showSelectedDates = false; 1480 bool showSelectedDates = false;
1479 int size; 1481 int size;
1480 int pro = 0; 1482 int pro = 0;
1481 //qDebug("MainWindow::keyPressEvent "); 1483 //qDebug("MainWindow::keyPressEvent ");
1482 switch ( e->key() ) { 1484 switch ( e->key() ) {
1483 case Qt::Key_Right: 1485 case Qt::Key_Right:
1484 if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton) 1486 if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton)
1485 mView->goNextMonth(); 1487 mView->goNextMonth();
1486 else 1488 else
1487 mView->goNext(); 1489 mView->goNext();
1488 showSelectedDates = true; 1490 showSelectedDates = true;
1489 break; 1491 break;
1490 case Qt::Key_Left: 1492 case Qt::Key_Left:
1491 if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton ) 1493 if ( e->state() == Qt::ControlButton|| e->state() == Qt::ShiftButton )
1492 mView->goPreviousMonth(); 1494 mView->goPreviousMonth();
1493 else 1495 else
1494 mView->goPrevious(); 1496 mView->goPrevious();
1495 showSelectedDates = true; 1497 showSelectedDates = true;
1496 break; 1498 break;
1497 case Qt::Key_Down: 1499 case Qt::Key_Down:
1498 mView->viewManager()->agendaView()->scrollOneHourDown(); 1500 mView->viewManager()->agendaView()->scrollOneHourDown();
1499 break; 1501 break;
1500 case Qt::Key_Up: 1502 case Qt::Key_Up:
1501 mView->viewManager()->agendaView()->scrollOneHourUp(); 1503 mView->viewManager()->agendaView()->scrollOneHourUp();
1502 break; 1504 break;
1503 case Qt::Key_I: 1505 case Qt::Key_I:
1504 mView->showIncidence(); 1506 mView->showIncidence();
1505 break; 1507 break;
1506 case Qt::Key_Delete: 1508 case Qt::Key_Delete:
1507 case Qt::Key_Backspace: 1509 case Qt::Key_Backspace:
1508 mView->deleteIncidence(); 1510 mView->deleteIncidence();
1509 break; 1511 break;
1510 case Qt::Key_D: 1512 case Qt::Key_D:
1511 mView->viewManager()->showDayView(); 1513 mView->viewManager()->showDayView();
1512 showSelectedDates = true; 1514 showSelectedDates = true;
1513 break; 1515 break;
1514 case Qt::Key_O: 1516 case Qt::Key_O:
1515 mView->toggleFilerEnabled( ); 1517 mView->toggleFilerEnabled( );
1516 break; 1518 break;
1517 case Qt::Key_0: 1519 case Qt::Key_0:
1518 case Qt::Key_1: 1520 case Qt::Key_1:
1519 case Qt::Key_2: 1521 case Qt::Key_2:
1520 case Qt::Key_3: 1522 case Qt::Key_3:
1521 case Qt::Key_4: 1523 case Qt::Key_4:
1522 case Qt::Key_5: 1524 case Qt::Key_5:
1523 case Qt::Key_6: 1525 case Qt::Key_6:
1524 case Qt::Key_7: 1526 case Qt::Key_7:
1525 case Qt::Key_8: 1527 case Qt::Key_8:
1526 case Qt::Key_9: 1528 case Qt::Key_9:
1527 pro = e->key()-48; 1529 pro = e->key()-48;
1528 if ( pro == 0 ) 1530 if ( pro == 0 )
1529 pro = 10; 1531 pro = 10;
1530 if ( e->state() == Qt::ControlButton) 1532 if ( e->state() == Qt::ControlButton)
1531 pro += 10; 1533 pro += 10;
1532 break; 1534 break;
1533 case Qt::Key_M: 1535 case Qt::Key_M:
1534 mView->viewManager()->showMonthView(); 1536 mView->viewManager()->showMonthView();
1535 showSelectedDates = true; 1537 showSelectedDates = true;
1536 break; 1538 break;
1537 case Qt::Key_Insert: 1539 case Qt::Key_Insert:
1538 mView->newEvent(); 1540 mView->newEvent();
1539 break; 1541 break;
1540 case Qt::Key_S : 1542 case Qt::Key_S :
1541 if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton) 1543 if ( e->state() == Qt::ControlButton || e->state() == Qt::ShiftButton)
1542 mView->newSubTodo(); 1544 mView->newSubTodo();
1543 else 1545 else
1544 mView->dialogManager()->showSearchDialog(); 1546 mView->dialogManager()->showSearchDialog();
1545 break; 1547 break;
1546 case Qt::Key_Y : 1548 case Qt::Key_Y :
1547 case Qt::Key_Z : 1549 case Qt::Key_Z :
1548 mView->viewManager()->showWorkWeekView(); 1550 mView->viewManager()->showWorkWeekView();
1549 showSelectedDates = true; 1551 showSelectedDates = true;
1550 break; 1552 break;
1551 case Qt::Key_U : 1553 case Qt::Key_U :
1552 mView->viewManager()->showWeekView(); 1554 mView->viewManager()->showWeekView();
1553 showSelectedDates = true; 1555 showSelectedDates = true;
1554 break; 1556 break;
1555 case Qt::Key_H : 1557 case Qt::Key_H :
1556 keyBindings(); 1558 keyBindings();
1557 break; 1559 break;
1558 case Qt::Key_W: 1560 case Qt::Key_W:
1559 mView->viewManager()->showWhatsNextView(); 1561 mView->viewManager()->showWhatsNextView();
1560 break; 1562 break;
1561 case Qt::Key_L: 1563 case Qt::Key_L:
1562 mView->viewManager()->showListView(); 1564 mView->viewManager()->showListView();
1563 break; 1565 break;