summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kaddressbook/kabcore.cpp11
-rw-r--r--kaddressbook/kaddressbook.pro31
-rw-r--r--kaddressbook/mainembedded.cpp30
-rw-r--r--kdepim-desktop.pro2
-rw-r--r--korganizer/koprefsdialog.cpp2
-rw-r--r--korganizer/korganizer.pro32
-rw-r--r--korganizer/main.cpp29
-rw-r--r--korganizer/mainwindow.cpp8
8 files changed, 72 insertions, 73 deletions
diff --git a/kaddressbook/kabcore.cpp b/kaddressbook/kabcore.cpp
index 505cbf4..590cc82 100644
--- a/kaddressbook/kabcore.cpp
+++ b/kaddressbook/kabcore.cpp
@@ -30,258 +30,259 @@ $Id$
30 30
31#include "kabcore.h" 31#include "kabcore.h"
32 32
33#include <stdaddressbook.h> 33#include <stdaddressbook.h>
34#include <klocale.h> 34#include <klocale.h>
35#include <kfiledialog.h> 35#include <kfiledialog.h>
36#include <qtimer.h> 36#include <qtimer.h>
37#include <qlabel.h> 37#include <qlabel.h>
38#include <qregexp.h> 38#include <qregexp.h>
39#include <qlineedit.h> 39#include <qlineedit.h>
40#include <qcheckbox.h> 40#include <qcheckbox.h>
41#include <qpushbutton.h> 41#include <qpushbutton.h>
42#include <qprogressbar.h> 42#include <qprogressbar.h>
43#include <libkdepim/phoneaccess.h> 43#include <libkdepim/phoneaccess.h>
44 44
45#ifndef KAB_EMBEDDED 45#ifndef KAB_EMBEDDED
46#include <qclipboard.h> 46#include <qclipboard.h>
47#include <qdir.h> 47#include <qdir.h>
48#include <qfile.h> 48#include <qfile.h>
49#include <qapplicaton.h> 49#include <qapplicaton.h>
50#include <qprogressbar.h> 50#include <qprogressbar.h>
51#include <qlayout.h> 51#include <qlayout.h>
52#include <qregexp.h> 52#include <qregexp.h>
53#include <qvbox.h> 53#include <qvbox.h>
54#include <kabc/addresseelist.h> 54#include <kabc/addresseelist.h>
55#include <kabc/errorhandler.h> 55#include <kabc/errorhandler.h>
56#include <kabc/resource.h> 56#include <kabc/resource.h>
57#include <kabc/vcardconverter.h> 57#include <kabc/vcardconverter.h>
58#include <kapplication.h> 58#include <kapplication.h>
59#include <kactionclasses.h> 59#include <kactionclasses.h>
60#include <kcmultidialog.h> 60#include <kcmultidialog.h>
61#include <kdebug.h> 61#include <kdebug.h>
62#include <kdeversion.h> 62#include <kdeversion.h>
63#include <kkeydialog.h> 63#include <kkeydialog.h>
64#include <kmessagebox.h> 64#include <kmessagebox.h>
65#include <kprinter.h> 65#include <kprinter.h>
66#include <kprotocolinfo.h> 66#include <kprotocolinfo.h>
67#include <kresources/selectdialog.h> 67#include <kresources/selectdialog.h>
68#include <kstandarddirs.h> 68#include <kstandarddirs.h>
69#include <ktempfile.h> 69#include <ktempfile.h>
70#include <kxmlguiclient.h> 70#include <kxmlguiclient.h>
71#include <kaboutdata.h> 71#include <kaboutdata.h>
72#include <libkdepim/categoryselectdialog.h> 72#include <libkdepim/categoryselectdialog.h>
73 73
74#include "addresseeutil.h" 74#include "addresseeutil.h"
75#include "addresseeeditordialog.h" 75#include "addresseeeditordialog.h"
76#include "extensionmanager.h" 76#include "extensionmanager.h"
77#include "kstdaction.h" 77#include "kstdaction.h"
78#include "kaddressbookservice.h" 78#include "kaddressbookservice.h"
79#include "ldapsearchdialog.h" 79#include "ldapsearchdialog.h"
80#include "printing/printingwizard.h" 80#include "printing/printingwizard.h"
81#else // KAB_EMBEDDED 81#else // KAB_EMBEDDED
82 82
83#include <kapplication.h> 83#include <kapplication.h>
84#include "KDGanttMinimizeSplitter.h" 84#include "KDGanttMinimizeSplitter.h"
85#include "kaddressbookmain.h" 85#include "kaddressbookmain.h"
86#include "kactioncollection.h" 86#include "kactioncollection.h"
87#include "addresseedialog.h" 87#include "addresseedialog.h"
88//US 88//US
89#include <addresseeview.h> 89#include <addresseeview.h>
90 90
91#include <qapp.h> 91#include <qapp.h>
92#include <qmenubar.h> 92#include <qmenubar.h>
93//#include <qtoolbar.h> 93//#include <qtoolbar.h>
94#include <qmessagebox.h> 94#include <qmessagebox.h>
95#include <kdebug.h> 95#include <kdebug.h>
96#include <kiconloader.h> // needed for SmallIcon 96#include <kiconloader.h> // needed for SmallIcon
97#include <kresources/kcmkresources.h> 97#include <kresources/kcmkresources.h>
98#include <ktoolbar.h> 98#include <ktoolbar.h>
99 99
100 100
101//#include <qlabel.h> 101//#include <qlabel.h>
102 102
103 103
104#ifndef DESKTOP_VERSION 104#ifndef DESKTOP_VERSION
105#include <qpe/ir.h> 105#include <qpe/ir.h>
106#include <qpe/qpemenubar.h> 106#include <qpe/qpemenubar.h>
107#include <qtopia/qcopenvelope_qws.h> 107#include <qtopia/qcopenvelope_qws.h>
108#else 108#else
109 109
110#include <qmenubar.h> 110#include <qmenubar.h>
111#endif 111#endif
112 112
113#endif // KAB_EMBEDDED 113#endif // KAB_EMBEDDED
114#include "kcmconfigs/kcmkabconfig.h" 114#include "kcmconfigs/kcmkabconfig.h"
115#include "kcmconfigs/kcmkdepimconfig.h" 115#include "kcmconfigs/kcmkdepimconfig.h"
116#include "kpimglobalprefs.h" 116#include "kpimglobalprefs.h"
117#include "externalapphandler.h" 117#include "externalapphandler.h"
118#include "xxportselectdialog.h" 118#include "xxportselectdialog.h"
119 119
120 120
121#include <kresources/selectdialog.h> 121#include <kresources/selectdialog.h>
122#include <kmessagebox.h> 122#include <kmessagebox.h>
123 123
124#include <picture.h> 124#include <picture.h>
125#include <resource.h> 125#include <resource.h>
126 126
127//US#include <qsplitter.h> 127//US#include <qsplitter.h>
128#include <qmap.h> 128#include <qmap.h>
129#include <qdir.h> 129#include <qdir.h>
130#include <qfile.h> 130#include <qfile.h>
131#include <qvbox.h> 131#include <qvbox.h>
132#include <qlayout.h> 132#include <qlayout.h>
133#include <qclipboard.h> 133#include <qclipboard.h>
134#include <qtextstream.h> 134#include <qtextstream.h>
135#include <qradiobutton.h> 135#include <qradiobutton.h>
136#include <qbuttongroup.h> 136#include <qbuttongroup.h>
137 137
138#include <libkdepim/categoryselectdialog.h> 138#include <libkdepim/categoryselectdialog.h>
139#include <libkdepim/categoryeditdialog.h> 139#include <libkdepim/categoryeditdialog.h>
140#include <kabc/vcardconverter.h> 140#include <kabc/vcardconverter.h>
141 141
142 142
143#include "addresseeutil.h" 143#include "addresseeutil.h"
144#include "undocmds.h" 144#include "undocmds.h"
145#include "addresseeeditordialog.h" 145#include "addresseeeditordialog.h"
146#include "viewmanager.h" 146#include "viewmanager.h"
147#include "details/detailsviewcontainer.h" 147#include "details/detailsviewcontainer.h"
148#include "kabprefs.h" 148#include "kabprefs.h"
149#include "xxportmanager.h" 149#include "xxportmanager.h"
150#include "incsearchwidget.h" 150#include "incsearchwidget.h"
151#include "jumpbuttonbar.h" 151#include "jumpbuttonbar.h"
152#include "extensionmanager.h" 152#include "extensionmanager.h"
153#include "addresseeconfig.h" 153#include "addresseeconfig.h"
154#include "nameeditdialog.h" 154#include "nameeditdialog.h"
155#include <kcmultidialog.h> 155#include <kcmultidialog.h>
156 156
157#ifdef _WIN32_ 157#ifdef _WIN32_
158 158#ifdef _OL_IMPORT_
159#include "kaimportoldialog.h" 159#include "kaimportoldialog.h"
160#endif
160#else 161#else
161#include <unistd.h> 162#include <unistd.h>
162#endif 163#endif
163// sync includes 164// sync includes
164#include <libkdepim/ksyncprofile.h> 165#include <libkdepim/ksyncprofile.h>
165#include <libkdepim/ksyncprefsdialog.h> 166#include <libkdepim/ksyncprefsdialog.h>
166 167
167 168
168class KABCatPrefs : public QDialog 169class KABCatPrefs : public QDialog
169{ 170{
170 public: 171 public:
171 KABCatPrefs( QWidget *parent=0, const char *name=0 ) : 172 KABCatPrefs( QWidget *parent=0, const char *name=0 ) :
172 QDialog( parent, name, true ) 173 QDialog( parent, name, true )
173 { 174 {
174 setCaption( i18n("Manage new Categories") ); 175 setCaption( i18n("Manage new Categories") );
175 QVBoxLayout* lay = new QVBoxLayout( this ); 176 QVBoxLayout* lay = new QVBoxLayout( this );
176 lay->setSpacing( 3 ); 177 lay->setSpacing( 3 );
177 lay->setMargin( 3 ); 178 lay->setMargin( 3 );
178 QLabel * lab = new QLabel( i18n("After importing/loading/syncing\nthere may be new categories in\naddressees\nwhich are not in the category list.\nPlease choose what to do:\n "), this ); 179 QLabel * lab = new QLabel( i18n("After importing/loading/syncing\nthere may be new categories in\naddressees\nwhich are not in the category list.\nPlease choose what to do:\n "), this );
179 lay->addWidget( lab ); 180 lay->addWidget( lab );
180 QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("New categories not in list:"), this ); 181 QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("New categories not in list:"), this );
181 lay->addWidget( format ); 182 lay->addWidget( format );
182 format->setExclusive ( true ) ; 183 format->setExclusive ( true ) ;
183 addCatBut = new QRadioButton(i18n("Add to category list"), format ); 184 addCatBut = new QRadioButton(i18n("Add to category list"), format );
184 new QRadioButton(i18n("Remove from addressees"), format ); 185 new QRadioButton(i18n("Remove from addressees"), format );
185 addCatBut->setChecked( true ); 186 addCatBut->setChecked( true );
186 QPushButton * ok = new QPushButton( i18n("OK"), this ); 187 QPushButton * ok = new QPushButton( i18n("OK"), this );
187 lay->addWidget( ok ); 188 lay->addWidget( ok );
188 QPushButton * cancel = new QPushButton( i18n("Cancel"), this ); 189 QPushButton * cancel = new QPushButton( i18n("Cancel"), this );
189 lay->addWidget( cancel ); 190 lay->addWidget( cancel );
190 connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); 191 connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) );
191 connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) ); 192 connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) );
192 resize( 200, 200 ); 193 resize( 200, 200 );
193 } 194 }
194 195
195 bool addCat() { return addCatBut->isChecked(); } 196 bool addCat() { return addCatBut->isChecked(); }
196private: 197private:
197 QRadioButton* addCatBut; 198 QRadioButton* addCatBut;
198}; 199};
199 200
200class KABFormatPrefs : public QDialog 201class KABFormatPrefs : public QDialog
201{ 202{
202 public: 203 public:
203 KABFormatPrefs( QWidget *parent=0, const char *name=0 ) : 204 KABFormatPrefs( QWidget *parent=0, const char *name=0 ) :
204 QDialog( parent, name, true ) 205 QDialog( parent, name, true )
205 { 206 {
206 setCaption( i18n("Set formatted name") ); 207 setCaption( i18n("Set formatted name") );
207 QVBoxLayout* lay = new QVBoxLayout( this ); 208 QVBoxLayout* lay = new QVBoxLayout( this );
208 lay->setSpacing( 3 ); 209 lay->setSpacing( 3 );
209 lay->setMargin( 3 ); 210 lay->setMargin( 3 );
210 QLabel * lab = new QLabel( i18n("You can set the formatted name\nfor a list of contacts in one go."), this ); 211 QLabel * lab = new QLabel( i18n("You can set the formatted name\nfor a list of contacts in one go."), this );
211 lay->addWidget( lab ); 212 lay->addWidget( lab );
212 QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("Set formatted name to:"), this ); 213 QButtonGroup* format = new QButtonGroup( 1, Horizontal, i18n("Set formatted name to:"), this );
213 lay->addWidget( format ); 214 lay->addWidget( format );
214 format->setExclusive ( true ) ; 215 format->setExclusive ( true ) ;
215 simple = new QRadioButton(i18n("Simple: James Bond"), format ); 216 simple = new QRadioButton(i18n("Simple: James Bond"), format );
216 full = new QRadioButton(i18n("Full: Mr. James 007 Bond I"), format ); 217 full = new QRadioButton(i18n("Full: Mr. James 007 Bond I"), format );
217 reverse = new QRadioButton(i18n("Reverse: Bond, James"), format ); 218 reverse = new QRadioButton(i18n("Reverse: Bond, James"), format );
218 company = new QRadioButton(i18n("Organization: MI6"), format ); 219 company = new QRadioButton(i18n("Organization: MI6"), format );
219 simple->setChecked( true ); 220 simple->setChecked( true );
220 setCompany = new QCheckBox(i18n("Set formatted name to\norganization, if name empty"), this); 221 setCompany = new QCheckBox(i18n("Set formatted name to\norganization, if name empty"), this);
221 lay->addWidget( setCompany ); 222 lay->addWidget( setCompany );
222 QPushButton * ok = new QPushButton( i18n("Select contact list"), this ); 223 QPushButton * ok = new QPushButton( i18n("Select contact list"), this );
223 lay->addWidget( ok ); 224 lay->addWidget( ok );
224 QPushButton * cancel = new QPushButton( i18n("Cancel"), this ); 225 QPushButton * cancel = new QPushButton( i18n("Cancel"), this );
225 lay->addWidget( cancel ); 226 lay->addWidget( cancel );
226 connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); 227 connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) );
227 connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) ); 228 connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) );
228 //resize( 200, 200 ); 229 //resize( 200, 200 );
229 230
230 } 231 }
231public: 232public:
232 QRadioButton* simple, *full, *reverse, *company; 233 QRadioButton* simple, *full, *reverse, *company;
233 QCheckBox* setCompany; 234 QCheckBox* setCompany;
234}; 235};
235 236
236 237
237 238
238class KAex2phonePrefs : public QDialog 239class KAex2phonePrefs : public QDialog
239{ 240{
240 public: 241 public:
241 KAex2phonePrefs( QWidget *parent=0, const char *name=0 ) : 242 KAex2phonePrefs( QWidget *parent=0, const char *name=0 ) :
242 QDialog( parent, name, true ) 243 QDialog( parent, name, true )
243 { 244 {
244 setCaption( i18n("Export to phone options") ); 245 setCaption( i18n("Export to phone options") );
245 QVBoxLayout* lay = new QVBoxLayout( this ); 246 QVBoxLayout* lay = new QVBoxLayout( this );
246 lay->setSpacing( 3 ); 247 lay->setSpacing( 3 );
247 lay->setMargin( 3 ); 248 lay->setMargin( 3 );
248 QLabel *lab; 249 QLabel *lab;
249 lay->addWidget(lab = new QLabel( i18n("Please read Help-Sync Howto\nto know what settings to use."), this ) ); 250 lay->addWidget(lab = new QLabel( i18n("Please read Help-Sync Howto\nto know what settings to use."), this ) );
250 lab->setAlignment (AlignHCenter ); 251 lab->setAlignment (AlignHCenter );
251 QHBox* temphb; 252 QHBox* temphb;
252 temphb = new QHBox( this ); 253 temphb = new QHBox( this );
253 new QLabel( i18n("I/O device: "), temphb ); 254 new QLabel( i18n("I/O device: "), temphb );
254 mPhoneDevice = new QLineEdit( temphb); 255 mPhoneDevice = new QLineEdit( temphb);
255 lay->addWidget( temphb ); 256 lay->addWidget( temphb );
256 temphb = new QHBox( this ); 257 temphb = new QHBox( this );
257 new QLabel( i18n("Connection: "), temphb ); 258 new QLabel( i18n("Connection: "), temphb );
258 mPhoneConnection = new QLineEdit( temphb); 259 mPhoneConnection = new QLineEdit( temphb);
259 lay->addWidget( temphb ); 260 lay->addWidget( temphb );
260 temphb = new QHBox( this ); 261 temphb = new QHBox( this );
261 new QLabel( i18n("Model(opt.): "), temphb ); 262 new QLabel( i18n("Model(opt.): "), temphb );
262 mPhoneModel = new QLineEdit( temphb); 263 mPhoneModel = new QLineEdit( temphb);
263 lay->addWidget( temphb ); 264 lay->addWidget( temphb );
264 // mWriteToSim = new QCheckBox( i18n("Write Contacts to SIM card\n(if not, write to phone memory)"), this ); 265 // mWriteToSim = new QCheckBox( i18n("Write Contacts to SIM card\n(if not, write to phone memory)"), this );
265 // lay->addWidget( mWriteToSim ); 266 // lay->addWidget( mWriteToSim );
266 lay->addWidget(lab = new QLabel( i18n("NOTE: This will remove all old\ncontact data on phone!"), this ) ); 267 lay->addWidget(lab = new QLabel( i18n("NOTE: This will remove all old\ncontact data on phone!"), this ) );
267 lab->setAlignment (AlignHCenter); 268 lab->setAlignment (AlignHCenter);
268 QPushButton * ok = new QPushButton( i18n("Export to mobile phone!"), this ); 269 QPushButton * ok = new QPushButton( i18n("Export to mobile phone!"), this );
269 lay->addWidget( ok ); 270 lay->addWidget( ok );
270 QPushButton * cancel = new QPushButton( i18n("Cancel"), this ); 271 QPushButton * cancel = new QPushButton( i18n("Cancel"), this );
271 lay->addWidget( cancel ); 272 lay->addWidget( cancel );
272 connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); 273 connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) );
273 connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) ); 274 connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) );
274 resize( 220, 240 ); 275 resize( 220, 240 );
275 276
276 } 277 }
277 278
278public: 279public:
279 QLineEdit* mPhoneConnection, *mPhoneDevice, *mPhoneModel; 280 QLineEdit* mPhoneConnection, *mPhoneDevice, *mPhoneModel;
280 QCheckBox* mWriteToSim; 281 QCheckBox* mWriteToSim;
281}; 282};
282 283
283 284
284bool pasteWithNewUid = true; 285bool pasteWithNewUid = true;
285 286
286#ifdef KAB_EMBEDDED 287#ifdef KAB_EMBEDDED
287KABCore::KABCore( KAddressBookMain *client, bool readWrite, QWidget *parent, const char *name ) 288KABCore::KABCore( KAddressBookMain *client, bool readWrite, QWidget *parent, const char *name )
@@ -1166,257 +1167,257 @@ void KABCore::setModifiedWOrefresh()
1166 mModified = true; 1167 mModified = true;
1167 mActionSave->setEnabled( mModified ); 1168 mActionSave->setEnabled( mModified );
1168 1169
1169 1170
1170} 1171}
1171void KABCore::setModified( bool modified ) 1172void KABCore::setModified( bool modified )
1172{ 1173{
1173 mModified = modified; 1174 mModified = modified;
1174 mActionSave->setEnabled( mModified ); 1175 mActionSave->setEnabled( mModified );
1175 1176
1176 if ( modified ) 1177 if ( modified )
1177 mJumpButtonBar->recreateButtons(); 1178 mJumpButtonBar->recreateButtons();
1178 1179
1179 mViewManager->refreshView(); 1180 mViewManager->refreshView();
1180 1181
1181} 1182}
1182 1183
1183bool KABCore::modified() const 1184bool KABCore::modified() const
1184{ 1185{
1185 return mModified; 1186 return mModified;
1186} 1187}
1187 1188
1188void KABCore::contactModified( const KABC::Addressee &addr ) 1189void KABCore::contactModified( const KABC::Addressee &addr )
1189{ 1190{
1190 addrModified( addr ); 1191 addrModified( addr );
1191#if 0 // debug only 1192#if 0 // debug only
1192 KABC::Addressee ad = addr; 1193 KABC::Addressee ad = addr;
1193 ad.computeCsum( "123"); 1194 ad.computeCsum( "123");
1194#endif 1195#endif
1195} 1196}
1196 1197
1197void KABCore::addrModified( const KABC::Addressee &addr ,bool updateDetails ) 1198void KABCore::addrModified( const KABC::Addressee &addr ,bool updateDetails )
1198{ 1199{
1199 1200
1200 Command *command = 0; 1201 Command *command = 0;
1201 QString uid; 1202 QString uid;
1202 1203
1203 // check if it exists already 1204 // check if it exists already
1204 KABC::Addressee origAddr = mAddressBook->findByUid( addr.uid() ); 1205 KABC::Addressee origAddr = mAddressBook->findByUid( addr.uid() );
1205 if ( origAddr.isEmpty() ) 1206 if ( origAddr.isEmpty() )
1206 command = new PwNewCommand( mAddressBook, addr ); 1207 command = new PwNewCommand( mAddressBook, addr );
1207 else { 1208 else {
1208 command = new PwEditCommand( mAddressBook, origAddr, addr ); 1209 command = new PwEditCommand( mAddressBook, origAddr, addr );
1209 uid = addr.uid(); 1210 uid = addr.uid();
1210 } 1211 }
1211 1212
1212 UndoStack::instance()->push( command ); 1213 UndoStack::instance()->push( command );
1213 RedoStack::instance()->clear(); 1214 RedoStack::instance()->clear();
1214 if ( updateDetails ) 1215 if ( updateDetails )
1215 mDetails->setAddressee( addr ); 1216 mDetails->setAddressee( addr );
1216 setModified( true ); 1217 setModified( true );
1217} 1218}
1218 1219
1219void KABCore::newContact() 1220void KABCore::newContact()
1220{ 1221{
1221 1222
1222 1223
1223 QPtrList<KABC::Resource> kabcResources = mAddressBook->resources(); 1224 QPtrList<KABC::Resource> kabcResources = mAddressBook->resources();
1224 1225
1225 QPtrList<KRES::Resource> kresResources; 1226 QPtrList<KRES::Resource> kresResources;
1226 QPtrListIterator<KABC::Resource> it( kabcResources ); 1227 QPtrListIterator<KABC::Resource> it( kabcResources );
1227 KABC::Resource *resource; 1228 KABC::Resource *resource;
1228 while ( ( resource = it.current() ) != 0 ) { 1229 while ( ( resource = it.current() ) != 0 ) {
1229 ++it; 1230 ++it;
1230 if ( !resource->readOnly() ) { 1231 if ( !resource->readOnly() ) {
1231 KRES::Resource *res = static_cast<KRES::Resource*>( resource ); 1232 KRES::Resource *res = static_cast<KRES::Resource*>( resource );
1232 if ( res ) 1233 if ( res )
1233 kresResources.append( res ); 1234 kresResources.append( res );
1234 } 1235 }
1235 } 1236 }
1236 1237
1237 KRES::Resource *res = KRES::SelectDialog::getResource( kresResources, this ); 1238 KRES::Resource *res = KRES::SelectDialog::getResource( kresResources, this );
1238 resource = static_cast<KABC::Resource*>( res ); 1239 resource = static_cast<KABC::Resource*>( res );
1239 1240
1240 if ( resource ) { 1241 if ( resource ) {
1241 KABC::Addressee addr; 1242 KABC::Addressee addr;
1242 addr.setResource( resource ); 1243 addr.setResource( resource );
1243 mEditorDialog->setAddressee( addr ); 1244 mEditorDialog->setAddressee( addr );
1244 KApplication::execDialog ( mEditorDialog ); 1245 KApplication::execDialog ( mEditorDialog );
1245 1246
1246 } else 1247 } else
1247 return; 1248 return;
1248 1249
1249 // mEditorDict.insert( dialog->addressee().uid(), dialog ); 1250 // mEditorDict.insert( dialog->addressee().uid(), dialog );
1250 1251
1251 1252
1252} 1253}
1253 1254
1254void KABCore::addEmail( QString aStr ) 1255void KABCore::addEmail( QString aStr )
1255{ 1256{
1256#ifndef KAB_EMBEDDED 1257#ifndef KAB_EMBEDDED
1257 QString fullName, email; 1258 QString fullName, email;
1258 1259
1259 KABC::Addressee::parseEmailAddress( aStr, fullName, email ); 1260 KABC::Addressee::parseEmailAddress( aStr, fullName, email );
1260 1261
1261 // Try to lookup the addressee matching the email address 1262 // Try to lookup the addressee matching the email address
1262 bool found = false; 1263 bool found = false;
1263 QStringList emailList; 1264 QStringList emailList;
1264 KABC::AddressBook::Iterator it; 1265 KABC::AddressBook::Iterator it;
1265 for ( it = mAddressBook->begin(); !found && (it != mAddressBook->end()); ++it ) { 1266 for ( it = mAddressBook->begin(); !found && (it != mAddressBook->end()); ++it ) {
1266 emailList = (*it).emails(); 1267 emailList = (*it).emails();
1267 if ( emailList.contains( email ) > 0 ) { 1268 if ( emailList.contains( email ) > 0 ) {
1268 found = true; 1269 found = true;
1269 (*it).setNameFromString( fullName ); 1270 (*it).setNameFromString( fullName );
1270 editContact( (*it).uid() ); 1271 editContact( (*it).uid() );
1271 } 1272 }
1272 } 1273 }
1273 1274
1274 if ( !found ) { 1275 if ( !found ) {
1275 KABC::Addressee addr; 1276 KABC::Addressee addr;
1276 addr.setNameFromString( fullName ); 1277 addr.setNameFromString( fullName );
1277 addr.insertEmail( email, true ); 1278 addr.insertEmail( email, true );
1278 1279
1279 mAddressBook->insertAddressee( addr ); 1280 mAddressBook->insertAddressee( addr );
1280 mViewManager->refreshView( addr.uid() ); 1281 mViewManager->refreshView( addr.uid() );
1281 editContact( addr.uid() ); 1282 editContact( addr.uid() );
1282 } 1283 }
1283#else //KAB_EMBEDDED 1284#else //KAB_EMBEDDED
1284 qDebug("KABCore::addEmail finsih method"); 1285 qDebug("KABCore::addEmail finsih method");
1285#endif //KAB_EMBEDDED 1286#endif //KAB_EMBEDDED
1286} 1287}
1287 1288
1288void KABCore::importVCard( const KURL &url, bool showPreview ) 1289void KABCore::importVCard( const KURL &url, bool showPreview )
1289{ 1290{
1290 mXXPortManager->importVCard( url, showPreview ); 1291 mXXPortManager->importVCard( url, showPreview );
1291} 1292}
1292void KABCore::importFromOL() 1293void KABCore::importFromOL()
1293{ 1294{
1294#ifdef _WIN32_ 1295#ifdef _OL_IMPORT_
1295 KAImportOLdialog* idgl = new KAImportOLdialog( i18n("Import Contacts from OL"), mAddressBook, this ); 1296 KAImportOLdialog* idgl = new KAImportOLdialog( i18n("Import Contacts from OL"), mAddressBook, this );
1296 idgl->exec(); 1297 idgl->exec();
1297 KABC::Addressee::List list = idgl->getAddressList(); 1298 KABC::Addressee::List list = idgl->getAddressList();
1298 if ( list.count() > 0 ) { 1299 if ( list.count() > 0 ) {
1299 KABC::Addressee::List listNew; 1300 KABC::Addressee::List listNew;
1300 KABC::Addressee::List listExisting; 1301 KABC::Addressee::List listExisting;
1301 KABC::Addressee::List::Iterator it; 1302 KABC::Addressee::List::Iterator it;
1302 KABC::AddressBook::Iterator iter; 1303 KABC::AddressBook::Iterator iter;
1303 for ( it = list.begin(); it != list.end(); ++it ) { 1304 for ( it = list.begin(); it != list.end(); ++it ) {
1304 if ( mAddressBook->findByUid((*it).uid() ).isEmpty()) 1305 if ( mAddressBook->findByUid((*it).uid() ).isEmpty())
1305 listNew.append( (*it) ); 1306 listNew.append( (*it) );
1306 else 1307 else
1307 listExisting.append( (*it) ); 1308 listExisting.append( (*it) );
1308 } 1309 }
1309 if ( listExisting.count() > 0 ) 1310 if ( listExisting.count() > 0 )
1310 KMessageBox::information( this, i18n("%1 contacts not added to addressbook\nbecause they were already in the addressbook!").arg( listExisting.count() )); 1311 KMessageBox::information( this, i18n("%1 contacts not added to addressbook\nbecause they were already in the addressbook!").arg( listExisting.count() ));
1311 if ( listNew.count() > 0 ) { 1312 if ( listNew.count() > 0 ) {
1312 pasteWithNewUid = false; 1313 pasteWithNewUid = false;
1313 pasteContacts( listNew ); 1314 pasteContacts( listNew );
1314 pasteWithNewUid = true; 1315 pasteWithNewUid = true;
1315 } 1316 }
1316 } 1317 }
1317 delete idgl; 1318 delete idgl;
1318#endif 1319#endif
1319} 1320}
1320 1321
1321void KABCore::importVCard( const QString &vCard, bool showPreview ) 1322void KABCore::importVCard( const QString &vCard, bool showPreview )
1322{ 1323{
1323 mXXPortManager->importVCard( vCard, showPreview ); 1324 mXXPortManager->importVCard( vCard, showPreview );
1324} 1325}
1325 1326
1326//US added a second method without defaultparameter 1327//US added a second method without defaultparameter
1327void KABCore::editContact2() { 1328void KABCore::editContact2() {
1328 editContact( QString::null ); 1329 editContact( QString::null );
1329} 1330}
1330 1331
1331void KABCore::editContact( const QString &uid ) 1332void KABCore::editContact( const QString &uid )
1332{ 1333{
1333 1334
1334 if ( mExtensionManager->isQuickEditVisible() ) 1335 if ( mExtensionManager->isQuickEditVisible() )
1335 return; 1336 return;
1336 1337
1337 // First, locate the contact entry 1338 // First, locate the contact entry
1338 QString localUID = uid; 1339 QString localUID = uid;
1339 if ( localUID.isNull() ) { 1340 if ( localUID.isNull() ) {
1340 QStringList uidList = mViewManager->selectedUids(); 1341 QStringList uidList = mViewManager->selectedUids();
1341 if ( uidList.count() > 0 ) 1342 if ( uidList.count() > 0 )
1342 localUID = *( uidList.at( 0 ) ); 1343 localUID = *( uidList.at( 0 ) );
1343 } 1344 }
1344 1345
1345 KABC::Addressee addr = mAddressBook->findByUid( localUID ); 1346 KABC::Addressee addr = mAddressBook->findByUid( localUID );
1346 if ( !addr.isEmpty() ) { 1347 if ( !addr.isEmpty() ) {
1347 mEditorDialog->setAddressee( addr ); 1348 mEditorDialog->setAddressee( addr );
1348 KApplication::execDialog ( mEditorDialog ); 1349 KApplication::execDialog ( mEditorDialog );
1349 } 1350 }
1350} 1351}
1351 1352
1352/** 1353/**
1353 Shows or edits the detail view for the given uid. If the uid is QString::null, 1354 Shows or edits the detail view for the given uid. If the uid is QString::null,
1354 the method will try to find a selected addressee in the view. 1355 the method will try to find a selected addressee in the view.
1355 */ 1356 */
1356void KABCore::executeContact( const QString &uid /*US = QString::null*/ ) 1357void KABCore::executeContact( const QString &uid /*US = QString::null*/ )
1357{ 1358{
1358 if ( mMultipleViewsAtOnce ) 1359 if ( mMultipleViewsAtOnce )
1359 { 1360 {
1360 editContact( uid ); 1361 editContact( uid );
1361 } 1362 }
1362 else 1363 else
1363 { 1364 {
1364 setDetailsVisible( true ); 1365 setDetailsVisible( true );
1365 mActionDetails->setChecked(true); 1366 mActionDetails->setChecked(true);
1366 } 1367 }
1367 1368
1368} 1369}
1369 1370
1370void KABCore::save() 1371void KABCore::save()
1371{ 1372{
1372 if (syncManager->blockSave()) 1373 if (syncManager->blockSave())
1373 return; 1374 return;
1374 if ( !mModified ) 1375 if ( !mModified )
1375 return; 1376 return;
1376 1377
1377 syncManager->setBlockSave(true); 1378 syncManager->setBlockSave(true);
1378 QString text = i18n( "There was an error while attempting to save\n the " 1379 QString text = i18n( "There was an error while attempting to save\n the "
1379 "address book. Please check that some \nother application is " 1380 "address book. Please check that some \nother application is "
1380 "not using it. " ); 1381 "not using it. " );
1381 message(i18n("Saving ... please wait! "), false); 1382 message(i18n("Saving ... please wait! "), false);
1382 //qApp->processEvents(); 1383 //qApp->processEvents();
1383#ifndef KAB_EMBEDDED 1384#ifndef KAB_EMBEDDED
1384 KABC::StdAddressBook *b = dynamic_cast<KABC::StdAddressBook*>( mAddressBook ); 1385 KABC::StdAddressBook *b = dynamic_cast<KABC::StdAddressBook*>( mAddressBook );
1385 if ( !b || !b->save() ) { 1386 if ( !b || !b->save() ) {
1386 KMessageBox::error( this, text, i18n( "Unable to Save" ) ); 1387 KMessageBox::error( this, text, i18n( "Unable to Save" ) );
1387 } 1388 }
1388#else //KAB_EMBEDDED 1389#else //KAB_EMBEDDED
1389 KABC::StdAddressBook *b = (KABC::StdAddressBook*)( mAddressBook ); 1390 KABC::StdAddressBook *b = (KABC::StdAddressBook*)( mAddressBook );
1390 if ( !b || !b->save() ) { 1391 if ( !b || !b->save() ) {
1391 QMessageBox::critical( this, i18n( "Unable to Save" ), text, i18n("Ok")); 1392 QMessageBox::critical( this, i18n( "Unable to Save" ), text, i18n("Ok"));
1392 } 1393 }
1393#endif //KAB_EMBEDDED 1394#endif //KAB_EMBEDDED
1394 1395
1395 message(i18n("Addressbook saved!")); 1396 message(i18n("Addressbook saved!"));
1396 setModified( false ); 1397 setModified( false );
1397 syncManager->setBlockSave(false); 1398 syncManager->setBlockSave(false);
1398} 1399}
1399 1400
1400 1401
1401void KABCore::undo() 1402void KABCore::undo()
1402{ 1403{
1403 UndoStack::instance()->undo(); 1404 UndoStack::instance()->undo();
1404 1405
1405 // Refresh the view 1406 // Refresh the view
1406 mViewManager->refreshView(); 1407 mViewManager->refreshView();
1407} 1408}
1408 1409
1409void KABCore::redo() 1410void KABCore::redo()
1410{ 1411{
1411 RedoStack::instance()->redo(); 1412 RedoStack::instance()->redo();
1412 1413
1413 // Refresh the view 1414 // Refresh the view
1414 mViewManager->refreshView(); 1415 mViewManager->refreshView();
1415} 1416}
1416 1417
1417void KABCore::setJumpButtonBarVisible( bool visible ) 1418void KABCore::setJumpButtonBarVisible( bool visible )
1418{ 1419{
1419 if (mMultipleViewsAtOnce) 1420 if (mMultipleViewsAtOnce)
1420 { 1421 {
1421 if ( visible ) 1422 if ( visible )
1422 mJumpButtonBar->show(); 1423 mJumpButtonBar->show();
@@ -2041,313 +2042,313 @@ void KABCore::initActions()
2041 "edit__categories" ); 2042 "edit__categories" );
2042 2043
2043 mActionRemoveVoice = new KAction( i18n( "Remove \"voice\"..." ), 0, this, 2044 mActionRemoveVoice = new KAction( i18n( "Remove \"voice\"..." ), 0, this,
2044 SLOT( removeVoice() ), actionCollection(), 2045 SLOT( removeVoice() ), actionCollection(),
2045 "remove_voice" ); 2046 "remove_voice" );
2046 mActionSetFormattedName = new KAction( i18n( "Set formatted name..." ), 0, this, 2047 mActionSetFormattedName = new KAction( i18n( "Set formatted name..." ), 0, this,
2047 SLOT( setFormattedName() ), actionCollection(), 2048 SLOT( setFormattedName() ), actionCollection(),
2048 "set_formatted" ); 2049 "set_formatted" );
2049 2050
2050 mActionManageCategories= new KAction( i18n( "Manage new categories..." ), 0, this, 2051 mActionManageCategories= new KAction( i18n( "Manage new categories..." ), 0, this,
2051 SLOT( manageCategories() ), actionCollection(), 2052 SLOT( manageCategories() ), actionCollection(),
2052 "remove_voice" ); 2053 "remove_voice" );
2053 2054
2054 2055
2055 mActionImportOL = new KAction( i18n( "Import from Outlook..." ), 0, this, 2056 mActionImportOL = new KAction( i18n( "Import from Outlook..." ), 0, this,
2056 SLOT( importFromOL() ), actionCollection(), 2057 SLOT( importFromOL() ), actionCollection(),
2057 "import_OL" ); 2058 "import_OL" );
2058#ifdef KAB_EMBEDDED 2059#ifdef KAB_EMBEDDED
2059 mActionLicence = new KAction( i18n( "Licence" ), 0, 2060 mActionLicence = new KAction( i18n( "Licence" ), 0,
2060 this, SLOT( showLicence() ), actionCollection(), 2061 this, SLOT( showLicence() ), actionCollection(),
2061 "licence_about_data" ); 2062 "licence_about_data" );
2062 mActionFaq = new KAction( i18n( "Faq" ), 0, 2063 mActionFaq = new KAction( i18n( "Faq" ), 0,
2063 this, SLOT( faq() ), actionCollection(), 2064 this, SLOT( faq() ), actionCollection(),
2064 "faq_about_data" ); 2065 "faq_about_data" );
2065 mActionWN = new KAction( i18n( "What's New?" ), 0, 2066 mActionWN = new KAction( i18n( "What's New?" ), 0,
2066 this, SLOT( whatsnew() ), actionCollection(), 2067 this, SLOT( whatsnew() ), actionCollection(),
2067 "wn" ); 2068 "wn" );
2068 mActionSyncHowto = new KAction( i18n( "Sync HowTo" ), 0, 2069 mActionSyncHowto = new KAction( i18n( "Sync HowTo" ), 0,
2069 this, SLOT( synchowto() ), actionCollection(), 2070 this, SLOT( synchowto() ), actionCollection(),
2070 "sync" ); 2071 "sync" );
2071 mActionKdeSyncHowto = new KAction( i18n( "Kde Sync HowTo" ), 0, 2072 mActionKdeSyncHowto = new KAction( i18n( "Kde Sync HowTo" ), 0,
2072 this, SLOT( kdesynchowto() ), actionCollection(), 2073 this, SLOT( kdesynchowto() ), actionCollection(),
2073 "kdesync" ); 2074 "kdesync" );
2074 mActionMultiSyncHowto = new KAction( i18n( "Multi Sync HowTo" ), 0, 2075 mActionMultiSyncHowto = new KAction( i18n( "Multi Sync HowTo" ), 0,
2075 this, SLOT( multisynchowto() ), actionCollection(), 2076 this, SLOT( multisynchowto() ), actionCollection(),
2076 "multisync" ); 2077 "multisync" );
2077 2078
2078 mActionAboutKAddressbook = new KAction( i18n( "&About KAddressBook" ), "kaddressbook2", 0, 2079 mActionAboutKAddressbook = new KAction( i18n( "&About KAddressBook" ), "kaddressbook2", 0,
2079 this, SLOT( createAboutData() ), actionCollection(), 2080 this, SLOT( createAboutData() ), actionCollection(),
2080 "kaddressbook_about_data" ); 2081 "kaddressbook_about_data" );
2081#endif //KAB_EMBEDDED 2082#endif //KAB_EMBEDDED
2082 2083
2083 clipboardDataChanged(); 2084 clipboardDataChanged();
2084 connect( UndoStack::instance(), SIGNAL( changed() ), SLOT( updateActionMenu() ) ); 2085 connect( UndoStack::instance(), SIGNAL( changed() ), SLOT( updateActionMenu() ) );
2085 connect( RedoStack::instance(), SIGNAL( changed() ), SLOT( updateActionMenu() ) ); 2086 connect( RedoStack::instance(), SIGNAL( changed() ), SLOT( updateActionMenu() ) );
2086} 2087}
2087 2088
2088//US we need this function, to plug all actions into the correct menues. 2089//US we need this function, to plug all actions into the correct menues.
2089// KDE uses a XML format to plug the actions, but we work her without this overhead. 2090// KDE uses a XML format to plug the actions, but we work her without this overhead.
2090void KABCore::addActionsManually() 2091void KABCore::addActionsManually()
2091{ 2092{
2092//US qDebug("KABCore::initActions(): mIsPart %i", mIsPart); 2093//US qDebug("KABCore::initActions(): mIsPart %i", mIsPart);
2093 2094
2094#ifdef KAB_EMBEDDED 2095#ifdef KAB_EMBEDDED
2095 QPopupMenu *fileMenu = new QPopupMenu( this ); 2096 QPopupMenu *fileMenu = new QPopupMenu( this );
2096 QPopupMenu *editMenu = new QPopupMenu( this ); 2097 QPopupMenu *editMenu = new QPopupMenu( this );
2097 QPopupMenu *helpMenu = new QPopupMenu( this ); 2098 QPopupMenu *helpMenu = new QPopupMenu( this );
2098 2099
2099 KToolBar* tb = mMainWindow->toolBar(); 2100 KToolBar* tb = mMainWindow->toolBar();
2100 2101
2101#ifndef DESKTOP_VERSION 2102#ifndef DESKTOP_VERSION
2102 if ( KABPrefs::instance()->mFullMenuBarVisible ) { 2103 if ( KABPrefs::instance()->mFullMenuBarVisible ) {
2103#endif 2104#endif
2104 QMenuBar* mb = mMainWindow->menuBar(); 2105 QMenuBar* mb = mMainWindow->menuBar();
2105 2106
2106 //US setup menubar. 2107 //US setup menubar.
2107 //Disable the following block if you do not want to have a menubar. 2108 //Disable the following block if you do not want to have a menubar.
2108 mb->insertItem( i18n("&File"), fileMenu ); 2109 mb->insertItem( i18n("&File"), fileMenu );
2109 mb->insertItem( i18n("&Edit"), editMenu ); 2110 mb->insertItem( i18n("&Edit"), editMenu );
2110 mb->insertItem( i18n("&View"), viewMenu ); 2111 mb->insertItem( i18n("&View"), viewMenu );
2111 mb->insertItem( i18n("&Settings"), settingsMenu ); 2112 mb->insertItem( i18n("&Settings"), settingsMenu );
2112 mb->insertItem( i18n("Synchronize"), syncMenu ); 2113 mb->insertItem( i18n("Synchronize"), syncMenu );
2113 //mb->insertItem( i18n("&Change"), changeMenu ); 2114 //mb->insertItem( i18n("&Change"), changeMenu );
2114 mb->insertItem( i18n("&Help"), helpMenu ); 2115 mb->insertItem( i18n("&Help"), helpMenu );
2115 mIncSearchWidget = new IncSearchWidget( tb ); 2116 mIncSearchWidget = new IncSearchWidget( tb );
2116 // tb->insertWidget(-1, 0, mIncSearchWidget); 2117 // tb->insertWidget(-1, 0, mIncSearchWidget);
2117#ifndef DESKTOP_VERSION 2118#ifndef DESKTOP_VERSION
2118 } else { 2119 } else {
2119 //US setup toolbar 2120 //US setup toolbar
2120 QPEMenuBar *menuBarTB = new QPEMenuBar( tb ); 2121 QPEMenuBar *menuBarTB = new QPEMenuBar( tb );
2121 QPopupMenu *popupBarTB = new QPopupMenu( this ); 2122 QPopupMenu *popupBarTB = new QPopupMenu( this );
2122 menuBarTB->insertItem( "ME", popupBarTB); 2123 menuBarTB->insertItem( "ME", popupBarTB);
2123 tb->insertWidget(-1, 0, menuBarTB); 2124 tb->insertWidget(-1, 0, menuBarTB);
2124 mIncSearchWidget = new IncSearchWidget( tb ); 2125 mIncSearchWidget = new IncSearchWidget( tb );
2125 2126
2126 tb->enableMoving(false); 2127 tb->enableMoving(false);
2127 popupBarTB->insertItem( i18n("&File"), fileMenu ); 2128 popupBarTB->insertItem( i18n("&File"), fileMenu );
2128 popupBarTB->insertItem( i18n("&Edit"), editMenu ); 2129 popupBarTB->insertItem( i18n("&Edit"), editMenu );
2129 popupBarTB->insertItem( i18n("&View"), viewMenu ); 2130 popupBarTB->insertItem( i18n("&View"), viewMenu );
2130 popupBarTB->insertItem( i18n("&Settings"), settingsMenu ); 2131 popupBarTB->insertItem( i18n("&Settings"), settingsMenu );
2131 popupBarTB->insertItem( i18n("Synchronize"), syncMenu ); 2132 popupBarTB->insertItem( i18n("Synchronize"), syncMenu );
2132 mViewManager->getFilterAction()->plug ( popupBarTB); 2133 mViewManager->getFilterAction()->plug ( popupBarTB);
2133 //popupBarTB->insertItem( i18n("&Change selected"), changeMenu ); 2134 //popupBarTB->insertItem( i18n("&Change selected"), changeMenu );
2134 popupBarTB->insertItem( i18n("&Help"), helpMenu ); 2135 popupBarTB->insertItem( i18n("&Help"), helpMenu );
2135 if (QApplication::desktop()->width() > 320 ) { 2136 if (QApplication::desktop()->width() > 320 ) {
2136 // mViewManager->getFilterAction()->plug ( tb); 2137 // mViewManager->getFilterAction()->plug ( tb);
2137 } 2138 }
2138 } 2139 }
2139#endif 2140#endif
2140 // mActionQuit->plug ( mMainWindow->toolBar()); 2141 // mActionQuit->plug ( mMainWindow->toolBar());
2141 2142
2142 2143
2143 2144
2144 //US Now connect the actions with the menue entries. 2145 //US Now connect the actions with the menue entries.
2145#ifdef DESKTOP_VERSION 2146#ifdef DESKTOP_VERSION
2146 mActionPrint->plug( fileMenu ); 2147 mActionPrint->plug( fileMenu );
2147 mActionPrintDetails->plug( fileMenu ); 2148 mActionPrintDetails->plug( fileMenu );
2148 fileMenu->insertSeparator(); 2149 fileMenu->insertSeparator();
2149#endif 2150#endif
2150 mActionMail->plug( fileMenu ); 2151 mActionMail->plug( fileMenu );
2151 fileMenu->insertSeparator(); 2152 fileMenu->insertSeparator();
2152 2153
2153 mActionNewContact->plug( fileMenu ); 2154 mActionNewContact->plug( fileMenu );
2154 mActionNewContact->plug( tb ); 2155 mActionNewContact->plug( tb );
2155 2156
2156 mActionEditAddressee->plug( fileMenu ); 2157 mActionEditAddressee->plug( fileMenu );
2157 // if ((KGlobal::getDesktopSize() > KGlobal::Small ) || 2158 // if ((KGlobal::getDesktopSize() > KGlobal::Small ) ||
2158 // (!KABPrefs::instance()->mMultipleViewsAtOnce )) 2159 // (!KABPrefs::instance()->mMultipleViewsAtOnce ))
2159 mActionEditAddressee->plug( tb ); 2160 mActionEditAddressee->plug( tb );
2160 2161
2161 fileMenu->insertSeparator(); 2162 fileMenu->insertSeparator();
2162 mActionSave->plug( fileMenu ); 2163 mActionSave->plug( fileMenu );
2163 fileMenu->insertItem( "&Import", ImportMenu ); 2164 fileMenu->insertItem( "&Import", ImportMenu );
2164 fileMenu->insertItem( "&Export", ExportMenu ); 2165 fileMenu->insertItem( "&Export", ExportMenu );
2165 fileMenu->insertItem( i18n("&Change"), changeMenu ); 2166 fileMenu->insertItem( i18n("&Change"), changeMenu );
2166#ifndef DESKTOP_VERSION 2167#ifndef DESKTOP_VERSION
2167 if ( Ir::supported() ) fileMenu->insertItem( i18n("&Beam"), beamMenu ); 2168 if ( Ir::supported() ) fileMenu->insertItem( i18n("&Beam"), beamMenu );
2168#endif 2169#endif
2169#if 0 2170#if 0
2170 // PENDING fix MailVCard 2171 // PENDING fix MailVCard
2171 fileMenu->insertSeparator(); 2172 fileMenu->insertSeparator();
2172 mActionMailVCard->plug( fileMenu ); 2173 mActionMailVCard->plug( fileMenu );
2173#endif 2174#endif
2174#ifndef DESKTOP_VERSION 2175#ifndef DESKTOP_VERSION
2175 if ( Ir::supported() ) mActionBR->plug( beamMenu ); 2176 if ( Ir::supported() ) mActionBR->plug( beamMenu );
2176 if ( Ir::supported() ) mActionBeamVCard->plug( beamMenu ); 2177 if ( Ir::supported() ) mActionBeamVCard->plug( beamMenu );
2177 if ( Ir::supported() ) mActionBeam->plug( beamMenu ); 2178 if ( Ir::supported() ) mActionBeam->plug( beamMenu );
2178#endif 2179#endif
2179 fileMenu->insertSeparator(); 2180 fileMenu->insertSeparator();
2180 mActionQuit->plug( fileMenu ); 2181 mActionQuit->plug( fileMenu );
2181#ifdef _WIN32_ 2182#ifdef _OL_IMPORT_
2182 mActionImportOL->plug( ImportMenu ); 2183 mActionImportOL->plug( ImportMenu );
2183#endif 2184#endif
2184 // edit menu 2185 // edit menu
2185 mActionUndo->plug( editMenu ); 2186 mActionUndo->plug( editMenu );
2186 mActionRedo->plug( editMenu ); 2187 mActionRedo->plug( editMenu );
2187 editMenu->insertSeparator(); 2188 editMenu->insertSeparator();
2188 mActionCut->plug( editMenu ); 2189 mActionCut->plug( editMenu );
2189 mActionCopy->plug( editMenu ); 2190 mActionCopy->plug( editMenu );
2190 mActionPaste->plug( editMenu ); 2191 mActionPaste->plug( editMenu );
2191 mActionDelete->plug( editMenu ); 2192 mActionDelete->plug( editMenu );
2192 editMenu->insertSeparator(); 2193 editMenu->insertSeparator();
2193 mActionSelectAll->plug( editMenu ); 2194 mActionSelectAll->plug( editMenu );
2194 2195
2195 mActionSetFormattedName->plug( changeMenu ); 2196 mActionSetFormattedName->plug( changeMenu );
2196 mActionRemoveVoice->plug( changeMenu ); 2197 mActionRemoveVoice->plug( changeMenu );
2197 // settings menu 2198 // settings menu
2198//US special menuentry to configure the addressbook resources. On KDE 2199//US special menuentry to configure the addressbook resources. On KDE
2199// you do that through the control center !!! 2200// you do that through the control center !!!
2200 mActionConfigResources->plug( settingsMenu ); 2201 mActionConfigResources->plug( settingsMenu );
2201 settingsMenu->insertSeparator(); 2202 settingsMenu->insertSeparator();
2202 2203
2203 mActionConfigKAddressbook->plug( settingsMenu ); 2204 mActionConfigKAddressbook->plug( settingsMenu );
2204 2205
2205 if ( mIsPart ) { 2206 if ( mIsPart ) {
2206 //US not implemented yet 2207 //US not implemented yet
2207 //mActionConfigShortcuts->plug( settingsMenu ); 2208 //mActionConfigShortcuts->plug( settingsMenu );
2208 //mActionConfigureToolbars->plug( settingsMenu ); 2209 //mActionConfigureToolbars->plug( settingsMenu );
2209 2210
2210 } else { 2211 } else {
2211 //US not implemented yet 2212 //US not implemented yet
2212 //mActionKeyBindings->plug( settingsMenu ); 2213 //mActionKeyBindings->plug( settingsMenu );
2213 } 2214 }
2214 2215
2215 settingsMenu->insertSeparator(); 2216 settingsMenu->insertSeparator();
2216 2217
2217 mActionJumpBar->plug( settingsMenu ); 2218 mActionJumpBar->plug( settingsMenu );
2218 mActionDetails->plug( settingsMenu ); 2219 mActionDetails->plug( settingsMenu );
2219 //if (!KABPrefs::instance()->mMultipleViewsAtOnce || KGlobal::getDesktopSize() == KGlobal::Desktop ) 2220 //if (!KABPrefs::instance()->mMultipleViewsAtOnce || KGlobal::getDesktopSize() == KGlobal::Desktop )
2220 mActionDetails->plug( tb ); 2221 mActionDetails->plug( tb );
2221 settingsMenu->insertSeparator(); 2222 settingsMenu->insertSeparator();
2222#ifndef DESKTOP_VERSION 2223#ifndef DESKTOP_VERSION
2223 if ( Ir::supported() ) mActionBR->plug(settingsMenu ); 2224 if ( Ir::supported() ) mActionBR->plug(settingsMenu );
2224#endif
2225 settingsMenu->insertSeparator(); 2225 settingsMenu->insertSeparator();
2226#endif
2226 2227
2227 mActionWhoAmI->plug( settingsMenu ); 2228 mActionWhoAmI->plug( settingsMenu );
2228 mActionEditCategories->plug( settingsMenu ); 2229 mActionEditCategories->plug( settingsMenu );
2229 mActionEditCategories->plug( changeMenu ); 2230 mActionEditCategories->plug( changeMenu );
2230 mActionCategories->plug( changeMenu ); 2231 mActionCategories->plug( changeMenu );
2231 mActionManageCategories->plug( changeMenu ); 2232 mActionManageCategories->plug( changeMenu );
2232 2233
2233 mActionCategories->plug( settingsMenu ); 2234 mActionCategories->plug( settingsMenu );
2234 mActionManageCategories->plug( settingsMenu ); 2235 mActionManageCategories->plug( settingsMenu );
2235 2236
2236 2237
2237 mActionWN->plug( helpMenu ); 2238 mActionWN->plug( helpMenu );
2238 mActionSyncHowto->plug( helpMenu ); 2239 mActionSyncHowto->plug( helpMenu );
2239 mActionKdeSyncHowto->plug( helpMenu ); 2240 mActionKdeSyncHowto->plug( helpMenu );
2240 mActionMultiSyncHowto->plug( helpMenu ); 2241 mActionMultiSyncHowto->plug( helpMenu );
2241 mActionFaq->plug( helpMenu ); 2242 mActionFaq->plug( helpMenu );
2242 mActionLicence->plug( helpMenu ); 2243 mActionLicence->plug( helpMenu );
2243 mActionAboutKAddressbook->plug( helpMenu ); 2244 mActionAboutKAddressbook->plug( helpMenu );
2244 2245
2245 if (KGlobal::getDesktopSize() > KGlobal::Small ) { 2246 if (KGlobal::getDesktopSize() > KGlobal::Small ) {
2246 2247
2247 mActionSave->plug( tb ); 2248 mActionSave->plug( tb );
2248 mViewManager->getFilterAction()->plug ( tb); 2249 mViewManager->getFilterAction()->plug ( tb);
2249 //LR hide filteraction on started in 480x640 2250 //LR hide filteraction on started in 480x640
2250 if (QApplication::desktop()->width() == 480 ) { 2251 if (QApplication::desktop()->width() == 480 ) {
2251 mViewManager->getFilterAction()->setComboWidth( 0 ); 2252 mViewManager->getFilterAction()->setComboWidth( 0 );
2252 } 2253 }
2253 mActionUndo->plug( tb ); 2254 mActionUndo->plug( tb );
2254 mActionDelete->plug( tb ); 2255 mActionDelete->plug( tb );
2255 mActionRedo->plug( tb ); 2256 mActionRedo->plug( tb );
2256 } else { 2257 } else {
2257 mActionSave->plug( tb ); 2258 mActionSave->plug( tb );
2258 tb->enableMoving(false); 2259 tb->enableMoving(false);
2259 } 2260 }
2260 //mActionQuit->plug ( tb ); 2261 //mActionQuit->plug ( tb );
2261 // tb->insertWidget(-1, 0, mIncSearchWidget, 6); 2262 // tb->insertWidget(-1, 0, mIncSearchWidget, 6);
2262 2263
2263 //US link the searchwidget first to this. 2264 //US link the searchwidget first to this.
2264 // The real linkage to the toolbar happens later. 2265 // The real linkage to the toolbar happens later.
2265//US mIncSearchWidget->reparent(tb, 0, QPoint(50,0), TRUE); 2266//US mIncSearchWidget->reparent(tb, 0, QPoint(50,0), TRUE);
2266//US tb->insertItem( mIncSearchWidget ); 2267//US tb->insertItem( mIncSearchWidget );
2267/*US 2268/*US
2268 mIncSearchWidget = new IncSearchWidget( tb ); 2269 mIncSearchWidget = new IncSearchWidget( tb );
2269 connect( mIncSearchWidget, SIGNAL( doSearch( const QString& ) ), 2270 connect( mIncSearchWidget, SIGNAL( doSearch( const QString& ) ),
2270 SLOT( incrementalSearch( const QString& ) ) ); 2271 SLOT( incrementalSearch( const QString& ) ) );
2271 2272
2272 mJumpButtonBar = new JumpButtonBar( this, this ); 2273 mJumpButtonBar = new JumpButtonBar( this, this );
2273 2274
2274//US topLayout->addWidget( mJumpButtonBar ); 2275//US topLayout->addWidget( mJumpButtonBar );
2275 this->layout()->add( mJumpButtonBar ); 2276 this->layout()->add( mJumpButtonBar );
2276*/ 2277*/
2277 2278
2278#endif //KAB_EMBEDDED 2279#endif //KAB_EMBEDDED
2279 2280
2280 mActionExport2phone->plug( ExportMenu ); 2281 mActionExport2phone->plug( ExportMenu );
2281 connect ( syncMenu, SIGNAL( activated ( int ) ), syncManager, SLOT (slotSyncMenu( int ) ) ); 2282 connect ( syncMenu, SIGNAL( activated ( int ) ), syncManager, SLOT (slotSyncMenu( int ) ) );
2282 syncManager->fillSyncMenu(); 2283 syncManager->fillSyncMenu();
2283 2284
2284} 2285}
2285void KABCore::showLicence() 2286void KABCore::showLicence()
2286{ 2287{
2287 KApplication::showLicence(); 2288 KApplication::showLicence();
2288} 2289}
2289 2290
2290void KABCore::manageCategories( ) 2291void KABCore::manageCategories( )
2291{ 2292{
2292 KABCatPrefs* cp = new KABCatPrefs(); 2293 KABCatPrefs* cp = new KABCatPrefs();
2293 cp->show(); 2294 cp->show();
2294 int w =cp->sizeHint().width() ; 2295 int w =cp->sizeHint().width() ;
2295 int h = cp->sizeHint().height() ; 2296 int h = cp->sizeHint().height() ;
2296 int dw = QApplication::desktop()->width(); 2297 int dw = QApplication::desktop()->width();
2297 int dh = QApplication::desktop()->height(); 2298 int dh = QApplication::desktop()->height();
2298 cp->setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); 2299 cp->setGeometry( (dw-w)/2, (dh - h )/2 ,w,h );
2299 if ( !cp->exec() ) { 2300 if ( !cp->exec() ) {
2300 delete cp; 2301 delete cp;
2301 return; 2302 return;
2302 } 2303 }
2303 int count = 0; 2304 int count = 0;
2304 int cc = 0; 2305 int cc = 0;
2305 message( i18n("Please wait, processing categories...")); 2306 message( i18n("Please wait, processing categories..."));
2306 if ( cp->addCat() ) { 2307 if ( cp->addCat() ) {
2307 KABC::AddressBook::Iterator it; 2308 KABC::AddressBook::Iterator it;
2308 QStringList catList = KABPrefs::instance()->mCustomCategories; 2309 QStringList catList = KABPrefs::instance()->mCustomCategories;
2309 for( it = mAddressBook->begin(); it != mAddressBook->end(); ++it ) { 2310 for( it = mAddressBook->begin(); it != mAddressBook->end(); ++it ) {
2310 ++cc; 2311 ++cc;
2311 if ( cc %10 == 0) 2312 if ( cc %10 == 0)
2312 message(i18n("Processing contact #%1").arg(cc)); 2313 message(i18n("Processing contact #%1").arg(cc));
2313 QStringList catIncList = (*it).categories(); 2314 QStringList catIncList = (*it).categories();
2314 int i; 2315 int i;
2315 for( i = 0; i< catIncList.count(); ++i ) { 2316 for( i = 0; i< catIncList.count(); ++i ) {
2316 if ( !catList.contains (catIncList[i])) { 2317 if ( !catList.contains (catIncList[i])) {
2317 catList.append( catIncList[i] ); 2318 catList.append( catIncList[i] );
2318 //qDebug("add cat %s ", catIncList[i].latin1()); 2319 //qDebug("add cat %s ", catIncList[i].latin1());
2319 ++count; 2320 ++count;
2320 } 2321 }
2321 } 2322 }
2322 } 2323 }
2323 catList.sort(); 2324 catList.sort();
2324 KABPrefs::instance()->mCustomCategories = catList; 2325 KABPrefs::instance()->mCustomCategories = catList;
2325 KABPrefs::instance()->writeConfig(); 2326 KABPrefs::instance()->writeConfig();
2326 message(QString::number( count )+ i18n(" categories added to list! ")); 2327 message(QString::number( count )+ i18n(" categories added to list! "));
2327 } else { 2328 } else {
2328 QStringList catList = KABPrefs::instance()->mCustomCategories; 2329 QStringList catList = KABPrefs::instance()->mCustomCategories;
2329 QStringList catIncList; 2330 QStringList catIncList;
2330 QStringList newCatList; 2331 QStringList newCatList;
2331 KABC::AddressBook::Iterator it; 2332 KABC::AddressBook::Iterator it;
2332 for( it = mAddressBook->begin(); it != mAddressBook->end(); ++it ) { 2333 for( it = mAddressBook->begin(); it != mAddressBook->end(); ++it ) {
2333 ++cc; 2334 ++cc;
2334 if ( cc %10 == 0) 2335 if ( cc %10 == 0)
2335 message(i18n("Processing contact #%1").arg(cc)); 2336 message(i18n("Processing contact #%1").arg(cc));
2336 QStringList catIncList = (*it).categories(); 2337 QStringList catIncList = (*it).categories();
2337 int i; 2338 int i;
2338 if ( catIncList.count() ) { 2339 if ( catIncList.count() ) {
2339 newCatList.clear(); 2340 newCatList.clear();
2340 for( i = 0; i< catIncList.count(); ++i ) { 2341 for( i = 0; i< catIncList.count(); ++i ) {
2341 if ( catList.contains (catIncList[i])) { 2342 if ( catList.contains (catIncList[i])) {
2342 newCatList.append( catIncList[i] ); 2343 newCatList.append( catIncList[i] );
2343 } 2344 }
2344 } 2345 }
2345 newCatList.sort(); 2346 newCatList.sort();
2346 (*it).setCategories( newCatList ); 2347 (*it).setCategories( newCatList );
2347 mAddressBook->insertAddressee( (*it) ); 2348 mAddressBook->insertAddressee( (*it) );
2348 } 2349 }
2349 } 2350 }
2350 setModified( true ); 2351 setModified( true );
2351 mViewManager->refreshView(); 2352 mViewManager->refreshView();
2352 message( i18n("Removing categories done!")); 2353 message( i18n("Removing categories done!"));
2353 } 2354 }
diff --git a/kaddressbook/kaddressbook.pro b/kaddressbook/kaddressbook.pro
index fbbc026..e73de06 100644
--- a/kaddressbook/kaddressbook.pro
+++ b/kaddressbook/kaddressbook.pro
@@ -1,184 +1,177 @@
1 TEMPLATE= app 1 TEMPLATE= app
2 CONFIG = qt warn_on 2 CONFIG = qt warn_on
3 TARGET = kapi 3 TARGET = kapi
4DESTDIR= ../bin 4DESTDIR= ../bin
5 5
6include( ../variables.pri ) 6include( ../variables.pri )
7 7
8 8
9INCLUDEPATH += . ./details ./features ./xxport ../libkdepim ../microkde ../microkde/kdecore ../microkde/kutils ../microkde/kio/kfile ../microkde/kio/kio ../microkde/kdeui ../microkde/kresources ../kabc ../ interfaces 9INCLUDEPATH += . ./details ./features ./xxport ../libkdepim ../microkde ../microkde/kdecore ../microkde/kutils ../microkde/kio/kfile ../microkde/kio/kio ../microkde/kdeui ../microkde/kresources ../kabc ../ interfaces
10DEFINES += KAB_EMBEDDED KAB_NOSPLITTER DESKTOP_VERSION 10DEFINES += KAB_EMBEDDED KAB_NOSPLITTER DESKTOP_VERSION
11 11
12unix : { 12unix : {
13LIBS += ../bin/libmicrokdepim.so 13LIBS += ../bin/libmicrokdepim.so
14LIBS += ../bin/libmicrokde.so 14LIBS += ../bin/libmicrokde.so
15LIBS += ../bin/libmicrokabc.so 15LIBS += ../bin/libmicrokabc.so
16LIBS += ../bin/libmicrokcal.so 16LIBS += ../bin/libmicrokcal.so
17#LIBS += -lldap 17#LIBS += -lldap
18OBJECTS_DIR = obj/unix 18OBJECTS_DIR = obj/unix
19MOC_DIR = moc/unix 19MOC_DIR = moc/unix
20} 20}
21win32: { 21win32: {
22RC_FILE = winicons.rc 22RC_FILE = winicons.rc
23DEFINES += _WIN32_ 23DEFINES += _WIN32_
24LIBS += ../bin/microkdepim.lib 24LIBS += ../bin/microkdepim.lib
25LIBS += ../bin/microkcal.lib 25LIBS += ../bin/microkcal.lib
26LIBS += ../bin/microkde.lib 26LIBS += ../bin/microkde.lib
27LIBS += ../bin/microkabc.lib 27LIBS += ../bin/microkabc.lib
28QMAKE_LINK += /NODEFAULTLIB:LIBC 28QMAKE_LINK += /NODEFAULTLIB:LIBC
29OBJECTS_DIR = obj/win 29OBJECTS_DIR = obj/win
30MOC_DIR = moc/win 30MOC_DIR = moc/win
31#olimport section
32#blabla: {
33
31LIBS += mfc71u.lib 34LIBS += mfc71u.lib
35DEFINES += _OL_IMPORT_
36HEADERS = ../outport/msoutl9.h \
37 kaimportoldialog.h
38SOURCES = ../outport/msoutl9.cpp \
39 kaimportoldialog.cpp
40#}
41#olimport section end
32} 42}
33 43
34
35
36
37
38
39
40
41INTERFACES = \ 44INTERFACES = \
42# filteredit_base.ui \ 45# filteredit_base.ui \
43# kofilterview_base.ui \ 46# kofilterview_base.ui \
44 47
45HEADERS = \ 48HEADERS += \
46features/mergewidget.h \ 49features/mergewidget.h \
47features/distributionlistwidget.h \ 50features/distributionlistwidget.h \
48kcmconfigs/addresseewidget.h \ 51kcmconfigs/addresseewidget.h \
49kcmconfigs/extensionconfigdialog.h \ 52kcmconfigs/extensionconfigdialog.h \
50kcmconfigs/kcmkabconfig.h \ 53kcmconfigs/kcmkabconfig.h \
51kcmconfigs/kabconfigwidget.h \ 54kcmconfigs/kabconfigwidget.h \
52addresseeeditordialog.h \ 55addresseeeditordialog.h \
53addresseeeditorwidget.h \ 56addresseeeditorwidget.h \
54addresseditwidget.h \ 57addresseditwidget.h \
55addresseeconfig.h \ 58addresseeconfig.h \
56addresseeutil.h \ 59addresseeutil.h \
57emaileditwidget.h \ 60emaileditwidget.h \
58filtereditdialog.h \ 61filtereditdialog.h \
59kaddressbookmain.h \ 62kaddressbookmain.h \
60kabprefs.h \ 63kabprefs.h \
61kabcore.h \ 64kabcore.h \
62viewmanager.h \ 65viewmanager.h \
63extensionmanager.h \ 66extensionmanager.h \
64extensionwidget.h \ 67extensionwidget.h \
65kaddressbookview.h \ 68kaddressbookview.h \
66geowidget.h \ 69geowidget.h \
67imagewidget.h \ 70imagewidget.h \
68incsearchwidget.h \ 71incsearchwidget.h \
69jumpbuttonbar.h \ 72jumpbuttonbar.h \
70phoneeditwidget.h \ 73phoneeditwidget.h \
71secrecywidget.h \ 74secrecywidget.h \
72keywidget.h \ 75keywidget.h \
73nameeditdialog.h \ 76nameeditdialog.h \
74filter.h \ 77filter.h \
75addviewdialog.h \ 78addviewdialog.h \
76configurewidget.h \ 79configurewidget.h \
77viewconfigurewidget.h \ 80viewconfigurewidget.h \
78viewconfigurefieldspage.h \ 81viewconfigurefieldspage.h \
79viewconfigurefilterpage.h \ 82viewconfigurefilterpage.h \
80typecombo.h \ 83typecombo.h \
81undo.h \ 84undo.h \
82undocmds.h \ 85undocmds.h \
83xxportmanager.h \ 86xxportmanager.h \
84xxportobject.h \ 87xxportobject.h \
85xxportselectdialog.h \ 88xxportselectdialog.h \
86details/detailsviewcontainer.h \ 89details/detailsviewcontainer.h \
87details/look_basic.h \ 90details/look_basic.h \
88details/look_html.h \ 91details/look_html.h \
89views/kaddressbookiconview.h \ 92views/kaddressbookiconview.h \
90views/kaddressbooktableview.h \ 93views/kaddressbooktableview.h \
91views/kaddressbookcardview.h \ 94views/kaddressbookcardview.h \
92views/configuretableviewdialog.h \ 95views/configuretableviewdialog.h \
93views/configurecardviewdialog.h \ 96views/configurecardviewdialog.h \
94views/cardview.h \ 97views/cardview.h \
95views/colorlistbox.h \ 98views/colorlistbox.h \
96views/contactlistview.h \ 99views/contactlistview.h \
97xxport/vcard_xxport.h \ 100xxport/vcard_xxport.h \
98xxport/kde2_xxport.h \ 101xxport/kde2_xxport.h \
99xxport/csv_xxport.h \ 102xxport/csv_xxport.h \
100xxport/csvimportdialog.h \ 103xxport/csvimportdialog.h \
101xxport/opie_xxport.h \ 104xxport/opie_xxport.h \
102xxport/qtopia_xxport.h \ 105xxport/qtopia_xxport.h \
103xxport/sharpdtm_xxport.h \ 106xxport/sharpdtm_xxport.h \
104#details/look_details.h \ 107#details/look_details.h \
105#mainwindoiw.h \ 108#mainwindoiw.h \
106# alarmclient.h \ 109# alarmclient.h \
107# calendarview.h \ 110# calendarview.h \
108# customlistviewitem.h \ 111# customlistviewitem.h \
109# datenavigator.h 112# datenavigator.h
110 113
111SOURCES = \ 114SOURCES += \
112addresseeeditordialog.cpp \ 115addresseeeditordialog.cpp \
113addresseeeditorwidget.cpp \ 116addresseeeditorwidget.cpp \
114addresseditwidget.cpp \ 117addresseditwidget.cpp \
115addresseeconfig.cpp \ 118addresseeconfig.cpp \
116addresseeutil.cpp \ 119addresseeutil.cpp \
117extensionmanager.cpp \ 120extensionmanager.cpp \
118features/mergewidget.cpp \ 121features/mergewidget.cpp \
119features/distributionlistwidget.cpp \ 122features/distributionlistwidget.cpp \
120kcmconfigs/addresseewidget.cpp \ 123kcmconfigs/addresseewidget.cpp \
121kcmconfigs/extensionconfigdialog.cpp \ 124kcmconfigs/extensionconfigdialog.cpp \
122kcmconfigs/kcmkabconfig.cpp \ 125kcmconfigs/kcmkabconfig.cpp \
123kcmconfigs/kabconfigwidget.cpp \ 126kcmconfigs/kabconfigwidget.cpp \
124emaileditwidget.cpp \ 127emaileditwidget.cpp \
125filtereditdialog.cpp \ 128filtereditdialog.cpp \
126mainembedded.cpp \ 129mainembedded.cpp \
127kaddressbookmain.cpp \ 130kaddressbookmain.cpp \
128kabcore.cpp \ 131kabcore.cpp \
129kabprefs.cpp \ 132kabprefs.cpp \
130viewmanager.cpp \ 133viewmanager.cpp \
131kaddressbookview.cpp \ 134kaddressbookview.cpp \
132extensionwidget.cpp \ 135extensionwidget.cpp \
133geowidget.cpp \ 136geowidget.cpp \
134imagewidget.cpp \ 137imagewidget.cpp \
135incsearchwidget.cpp \ 138incsearchwidget.cpp \
136jumpbuttonbar.cpp \ 139jumpbuttonbar.cpp \
137phoneeditwidget.cpp \ 140phoneeditwidget.cpp \
138secrecywidget.cpp \ 141secrecywidget.cpp \
139keywidget.cpp \ 142keywidget.cpp \
140nameeditdialog.cpp \ 143nameeditdialog.cpp \
141filter.cpp \ 144filter.cpp \
142addviewdialog.cpp \ 145addviewdialog.cpp \
143configurewidget.cpp \ 146configurewidget.cpp \
144viewconfigurewidget.cpp \ 147viewconfigurewidget.cpp \
145viewconfigurefieldspage.cpp \ 148viewconfigurefieldspage.cpp \
146viewconfigurefilterpage.cpp \ 149viewconfigurefilterpage.cpp \
147undo.cpp \ 150undo.cpp \
148undocmds.cpp \ 151undocmds.cpp \
149xxportmanager.cpp \ 152xxportmanager.cpp \
150xxportobject.cpp \ 153xxportobject.cpp \
151xxportselectdialog.cpp \ 154xxportselectdialog.cpp \
152details/detailsviewcontainer.cpp \ 155details/detailsviewcontainer.cpp \
153details/look_basic.cpp \ 156details/look_basic.cpp \
154details/look_html.cpp \ 157details/look_html.cpp \
155views/kaddressbookiconview.cpp \ 158views/kaddressbookiconview.cpp \
156views/kaddressbooktableview.cpp \ 159views/kaddressbooktableview.cpp \
157views/kaddressbookcardview.cpp \ 160views/kaddressbookcardview.cpp \
158views/configuretableviewdialog.cpp \ 161views/configuretableviewdialog.cpp \
159views/configurecardviewdialog.cpp \ 162views/configurecardviewdialog.cpp \
160views/cardview.cpp \ 163views/cardview.cpp \
161views/contactlistview.cpp \ 164views/contactlistview.cpp \
162views/colorlistbox.cpp \ 165views/colorlistbox.cpp \
163xxport/vcard_xxport.cpp \ 166xxport/vcard_xxport.cpp \
164xxport/kde2_xxport.cpp \ 167xxport/kde2_xxport.cpp \
165xxport/csv_xxport.cpp \ 168xxport/csv_xxport.cpp \
166xxport/csvimportdialog.cpp \ 169xxport/csvimportdialog.cpp \
167xxport/opie_xxport.cpp \ 170xxport/opie_xxport.cpp \
168xxport/qtopia_xxport.cpp \ 171xxport/qtopia_xxport.cpp \
169xxport/sharpdtm_xxport.cpp \ 172xxport/sharpdtm_xxport.cpp \
170#details/look_details.cpp \ 173#details/look_details.cpp \
171#mainwindow.cpp \ 174#mainwindow.cpp \
172# calendarview.cpp \ 175# calendarview.cpp \
173# timespanview.cpp 176# timespanview.cpp
174 177
175
176
177win32: {
178HEADERS += ../outport/msoutl9.h \
179 kaimportoldialog.h
180
181SOURCES += ../outport/msoutl9.cpp \
182 kaimportoldialog.cpp
183}
184
diff --git a/kaddressbook/mainembedded.cpp b/kaddressbook/mainembedded.cpp
index 1e03dba..d9968f3 100644
--- a/kaddressbook/mainembedded.cpp
+++ b/kaddressbook/mainembedded.cpp
@@ -1,100 +1,102 @@
1#ifndef DESKTOP_VERSION 1#ifndef DESKTOP_VERSION
2#include <qpe/qpeapplication.h> 2#include <qpe/qpeapplication.h>
3#include <qcopchannel_qws.h> 3#include <qcopchannel_qws.h>
4#include <stdlib.h> 4#include <stdlib.h>
5#else 5#else
6#include <qapplication.h> 6#include <qapplication.h>
7#include <qwindowsstyle.h> 7#include <qwindowsstyle.h>
8#include <qplatinumstyle.h> 8#include <qplatinumstyle.h>
9#include <qmainwindow.h> 9#include <qmainwindow.h>
10#include <qmessagebox.h>
11#include <stdlib.h>
10#endif 12#endif
11 13
12#include <qtextcodec.h> 14#include <qtextcodec.h>
13#include <kstandarddirs.h> 15#include <kstandarddirs.h>
14#include <qregexp.h> 16#include <qregexp.h>
15#include <kglobal.h> 17#include <kglobal.h>
16#include <stdio.h> 18#include <stdio.h>
17#include <qdir.h> 19#include <qdir.h>
18#include "kabprefs.h" 20#include "kabprefs.h"
19#include "kaddressbookmain.h" 21#include "kaddressbookmain.h"
20#include "externalapphandler.h" 22#include "externalapphandler.h"
21#include <libkdepim/kpimglobalprefs.h> 23#include <libkdepim/kpimglobalprefs.h>
22void dumpMissing(); 24void dumpMissing();
23int main( int argc, char **argv ) 25int main( int argc, char **argv )
24{ 26{
25#ifndef DESKTOP_VERSION 27#ifndef DESKTOP_VERSION
26 QPEApplication a( argc, argv ); 28 QPEApplication a( argc, argv );
27 a.setKeepRunning (); 29 a.setKeepRunning ();
28#else 30#else
29 QApplication a( argc, argv ); 31 QApplication a( argc, argv );
30 QApplication::setStyle( new QPlatinumStyle ()); 32 QApplication::setStyle( new QPlatinumStyle ());
31 QString hdir = QDir::homeDirPath(); 33#ifdef _WIN32_
32 // there is a bug when creating dirs for WIN 98 34 QString hdir ( getenv( "HOME") );
33 // it is difficult to fix, because we have no WIN 98 runnung 35 if ( hdir.isEmpty() ) {
34 // such that we try it to create the dirs at startup here 36 QString hd ("C:/" );
35 if ( hdir == "C:\\" ) { // win 98 or ME 37 //QMessageBox::information(0,"hh",QDir::homeDirPath()+" xx" +hd );
36 QDir app_dir; 38 if ( QDir::homeDirPath().lower() == hd.lower() ) {
37 if ( !app_dir.exists("C:\\kdepim") ) 39 _putenv( "HOME=C:");
38 app_dir.mkdir ("C:\\kdepim"); 40 //QMessageBox::information(0,"hh",QString ( getenv( "HOME") ) );
39 if ( !app_dir.exists("C:\\kdepim\\apps") ) 41 }
40 app_dir.mkdir ("C:\\kdepim\\apps"); 42 } else {
41 if ( !app_dir.exists("C:\\kdepim\\config") ) 43 QDir app_dir;
42 app_dir.mkdir ("C:\\kdepim\\config"); 44 if ( !app_dir.exists(hdir) )
43 if ( !app_dir.exists("C:\\kdepim\\apps\\kaddressbook") ) 45 app_dir.mkdir (hdir);
44 app_dir.mkdir ("C:\\kdepim\\apps\\kaddressbook");
45 } 46 }
46#endif 47#endif
48#endif
47 49
48 bool exitHelp = false; 50 bool exitHelp = false;
49 if ( argc > 1 ) { 51 if ( argc > 1 ) {
50 QString command = argv[1]; 52 QString command = argv[1];
51 if ( command == "-help" ){ 53 if ( command == "-help" ){
52 printf("KA/E command line commands:\n"); 54 printf("KA/E command line commands:\n");
53 printf(" no command: Start KA/E in usual way\n"); 55 printf(" no command: Start KA/E in usual way\n");
54 printf(" -help: This output\n"); 56 printf(" -help: This output\n");
55 printf(" KA/E is exiting now. Bye!\n"); 57 printf(" KA/E is exiting now. Bye!\n");
56 exitHelp = true; 58 exitHelp = true;
57 } 59 }
58 } 60 }
59 if ( ! exitHelp ) { 61 if ( ! exitHelp ) {
60 62
61 KGlobal::setAppName( "kaddressbook" ); 63 KGlobal::setAppName( "kaddressbook" );
62#ifndef DESKTOP_VERSION 64#ifndef DESKTOP_VERSION
63 if ( QApplication::desktop()->width() > 320 ) 65 if ( QApplication::desktop()->width() > 320 )
64 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons22/"); 66 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons22/");
65 else 67 else
66 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons16/"); 68 KGlobal::iconLoader()->setIconPath(QString(getenv("QPEDIR"))+"/pics/kdepim/kaddressbook/icons16/");
67#else 69#else
68 QString fileName ; 70 QString fileName ;
69 fileName = qApp->applicationDirPath () + "/kdepim/kaddressbook/icons22/"; 71 fileName = qApp->applicationDirPath () + "/kdepim/kaddressbook/icons22/";
70 KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName)); 72 KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName));
71 QApplication::addLibraryPath ( qApp->applicationDirPath () ); 73 QApplication::addLibraryPath ( qApp->applicationDirPath () );
72 74
73#endif 75#endif
74 KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "kaddressbook"))); 76 KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "kaddressbook")));
75 // init language 77 // init language
76 KPimGlobalPrefs::instance()->setGlobalConfig(); 78 KPimGlobalPrefs::instance()->setGlobalConfig();
77 KAddressBookMain m ; 79 KAddressBookMain m ;
78//US MainWindow m; 80//US MainWindow m;
79#ifndef DESKTOP_VERSION 81#ifndef DESKTOP_VERSION
80 QObject::connect(&a, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & ))); 82 QObject::connect(&a, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & )));
81#endif 83#endif
82 84
83 85
84#ifndef DESKTOP_VERSION 86#ifndef DESKTOP_VERSION
85 a.showMainWidget( &m ); 87 a.showMainWidget( &m );
86 88
87#else 89#else
88 a.setMainWidget( &m ); 90 a.setMainWidget( &m );
89 m.resize (640, 480 ); 91 m.resize (640, 480 );
90 m.show(); 92 m.show();
91#endif 93#endif
92 a.exec(); 94 a.exec();
93 95
94 dumpMissing(); 96 dumpMissing();
95 97
96 KPimGlobalPrefs::instance()->writeConfig(); 98 KPimGlobalPrefs::instance()->writeConfig();
97 } 99 }
98 qDebug("KA: Bye! "); 100 qDebug("KA: Bye! ");
99} 101}
100 102
diff --git a/kdepim-desktop.pro b/kdepim-desktop.pro
index b0d60b7..da3a966 100644
--- a/kdepim-desktop.pro
+++ b/kdepim-desktop.pro
@@ -1,8 +1,8 @@
1 1
2 2
3TEMPLATE = subdirs 3TEMPLATE = subdirs
4SUBDIRS = libical libkcal kabc libkdepim microkde korganizer kaddressbook kabc/plugins/file kabc/plugins/dir kabc/plugins/file kabc/plugins/qtopia gammu/emb/common gammu/emb/gammu 4SUBDIRS = libical libkcal kabc libkdepim microkde korganizer kaddressbook kabc/plugins/file kabc/plugins/dir kabc/plugins/qtopia gammu/emb/common gammu/emb/gammu
5unix:{ 5unix:{
6SUBDIRS += kmicromail/libetpan kmicromail/libmailwrapper kmicromail pwmanager/libcrypt/cipher pwmanager/libcrypt/error pwmanager/libcrypt/mpi pwmanager/libcrypt/zlib pwmanager/pwmanager 6SUBDIRS += kmicromail/libetpan kmicromail/libmailwrapper kmicromail pwmanager/libcrypt/cipher pwmanager/libcrypt/error pwmanager/libcrypt/mpi pwmanager/libcrypt/zlib pwmanager/pwmanager
7} 7}
8 8
diff --git a/korganizer/koprefsdialog.cpp b/korganizer/koprefsdialog.cpp
index 8aa24ee..ea73fd0 100644
--- a/korganizer/koprefsdialog.cpp
+++ b/korganizer/koprefsdialog.cpp
@@ -1,226 +1,228 @@
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;
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,198 +1,200 @@
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() );
@@ -653,257 +655,257 @@ void MainWindow::initActions()
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 );
@@ -1242,258 +1244,258 @@ void MainWindow::keyBindings()
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;