summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/resource.cpp4
-rw-r--r--korganizer/calendarview.cpp4
-rw-r--r--korganizer/calendarview.h1
-rw-r--r--korganizer/koprefs.h3
-rw-r--r--korganizer/mainwindow.cpp16
-rw-r--r--korganizer/mainwindow.h1
-rw-r--r--libkdepim/ksyncprofile.cpp15
-rw-r--r--libkdepim/ksyncprofile.h5
8 files changed, 32 insertions, 17 deletions
diff --git a/kabc/resource.cpp b/kabc/resource.cpp
index d39fd6a..7b91239 100644
--- a/kabc/resource.cpp
+++ b/kabc/resource.cpp
@@ -1,137 +1,137 @@
1/* 1/*
2 This file is part of libkabc. 2 This file is part of libkabc.
3 Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org> 3 Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org>
4 4
5 This library is free software; you can redistribute it and/or 5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public 6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either 7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version. 8 version 2 of the License, or (at your option) any later version.
9 9
10 This library is distributed in the hope that it will be useful, 10 This library 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 GNU 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details. 13 Library General Public License for more details.
14 14
15 You should have received a copy of the GNU Library General Public License 15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to 16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA. 18 Boston, MA 02111-1307, USA.
19*/ 19*/
20 20
21/* 21/*
22Enhanced Version of the file for platform independent KDE tools. 22Enhanced Version of the file for platform independent KDE tools.
23Copyright (c) 2004 Ulf Schenk 23Copyright (c) 2004 Ulf Schenk
24 24
25$Id$ 25$Id$
26*/ 26*/
27 27
28#include <kdebug.h> 28#include <kdebug.h>
29 29
30#include <ksyncprofile.h> 30#include <ksyncprofile.h>
31 31
32#include "resource.h" 32#include "resource.h"
33 33
34using namespace KABC; 34using namespace KABC;
35 35
36Resource::Resource( const KConfig *config, bool syncable ) 36Resource::Resource( const KConfig *config, bool syncable )
37 : KRES::Resource( config ), mAddressBook( 0 ), mSyncProfile( 0 ) 37 : KRES::Resource( config ), mAddressBook( 0 ), mSyncProfile( 0 )
38{ 38{
39 if(syncable == true) { 39 if(syncable == true) {
40 mSyncProfile = new KSyncProfile( identifier() ); 40 mSyncProfile = new KSyncProfile( );
41 mSyncProfile->setName(resourceName()); 41 mSyncProfile->setName("pending" /*resourceName()*/);
42 mSyncProfile->readConfig( (KConfig *)config ); 42 mSyncProfile->readConfig( (KConfig *)config );
43 } 43 }
44} 44}
45 45
46Resource::~Resource() 46Resource::~Resource()
47{ 47{
48 if (mSyncProfile != 0) { 48 if (mSyncProfile != 0) {
49 delete mSyncProfile; 49 delete mSyncProfile;
50 } 50 }
51} 51}
52 52
53void Resource::writeConfig( KConfig *config ) 53void Resource::writeConfig( KConfig *config )
54{ 54{
55 KRES::Resource::writeConfig( config ); 55 KRES::Resource::writeConfig( config );
56 56
57 if(mSyncProfile != 0) 57 if(mSyncProfile != 0)
58 mSyncProfile->writeConfig( config ); 58 mSyncProfile->writeConfig( config );
59} 59}
60 60
61 61
62void Resource::setAddressBook( AddressBook *ab ) 62void Resource::setAddressBook( AddressBook *ab )
63{ 63{
64 mAddressBook = ab; 64 mAddressBook = ab;
65} 65}
66 66
67AddressBook *Resource::addressBook() 67AddressBook *Resource::addressBook()
68{ 68{
69 return mAddressBook; 69 return mAddressBook;
70} 70}
71 71
72bool Resource::doOpen() 72bool Resource::doOpen()
73{ 73{
74 return true; 74 return true;
75} 75}
76 76
77void Resource::doClose() 77void Resource::doClose()
78{ 78{
79} 79}
80 80
81Ticket *Resource::requestSaveTicket() 81Ticket *Resource::requestSaveTicket()
82{ 82{
83 return 0; 83 return 0;
84} 84}
85 85
86bool Resource::load() 86bool Resource::load()
87{ 87{
88 return true; 88 return true;
89} 89}
90 90
91bool Resource::save( Ticket * ) 91bool Resource::save( Ticket * )
92{ 92{
93 return false; 93 return false;
94} 94}
95 95
96Ticket *Resource::createTicket( Resource *resource ) 96Ticket *Resource::createTicket( Resource *resource )
97{ 97{
98 return new Ticket( resource ); 98 return new Ticket( resource );
99} 99}
100 100
101void Resource::removeAddressee( const Addressee& ) 101void Resource::removeAddressee( const Addressee& )
102{ 102{
103 // do nothing 103 // do nothing
104} 104}
105 105
106void Resource::cleanUp() 106void Resource::cleanUp()
107{ 107{
108 // do nothing 108 // do nothing
109} 109}
110 110
111bool Resource::isSyncable() const 111bool Resource::isSyncable() const
112{ 112{
113 return (mSyncProfile != 0); 113 return (mSyncProfile != 0);
114} 114}
115 115
116KSyncProfile* Resource::getSyncProfile() 116KSyncProfile* Resource::getSyncProfile()
117{ 117{
118 return mSyncProfile; 118 return mSyncProfile;
119} 119}
120 120
121 121
122QString Resource::fileName() const 122QString Resource::fileName() const
123{ 123{
124 return mFileName; 124 return mFileName;
125} 125}
126 126
127void Resource::setFileName( const QString &fileName ) 127void Resource::setFileName( const QString &fileName )
128{ 128{
129 mFileName = fileName; 129 mFileName = fileName;
130} 130}
131 131
132/** 132/**
133 * Set the name of resource.You can override this method, 133 * Set the name of resource.You can override this method,
134 * but also remember to call Resource::setResourceName(). 134 * but also remember to call Resource::setResourceName().
135 */ 135 */
136void Resource::setResourceName( const QString &name ) 136void Resource::setResourceName( const QString &name )
137{ 137{
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index f859b90..689618d 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -1080,192 +1080,196 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int
1080 bool skipIncidence = false; 1080 bool skipIncidence = false;
1081 if ( uid.left(15) == QString("last-syncEvent-") ) 1081 if ( uid.left(15) == QString("last-syncEvent-") )
1082 skipIncidence = true; 1082 skipIncidence = true;
1083 if ( mGlobalSyncMode == SYNC_MODE_EXTERNAL && inL->type() == "Journal" ) 1083 if ( mGlobalSyncMode == SYNC_MODE_EXTERNAL && inL->type() == "Journal" )
1084 skipIncidence = true; 1084 skipIncidence = true;
1085 if ( !skipIncidence ) { 1085 if ( !skipIncidence ) {
1086 inR = remote->incidence( uid ); 1086 inR = remote->incidence( uid );
1087 if ( ! inR ) { 1087 if ( ! inR ) {
1088 if ( mGlobalSyncMode == SYNC_MODE_EXTERNAL ) { 1088 if ( mGlobalSyncMode == SYNC_MODE_EXTERNAL ) {
1089 if ( !inL->getID(mCurrentSyncDevice).isEmpty() && mode != 4 ) { 1089 if ( !inL->getID(mCurrentSyncDevice).isEmpty() && mode != 4 ) {
1090 local->deleteIncidence( inL ); 1090 local->deleteIncidence( inL );
1091 ++deletedEventL; 1091 ++deletedEventL;
1092 } else { 1092 } else {
1093 if ( ! KOPrefs::instance()->mWriteBackExistingOnly ) { 1093 if ( ! KOPrefs::instance()->mWriteBackExistingOnly ) {
1094 inL->removeID(mCurrentSyncDevice ); 1094 inL->removeID(mCurrentSyncDevice );
1095 ++addedEventR; 1095 ++addedEventR;
1096 inL->setLastModified( modifiedCalendar ); 1096 inL->setLastModified( modifiedCalendar );
1097 remote->addIncidence( inL->clone() ); 1097 remote->addIncidence( inL->clone() );
1098 } 1098 }
1099 } 1099 }
1100 } else { 1100 } else {
1101 if ( inL->lastModified() < mLastCalendarSync && mode != 4 ) { 1101 if ( inL->lastModified() < mLastCalendarSync && mode != 4 ) {
1102 checkExternSyncEvent(eventLSyncSharp, inL); 1102 checkExternSyncEvent(eventLSyncSharp, inL);
1103 local->deleteIncidence( inL ); 1103 local->deleteIncidence( inL );
1104 ++deletedEventL; 1104 ++deletedEventL;
1105 } else { 1105 } else {
1106 if ( ! KOPrefs::instance()->mWriteBackExistingOnly ) { 1106 if ( ! KOPrefs::instance()->mWriteBackExistingOnly ) {
1107 ++addedEventR; 1107 ++addedEventR;
1108 inL->setLastModified( modifiedCalendar ); 1108 inL->setLastModified( modifiedCalendar );
1109 remote->addIncidence( inL->clone() ); 1109 remote->addIncidence( inL->clone() );
1110 } 1110 }
1111 } 1111 }
1112 } 1112 }
1113 } 1113 }
1114 } 1114 }
1115 inL = el.next(); 1115 inL = el.next();
1116 } 1116 }
1117 1117
1118 bar.hide(); 1118 bar.hide();
1119 mLastCalendarSync = QDateTime::currentDateTime().addSecs( 1 ); 1119 mLastCalendarSync = QDateTime::currentDateTime().addSecs( 1 );
1120 eventLSync->setReadOnly( false ); 1120 eventLSync->setReadOnly( false );
1121 eventLSync->setDtStart( mLastCalendarSync ); 1121 eventLSync->setDtStart( mLastCalendarSync );
1122 eventRSync->setDtStart( mLastCalendarSync ); 1122 eventRSync->setDtStart( mLastCalendarSync );
1123 eventLSync->setDtEnd( mLastCalendarSync.addSecs( 3600 ) ); 1123 eventLSync->setDtEnd( mLastCalendarSync.addSecs( 3600 ) );
1124 eventRSync->setDtEnd( mLastCalendarSync.addSecs( 3600 ) ); 1124 eventRSync->setDtEnd( mLastCalendarSync.addSecs( 3600 ) );
1125 eventRSync->setLocation( i18n("Remote from: ")+mCurrentSyncName ) ; 1125 eventRSync->setLocation( i18n("Remote from: ")+mCurrentSyncName ) ;
1126 eventLSync->setLocation(i18n("Local from: ") + mCurrentSyncName ); 1126 eventLSync->setLocation(i18n("Local from: ") + mCurrentSyncName );
1127 eventLSync->setReadOnly( true ); 1127 eventLSync->setReadOnly( true );
1128 if ( mGlobalSyncMode == SYNC_MODE_NORMAL) 1128 if ( mGlobalSyncMode == SYNC_MODE_NORMAL)
1129 remote->addEvent( eventRSync ); 1129 remote->addEvent( eventRSync );
1130 QString mes; 1130 QString mes;
1131 mes .sprintf( i18n("Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n"),addedEvent, addedEventR, changedLocal, changedRemote, deletedEventL, deletedEventR ); 1131 mes .sprintf( i18n("Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n"),addedEvent, addedEventR, changedLocal, changedRemote, deletedEventL, deletedEventR );
1132 if ( KOPrefs::instance()->mShowSyncSummary ) { 1132 if ( KOPrefs::instance()->mShowSyncSummary ) {
1133 KMessageBox::information(this, mes, i18n("KO/Pi Synchronization") ); 1133 KMessageBox::information(this, mes, i18n("KO/Pi Synchronization") );
1134 } 1134 }
1135 qDebug( mes ); 1135 qDebug( mes );
1136 mCalendar->checkAlarmForIncidence( 0, true ); 1136 mCalendar->checkAlarmForIncidence( 0, true );
1137 return syncOK; 1137 return syncOK;
1138} 1138}
1139 1139
1140void CalendarView::setSyncDevice( QString s ) 1140void CalendarView::setSyncDevice( QString s )
1141{ 1141{
1142 mCurrentSyncDevice= s; 1142 mCurrentSyncDevice= s;
1143} 1143}
1144void CalendarView::setSyncName( QString s ) 1144void CalendarView::setSyncName( QString s )
1145{ 1145{
1146 mCurrentSyncName= s; 1146 mCurrentSyncName= s;
1147} 1147}
1148bool CalendarView::syncCalendar(QString filename, int mode) 1148bool CalendarView::syncCalendar(QString filename, int mode)
1149{ 1149{
1150 mGlobalSyncMode = SYNC_MODE_NORMAL; 1150 mGlobalSyncMode = SYNC_MODE_NORMAL;
1151 CalendarLocal* calendar = new CalendarLocal(); 1151 CalendarLocal* calendar = new CalendarLocal();
1152 calendar->setTimeZoneId(KOPrefs::instance()->mTimeZoneId); 1152 calendar->setTimeZoneId(KOPrefs::instance()->mTimeZoneId);
1153 FileStorage* storage = new FileStorage( calendar ); 1153 FileStorage* storage = new FileStorage( calendar );
1154 bool syncOK = false; 1154 bool syncOK = false;
1155 storage->setFileName( filename ); 1155 storage->setFileName( filename );
1156 // qDebug("loading ... "); 1156 // qDebug("loading ... ");
1157 if ( storage->load(KOPrefs::instance()->mUseQuicksave) ) { 1157 if ( storage->load(KOPrefs::instance()->mUseQuicksave) ) {
1158 getEventViewerDialog()->setSyncMode( true ); 1158 getEventViewerDialog()->setSyncMode( true );
1159 syncOK = synchronizeCalendar( mCalendar, calendar, mode ); 1159 syncOK = synchronizeCalendar( mCalendar, calendar, mode );
1160 getEventViewerDialog()->setSyncMode( false ); 1160 getEventViewerDialog()->setSyncMode( false );
1161 if ( syncOK ) { 1161 if ( syncOK ) {
1162 if ( KOPrefs::instance()->mWriteBackFile ) 1162 if ( KOPrefs::instance()->mWriteBackFile )
1163 { 1163 {
1164 storage->setSaveFormat( new ICalFormat( KOPrefs::instance()->mUseQuicksave) ); 1164 storage->setSaveFormat( new ICalFormat( KOPrefs::instance()->mUseQuicksave) );
1165 storage->save(); 1165 storage->save();
1166 } 1166 }
1167 } 1167 }
1168 setModified( true ); 1168 setModified( true );
1169 } 1169 }
1170 delete storage; 1170 delete storage;
1171 delete calendar; 1171 delete calendar;
1172 if ( syncOK ) 1172 if ( syncOK )
1173 updateView(); 1173 updateView();
1174 return syncOK; 1174 return syncOK;
1175} 1175}
1176void CalendarView::syncPhone()
1177{
1178 qDebug("CalendarView::syncPhone() ");
1179}
1176void CalendarView::syncSharp() 1180void CalendarView::syncSharp()
1177{ 1181{
1178#ifndef DESKTOP_VERSION 1182#ifndef DESKTOP_VERSION
1179 mGlobalSyncMode = SYNC_MODE_EXTERNAL; 1183 mGlobalSyncMode = SYNC_MODE_EXTERNAL;
1180 //mCurrentSyncDevice = "sharp-DTM"; 1184 //mCurrentSyncDevice = "sharp-DTM";
1181 if ( KOPrefs::instance()->mAskForPreferences ) 1185 if ( KOPrefs::instance()->mAskForPreferences )
1182 edit_sync_options(); 1186 edit_sync_options();
1183 qApp->processEvents(); 1187 qApp->processEvents();
1184 CalendarLocal* calendar = new CalendarLocal(); 1188 CalendarLocal* calendar = new CalendarLocal();
1185 calendar->setTimeZoneId(KOPrefs::instance()->mTimeZoneId); 1189 calendar->setTimeZoneId(KOPrefs::instance()->mTimeZoneId);
1186 bool syncOK = false; 1190 bool syncOK = false;
1187 SharpFormat sharpFormat; 1191 SharpFormat sharpFormat;
1188 if ( sharpFormat.load( calendar, mCalendar ) ) { 1192 if ( sharpFormat.load( calendar, mCalendar ) ) {
1189 getEventViewerDialog()->setSyncMode( true ); 1193 getEventViewerDialog()->setSyncMode( true );
1190 syncOK = synchronizeCalendar( mCalendar, calendar, KOPrefs::instance()->mSyncAlgoPrefs ); 1194 syncOK = synchronizeCalendar( mCalendar, calendar, KOPrefs::instance()->mSyncAlgoPrefs );
1191 getEventViewerDialog()->setSyncMode( false ); 1195 getEventViewerDialog()->setSyncMode( false );
1192 qApp->processEvents(); 1196 qApp->processEvents();
1193 if ( syncOK ) { 1197 if ( syncOK ) {
1194 if ( KOPrefs::instance()->mWriteBackFile ) 1198 if ( KOPrefs::instance()->mWriteBackFile )
1195 { 1199 {
1196 QPtrList<Incidence> iL = mCalendar->rawIncidences(); 1200 QPtrList<Incidence> iL = mCalendar->rawIncidences();
1197 Incidence* inc = iL.first(); 1201 Incidence* inc = iL.first();
1198 /* obsolete 1202 /* obsolete
1199 while ( inc ) { 1203 while ( inc ) {
1200 inc->setZaurusStat( inc->revision () ); 1204 inc->setZaurusStat( inc->revision () );
1201 inc = iL.next(); 1205 inc = iL.next();
1202 } 1206 }
1203 */ 1207 */
1204 // pending: clean last sync event description 1208 // pending: clean last sync event description
1205 sharpFormat.save(calendar); 1209 sharpFormat.save(calendar);
1206 iL = calendar->rawIncidences(); 1210 iL = calendar->rawIncidences();
1207 inc = iL.first(); 1211 inc = iL.first();
1208 Incidence* loc; 1212 Incidence* loc;
1209 while ( inc ) { 1213 while ( inc ) {
1210 if ( inc->tempSyncStat() == SYNC_TEMPSTATE_NEW_ID ) { 1214 if ( inc->tempSyncStat() == SYNC_TEMPSTATE_NEW_ID ) {
1211 loc = mCalendar->incidence(inc->uid() ); 1215 loc = mCalendar->incidence(inc->uid() );
1212 if ( loc ) { 1216 if ( loc ) {
1213 loc->setID(mCurrentSyncDevice, inc->getID(mCurrentSyncDevice) ); 1217 loc->setID(mCurrentSyncDevice, inc->getID(mCurrentSyncDevice) );
1214 loc->setCsum( mCurrentSyncDevice, inc->getCsum(mCurrentSyncDevice) ); 1218 loc->setCsum( mCurrentSyncDevice, inc->getCsum(mCurrentSyncDevice) );
1215 } 1219 }
1216 } 1220 }
1217 inc = iL.next(); 1221 inc = iL.next();
1218 } 1222 }
1219 Incidence* lse = getLastSyncEvent(); 1223 Incidence* lse = getLastSyncEvent();
1220 if ( lse ) { 1224 if ( lse ) {
1221 lse->setReadOnly( false ); 1225 lse->setReadOnly( false );
1222 lse->setDescription( "" ); 1226 lse->setDescription( "" );
1223 lse->setReadOnly( true ); 1227 lse->setReadOnly( true );
1224 } 1228 }
1225 } 1229 }
1226 } 1230 }
1227 setModified( true ); 1231 setModified( true );
1228 } else { 1232 } else {
1229 QString question = i18n("Sorry, the database access\ncommand failed!\n\nNothing synced!\n") ; 1233 QString question = i18n("Sorry, the database access\ncommand failed!\n\nNothing synced!\n") ;
1230 QMessageBox::information( 0, i18n("KO/Pi Import - ERROR"), 1234 QMessageBox::information( 0, i18n("KO/Pi Import - ERROR"),
1231 question, i18n("Ok")) ; 1235 question, i18n("Ok")) ;
1232 1236
1233 } 1237 }
1234 delete calendar; 1238 delete calendar;
1235 updateView(); 1239 updateView();
1236 return ;//syncOK; 1240 return ;//syncOK;
1237#endif 1241#endif
1238} 1242}
1239 1243
1240 1244
1241#include <kabc/stdaddressbook.h> 1245#include <kabc/stdaddressbook.h>
1242bool CalendarView::importBday() 1246bool CalendarView::importBday()
1243{ 1247{
1244 KABC::StdAddressBook* AddressBook = KABC::StdAddressBook::self( true ); 1248 KABC::StdAddressBook* AddressBook = KABC::StdAddressBook::self( true );
1245 KABC::AddressBook::Iterator it; 1249 KABC::AddressBook::Iterator it;
1246 int count = 0; 1250 int count = 0;
1247 for( it = AddressBook->begin(); it != AddressBook->end(); ++it ) { 1251 for( it = AddressBook->begin(); it != AddressBook->end(); ++it ) {
1248 ++count; 1252 ++count;
1249 } 1253 }
1250 QProgressBar bar(count,0 ); 1254 QProgressBar bar(count,0 );
1251 int w = 300; 1255 int w = 300;
1252 if ( QApplication::desktop()->width() < 320 ) 1256 if ( QApplication::desktop()->width() < 320 )
1253 w = 220; 1257 w = 220;
1254 int h = bar.sizeHint().height() ; 1258 int h = bar.sizeHint().height() ;
1255 int dw = QApplication::desktop()->width(); 1259 int dw = QApplication::desktop()->width();
1256 int dh = QApplication::desktop()->height(); 1260 int dh = QApplication::desktop()->height();
1257 bar.setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); 1261 bar.setGeometry( (dw-w)/2, (dh - h )/2 ,w,h );
1258 bar.show(); 1262 bar.show();
1259 bar.setCaption (i18n("Reading addressbook - close to abort!") ); 1263 bar.setCaption (i18n("Reading addressbook - close to abort!") );
1260 qApp->processEvents(); 1264 qApp->processEvents();
1261 count = 0; 1265 count = 0;
1262 int addCount = 0; 1266 int addCount = 0;
1263 KCal::Attendee* a = 0; 1267 KCal::Attendee* a = 0;
1264 for( it = AddressBook->begin(); it != AddressBook->end(); ++it ) { 1268 for( it = AddressBook->begin(); it != AddressBook->end(); ++it ) {
1265 if ( ! bar.isVisible() ) 1269 if ( ! bar.isVisible() )
1266 return false; 1270 return false;
1267 bar.setProgress( count++ ); 1271 bar.setProgress( count++ );
1268 qApp->processEvents(); 1272 qApp->processEvents();
1269 //qDebug("add BDay %s %s", (*it).realName().latin1(),(*it).birthday().date().toString().latin1() ); 1273 //qDebug("add BDay %s %s", (*it).realName().latin1(),(*it).birthday().date().toString().latin1() );
1270 if ( (*it).birthday().date().isValid() ){ 1274 if ( (*it).birthday().date().isValid() ){
1271 a = new KCal::Attendee( (*it).realName(), (*it).preferredEmail(),false,KCal::Attendee::NeedsAction,KCal::Attendee::ReqParticipant,(*it).uid()) ; 1275 a = new KCal::Attendee( (*it).realName(), (*it).preferredEmail(),false,KCal::Attendee::NeedsAction,KCal::Attendee::ReqParticipant,(*it).uid()) ;
diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h
index d564473..b2838db 100644
--- a/korganizer/calendarview.h
+++ b/korganizer/calendarview.h
@@ -332,192 +332,193 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser
332 */ 332 */
333 void appointment_edit(); 333 void appointment_edit();
334 /** 334 /**
335 * pop up dialog confirming deletion of currently selected event in the 335 * pop up dialog confirming deletion of currently selected event in the
336 * View. 336 * View.
337 */ 337 */
338 void appointment_delete(); 338 void appointment_delete();
339 339
340 /** mails the currently selected event to a particular user as a vCalendar 340 /** mails the currently selected event to a particular user as a vCalendar
341 attachment. */ 341 attachment. */
342 void action_mail(); 342 void action_mail();
343 343
344 /* frees a subtodo from it's relation */ 344 /* frees a subtodo from it's relation */
345 void todo_unsub( Todo * ); 345 void todo_unsub( Todo * );
346 346
347 /** Take ownership of selected event. */ 347 /** Take ownership of selected event. */
348 void takeOverEvent(); 348 void takeOverEvent();
349 349
350 /** Take ownership of all events in calendar. */ 350 /** Take ownership of all events in calendar. */
351 void takeOverCalendar(); 351 void takeOverCalendar();
352 352
353 /** query whether or not the calendar is "dirty". */ 353 /** query whether or not the calendar is "dirty". */
354 bool isModified(); 354 bool isModified();
355 /** set the state of calendar. Modified means "dirty", i.e. needing a save. */ 355 /** set the state of calendar. Modified means "dirty", i.e. needing a save. */
356 void setModified(bool modified=true); 356 void setModified(bool modified=true);
357 357
358 /** query if the calendar is read-only. */ 358 /** query if the calendar is read-only. */
359 bool isReadOnly(); 359 bool isReadOnly();
360 /** set state of calendar to read-only */ 360 /** set state of calendar to read-only */
361 void setReadOnly(bool readOnly=true); 361 void setReadOnly(bool readOnly=true);
362 362
363 void eventUpdated(Incidence *); 363 void eventUpdated(Incidence *);
364 364
365 /* iTIP scheduling actions */ 365 /* iTIP scheduling actions */
366 void schedule_publish(Incidence *incidence = 0); 366 void schedule_publish(Incidence *incidence = 0);
367 void schedule_request(Incidence *incidence = 0); 367 void schedule_request(Incidence *incidence = 0);
368 void schedule_refresh(Incidence *incidence = 0); 368 void schedule_refresh(Incidence *incidence = 0);
369 void schedule_cancel(Incidence *incidence = 0); 369 void schedule_cancel(Incidence *incidence = 0);
370 void schedule_add(Incidence *incidence = 0); 370 void schedule_add(Incidence *incidence = 0);
371 void schedule_reply(Incidence *incidence = 0); 371 void schedule_reply(Incidence *incidence = 0);
372 void schedule_counter(Incidence *incidence = 0); 372 void schedule_counter(Incidence *incidence = 0);
373 void schedule_declinecounter(Incidence *incidence = 0); 373 void schedule_declinecounter(Incidence *incidence = 0);
374 void schedule_publish_freebusy(int daysToPublish = 30); 374 void schedule_publish_freebusy(int daysToPublish = 30);
375 375
376 void openAddressbook(); 376 void openAddressbook();
377 377
378 void editFilters(); 378 void editFilters();
379 void toggleFilerEnabled(); 379 void toggleFilerEnabled();
380 QPtrList<CalFilter> filters(); 380 QPtrList<CalFilter> filters();
381 void toggleFilter(); 381 void toggleFilter();
382 void showFilter(bool visible); 382 void showFilter(bool visible);
383 void updateFilter(); 383 void updateFilter();
384 void filterEdited(); 384 void filterEdited();
385 void selectFilter( int ); 385 void selectFilter( int );
386 KOFilterView *filterView(); 386 KOFilterView *filterView();
387 387
388 void showIntro(); 388 void showIntro();
389 389
390 /** Move the curdatepient view date to today */ 390 /** Move the curdatepient view date to today */
391 void goToday(); 391 void goToday();
392 392
393 /** Move to the next date(s) in the current view */ 393 /** Move to the next date(s) in the current view */
394 void goNext(); 394 void goNext();
395 395
396 /** Move to the previous date(s) in the current view */ 396 /** Move to the previous date(s) in the current view */
397 void goPrevious(); 397 void goPrevious();
398 /** Move to the next date(s) in the current view */ 398 /** Move to the next date(s) in the current view */
399 void goNextMonth(); 399 void goNextMonth();
400 400
401 /** Move to the previous date(s) in the current view */ 401 /** Move to the previous date(s) in the current view */
402 void goPreviousMonth(); 402 void goPreviousMonth();
403 403
404 void toggleExpand(); 404 void toggleExpand();
405 void toggleDateNavigatorWidget(); 405 void toggleDateNavigatorWidget();
406 void toggleAllDaySize(); 406 void toggleAllDaySize();
407 void dialogClosing(Incidence *); 407 void dialogClosing(Incidence *);
408 408
409 /** Look for new messages in the inbox */ 409 /** Look for new messages in the inbox */
410 void lookForIncomingMessages(); 410 void lookForIncomingMessages();
411 /** Look for new messages in the outbox */ 411 /** Look for new messages in the outbox */
412 void lookForOutgoingMessages(); 412 void lookForOutgoingMessages();
413 413
414 void processMainViewSelection( Incidence * ); 414 void processMainViewSelection( Incidence * );
415 void processTodoListSelection( Incidence * ); 415 void processTodoListSelection( Incidence * );
416 416
417 void processIncidenceSelection( Incidence * ); 417 void processIncidenceSelection( Incidence * );
418 418
419 void purgeCompleted(); 419 void purgeCompleted();
420 bool removeCompletedSubTodos( Todo* ); 420 bool removeCompletedSubTodos( Todo* );
421 void slotCalendarChanged(); 421 void slotCalendarChanged();
422 bool importBday(); 422 bool importBday();
423 bool addAnniversary( QDate data, QString name, KCal::Attendee* a , bool birthday ); 423 bool addAnniversary( QDate data, QString name, KCal::Attendee* a , bool birthday );
424 bool importQtopia( const QString &categoriesFile, 424 bool importQtopia( const QString &categoriesFile,
425 const QString &datebookFile, 425 const QString &datebookFile,
426 const QString &tasklistFile ); 426 const QString &tasklistFile );
427 void syncSharp( ); 427 void syncSharp( );
428 void syncPhone( );
428 void slotSelectPickerDate( QDate ) ; 429 void slotSelectPickerDate( QDate ) ;
429 void showDatePicker( ) ; 430 void showDatePicker( ) ;
430 void moveIncidence(Incidence *) ; 431 void moveIncidence(Incidence *) ;
431 void beamIncidence(Incidence *) ; 432 void beamIncidence(Incidence *) ;
432 void beamCalendar() ; 433 void beamCalendar() ;
433 void beamFilteredCalendar() ; 434 void beamFilteredCalendar() ;
434 void beamIncidenceList(QPtrList<Incidence>) ; 435 void beamIncidenceList(QPtrList<Incidence>) ;
435 void manageCategories(); 436 void manageCategories();
436 int addCategories(); 437 int addCategories();
437 void removeCategories(); 438 void removeCategories();
438 void setSyncDevice( QString ); 439 void setSyncDevice( QString );
439 void setSyncName( QString ); 440 void setSyncName( QString );
440 protected slots: 441 protected slots:
441 void timerAlarm(); 442 void timerAlarm();
442 void suspendAlarm(); 443 void suspendAlarm();
443 void beamDone( Ir *ir ); 444 void beamDone( Ir *ir );
444 /** Select a view or adapt the current view to display the specified dates. */ 445 /** Select a view or adapt the current view to display the specified dates. */
445 void showDates( const KCal::DateList & ); 446 void showDates( const KCal::DateList & );
446 void selectWeekNum ( int ); 447 void selectWeekNum ( int );
447 448
448 public: 449 public:
449 // show a standard warning 450 // show a standard warning
450 // returns KMsgBox::yesNoCancel() 451 // returns KMsgBox::yesNoCancel()
451 int msgCalModified(); 452 int msgCalModified();
452 void confSync(); 453 void confSync();
453 void setLoadedFileVersion(QDateTime); 454 void setLoadedFileVersion(QDateTime);
454 bool checkFileVersion(QString fn); 455 bool checkFileVersion(QString fn);
455 bool checkFileChanged(QString fn); 456 bool checkFileChanged(QString fn);
456 Event* getLastSyncEvent(); 457 Event* getLastSyncEvent();
457 /** Adapt navigation units correpsonding to step size of navigation of the 458 /** Adapt navigation units correpsonding to step size of navigation of the
458 * current view. 459 * current view.
459 */ 460 */
460 void adaptNavigationUnits(); 461 void adaptNavigationUnits();
461 bool synchronizeCalendar( Calendar* local, Calendar* remote, int mode ); 462 bool synchronizeCalendar( Calendar* local, Calendar* remote, int mode );
462 int takeEvent( Incidence* local, Incidence* remote, int mode, bool full = false ); 463 int takeEvent( Incidence* local, Incidence* remote, int mode, bool full = false );
463 //Attendee* getYourAttendee(Event *event); 464 //Attendee* getYourAttendee(Event *event);
464 protected: 465 protected:
465 void schedule(Scheduler::Method, Incidence *incidence = 0); 466 void schedule(Scheduler::Method, Incidence *incidence = 0);
466 467
467 // returns KMsgBox::OKCandel() 468 // returns KMsgBox::OKCandel()
468 int msgItemDelete(); 469 int msgItemDelete();
469 void showEventEditor(); 470 void showEventEditor();
470 void showTodoEditor(); 471 void showTodoEditor();
471 void writeLocale(); 472 void writeLocale();
472 Todo *selectedTodo(); 473 Todo *selectedTodo();
473 474
474 private: 475 private:
475 AlarmDialog * mAlarmDialog; 476 AlarmDialog * mAlarmDialog;
476 QString mAlarmNotification; 477 QString mAlarmNotification;
477 QString mSuspendAlarmNotification; 478 QString mSuspendAlarmNotification;
478 QTimer* mSuspendTimer; 479 QTimer* mSuspendTimer;
479 QTimer* mAlarmTimer; 480 QTimer* mAlarmTimer;
480 QTimer* mRecheckAlarmTimer; 481 QTimer* mRecheckAlarmTimer;
481 void computeAlarm( QString ); 482 void computeAlarm( QString );
482 void startAlarm( QString, QString ); 483 void startAlarm( QString, QString );
483 void setSyncEventsReadOnly(); 484 void setSyncEventsReadOnly();
484 485
485 QDateTime loadedFileVersion; 486 QDateTime loadedFileVersion;
486 void checkExternSyncEvent( QPtrList<Event> lastSync , Incidence* toDelete ); 487 void checkExternSyncEvent( QPtrList<Event> lastSync , Incidence* toDelete );
487 void checkExternalId( Incidence * inc ); 488 void checkExternalId( Incidence * inc );
488 int mGlobalSyncMode; 489 int mGlobalSyncMode;
489 QString mCurrentSyncDevice; 490 QString mCurrentSyncDevice;
490 QString mCurrentSyncName; 491 QString mCurrentSyncName;
491 KOBeamPrefs* beamDialog; 492 KOBeamPrefs* beamDialog;
492 void init(); 493 void init();
493 int mDatePickerMode; 494 int mDatePickerMode;
494 bool mFlagEditDescription; 495 bool mFlagEditDescription;
495 QDateTime mLastCalendarSync; 496 QDateTime mLastCalendarSync;
496 void createPrinter(); 497 void createPrinter();
497 498
498 void calendarModified( bool, Calendar * ); 499 void calendarModified( bool, Calendar * );
499 500
500 CalPrinter *mCalPrinter; 501 CalPrinter *mCalPrinter;
501 502
502 QSplitter *mPanner; 503 QSplitter *mPanner;
503 QSplitter *mLeftSplitter; 504 QSplitter *mLeftSplitter;
504 QWidget *mLeftFrame; 505 QWidget *mLeftFrame;
505 QWidgetStack *mRightFrame; 506 QWidgetStack *mRightFrame;
506 507
507 KDatePicker* mDatePicker; 508 KDatePicker* mDatePicker;
508 QVBox* mDateFrame; 509 QVBox* mDateFrame;
509 NavigatorBar *mNavigatorBar; 510 NavigatorBar *mNavigatorBar;
510 511
511 KDateNavigator *mDateNavigator; // widget showing small month view. 512 KDateNavigator *mDateNavigator; // widget showing small month view.
512 513
513 KOFilterView *mFilterView; 514 KOFilterView *mFilterView;
514 515
515 ResourceView *mResourceView; 516 ResourceView *mResourceView;
516 517
517 // calendar object for this viewing instance 518 // calendar object for this viewing instance
518 Calendar *mCalendar; 519 Calendar *mCalendar;
519 520
520 CalendarResourceManager *mResourceManager; 521 CalendarResourceManager *mResourceManager;
521 522
522 FileStorage *mStorage; 523 FileStorage *mStorage;
523 524
diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h
index 424fa98..446fe2e 100644
--- a/korganizer/koprefs.h
+++ b/korganizer/koprefs.h
@@ -117,184 +117,187 @@ class KOPrefs : public KPimPrefs
117 QFont mMonthViewFont; 117 QFont mMonthViewFont;
118 QFont mAgendaViewFont; 118 QFont mAgendaViewFont;
119 QFont mMarcusBainsFont; 119 QFont mMarcusBainsFont;
120 QFont mTimeLabelsFont; 120 QFont mTimeLabelsFont;
121 QFont mTodoViewFont; 121 QFont mTodoViewFont;
122 QFont mListViewFont; 122 QFont mListViewFont;
123 QFont mDateNavigatorFont; 123 QFont mDateNavigatorFont;
124 QFont mEditBoxFont; 124 QFont mEditBoxFont;
125 QFont mJornalViewFont; 125 QFont mJornalViewFont;
126 QFont mWhatsNextFont; 126 QFont mWhatsNextFont;
127 QFont mEventViewFont; 127 QFont mEventViewFont;
128 128
129 129
130 130
131 131
132 QColor mHolidayColor; 132 QColor mHolidayColor;
133 QColor mHighlightColor; 133 QColor mHighlightColor;
134 QColor mEventColor; 134 QColor mEventColor;
135 QColor mAgendaBgColor; 135 QColor mAgendaBgColor;
136 QColor mWorkingHoursColor; 136 QColor mWorkingHoursColor;
137 QColor mTodoDueTodayColor; 137 QColor mTodoDueTodayColor;
138 QColor mTodoOverdueColor; 138 QColor mTodoOverdueColor;
139 QColor mMonthViewEvenColor; 139 QColor mMonthViewEvenColor;
140 QColor mMonthViewOddColor; 140 QColor mMonthViewOddColor;
141 QColor mMonthViewHolidayColor; 141 QColor mMonthViewHolidayColor;
142 bool mMonthViewUsesDayColors; 142 bool mMonthViewUsesDayColors;
143 bool mMonthViewSatSunTog; 143 bool mMonthViewSatSunTog;
144 QColor mAppColor1; 144 QColor mAppColor1;
145 QColor mAppColor2; 145 QColor mAppColor2;
146 bool mUseAppColors; 146 bool mUseAppColors;
147 147
148 int mDayBegins; 148 int mDayBegins;
149 int mHourSize; 149 int mHourSize;
150 int mAllDaySize; 150 int mAllDaySize;
151 bool mShowFullMenu; 151 bool mShowFullMenu;
152 bool mDailyRecur; 152 bool mDailyRecur;
153 bool mWeeklyRecur; 153 bool mWeeklyRecur;
154 bool mMonthDailyRecur; 154 bool mMonthDailyRecur;
155 bool mMonthWeeklyRecur; 155 bool mMonthWeeklyRecur;
156 bool mMonthShowIcons; 156 bool mMonthShowIcons;
157 bool mMonthShowShort; 157 bool mMonthShowShort;
158 bool mEnableToolTips; 158 bool mEnableToolTips;
159 bool mEnableMonthScroll; 159 bool mEnableMonthScroll;
160 bool mFullViewMonth; 160 bool mFullViewMonth;
161 bool mMonthViewUsesCategoryColor; 161 bool mMonthViewUsesCategoryColor;
162 bool mFullViewTodo; 162 bool mFullViewTodo;
163 bool mShowCompletedTodo; 163 bool mShowCompletedTodo;
164 bool mMarcusBainsEnabled; 164 bool mMarcusBainsEnabled;
165 int mNextXDays; 165 int mNextXDays;
166 int mWhatsNextDays; 166 int mWhatsNextDays;
167 int mWhatsNextPrios; 167 int mWhatsNextPrios;
168 bool mEnableQuickTodo; 168 bool mEnableQuickTodo;
169 bool mLanguageChanged; 169 bool mLanguageChanged;
170 170
171 bool mCompactDialogs; 171 bool mCompactDialogs;
172 bool mVerticalScreen; 172 bool mVerticalScreen;
173 173
174 bool mShowIconNewTodo; 174 bool mShowIconNewTodo;
175 bool mShowIconNewEvent; 175 bool mShowIconNewEvent;
176 bool mShowIconSearch; 176 bool mShowIconSearch;
177 bool mShowIconList; 177 bool mShowIconList;
178 bool mShowIconDay1; 178 bool mShowIconDay1;
179 bool mShowIconDay5; 179 bool mShowIconDay5;
180 bool mShowIconDay7; 180 bool mShowIconDay7;
181 bool mShowIconMonth; 181 bool mShowIconMonth;
182 bool mShowIconTodoview; 182 bool mShowIconTodoview;
183 bool mShowIconBackFast; 183 bool mShowIconBackFast;
184 bool mShowIconBack; 184 bool mShowIconBack;
185 bool mShowIconToday; 185 bool mShowIconToday;
186 bool mShowIconForward; 186 bool mShowIconForward;
187 bool mShowIconForwardFast; 187 bool mShowIconForwardFast;
188 bool mShowIconWhatsThis; 188 bool mShowIconWhatsThis;
189 bool mShowIconNextDays; 189 bool mShowIconNextDays;
190 bool mShowIconNext; 190 bool mShowIconNext;
191 bool mShowIconJournal; 191 bool mShowIconJournal;
192 192
193 bool mShowIconStretch; 193 bool mShowIconStretch;
194 194
195 bool mToolBarHor; 195 bool mToolBarHor;
196 bool mToolBarUp; 196 bool mToolBarUp;
197 bool mToolBarMiniIcons; 197 bool mToolBarMiniIcons;
198 198
199 bool mAskForQuit; 199 bool mAskForQuit;
200 bool mUsePassWd; 200 bool mUsePassWd;
201 bool mWriteBackFile; 201 bool mWriteBackFile;
202 bool mAskForPreferences; 202 bool mAskForPreferences;
203 bool mShowSyncSummary; 203 bool mShowSyncSummary;
204 bool mShowSyncEvents; 204 bool mShowSyncEvents;
205 bool mShowTodoInAgenda; 205 bool mShowTodoInAgenda;
206 bool mWriteBackExistingOnly; 206 bool mWriteBackExistingOnly;
207 207
208 QString mRemoteIP; 208 QString mRemoteIP;
209 QString mRemoteUser; 209 QString mRemoteUser;
210 QString mRemotePassWd; 210 QString mRemotePassWd;
211 QString mRemoteFile; 211 QString mRemoteFile;
212 QString mLocalTempFile; 212 QString mLocalTempFile;
213 QString mPhoneDevice;
214 QString mPhoneConnection;
215 QString mPhoneModel;
213 216
214 int mLastSyncTime; 217 int mLastSyncTime;
215 int mSyncAlgoPrefs; 218 int mSyncAlgoPrefs;
216 int mRingSyncAlgoPrefs; 219 int mRingSyncAlgoPrefs;
217 QStringList mSyncProfileNames; 220 QStringList mSyncProfileNames;
218 QStringList mExternSyncProfiles; 221 QStringList mExternSyncProfiles;
219 QString mLocalMachineName; 222 QString mLocalMachineName;
220 void setCategoryColor(QString cat,const QColor & color); 223 void setCategoryColor(QString cat,const QColor & color);
221 QColor *categoryColor(QString cat); 224 QColor *categoryColor(QString cat);
222 225
223 QString mArchiveFile; 226 QString mArchiveFile;
224 QString mHtmlExportFile; 227 QString mHtmlExportFile;
225 bool mHtmlWithSave; 228 bool mHtmlWithSave;
226 229
227 QStringList mSelectedPlugins; 230 QStringList mSelectedPlugins;
228 231
229 QString mLastImportFile; 232 QString mLastImportFile;
230 QString mLastVcalFile; 233 QString mLastVcalFile;
231 QString mLastSaveFile; 234 QString mLastSaveFile;
232 QString mLastLoadFile; 235 QString mLastLoadFile;
233 QString mLastSyncedLocalFile; 236 QString mLastSyncedLocalFile;
234 237
235 238
236 QString mDefaultAlarmFile; 239 QString mDefaultAlarmFile;
237 int mIMIPScheduler; 240 int mIMIPScheduler;
238 int mIMIPSend; 241 int mIMIPSend;
239 QStringList mAdditionalMails; 242 QStringList mAdditionalMails;
240 int mIMIPAutoRefresh; 243 int mIMIPAutoRefresh;
241 int mIMIPAutoInsertReply; 244 int mIMIPAutoInsertReply;
242 int mIMIPAutoInsertRequest; 245 int mIMIPAutoInsertRequest;
243 int mIMIPAutoFreeBusy; 246 int mIMIPAutoFreeBusy;
244 int mIMIPAutoFreeBusyReply; 247 int mIMIPAutoFreeBusyReply;
245 248
246 QStringList mTodoTemplates; 249 QStringList mTodoTemplates;
247 QStringList mEventTemplates; 250 QStringList mEventTemplates;
248 251
249 int mDestination; 252 int mDestination;
250 253
251 254
252 bool mEditOnDoubleClick; 255 bool mEditOnDoubleClick;
253 bool mViewChangeHoldFullscreen; 256 bool mViewChangeHoldFullscreen;
254 bool mViewChangeHoldNonFullscreen; 257 bool mViewChangeHoldNonFullscreen;
255 bool mCenterOnCurrentTime; 258 bool mCenterOnCurrentTime;
256 bool mSetTimeToDayStartAt; 259 bool mSetTimeToDayStartAt;
257 bool mHighlightCurrentDay; 260 bool mHighlightCurrentDay;
258 bool mUseHighlightLightColor; 261 bool mUseHighlightLightColor;
259 bool mListViewMonthTimespan; 262 bool mListViewMonthTimespan;
260 bool mWNViewShowsParents; 263 bool mWNViewShowsParents;
261 bool mWNViewShowLocation; 264 bool mWNViewShowLocation;
262 bool mTodoViewShowsPercentage; 265 bool mTodoViewShowsPercentage;
263 bool mTodoViewUsesCatColors; 266 bool mTodoViewUsesCatColors;
264 bool mTodoViewUsesSmallFont; 267 bool mTodoViewUsesSmallFont;
265 bool mTodoViewUsesForegroundColor; 268 bool mTodoViewUsesForegroundColor;
266 bool mMonthViewUsesForegroundColor; 269 bool mMonthViewUsesForegroundColor;
267 270
268 bool mHightlightDateTimeEdit; 271 bool mHightlightDateTimeEdit;
269 int mPreferredLanguage; 272 int mPreferredLanguage;
270 bool mUseQuicksave; 273 bool mUseQuicksave;
271 int mPreferredTime; 274 int mPreferredTime;
272 int mPreferredDate; 275 int mPreferredDate;
273 bool mWeekStartsOnSunday; 276 bool mWeekStartsOnSunday;
274 bool mShortDateInViewer; 277 bool mShortDateInViewer;
275 QString mUserDateFormatLong; 278 QString mUserDateFormatLong;
276 QString mUserDateFormatShort; 279 QString mUserDateFormatShort;
277 280
278 QStringList mLocationDefaults; 281 QStringList mLocationDefaults;
279 QStringList mEventSummaryUser; 282 QStringList mEventSummaryUser;
280 QStringList mTodoSummaryUser; 283 QStringList mTodoSummaryUser;
281 284
282 bool mUseInternalAlarmNotification; 285 bool mUseInternalAlarmNotification;
283 int mAlarmPlayBeeps; 286 int mAlarmPlayBeeps;
284 int mAlarmSuspendTime; 287 int mAlarmSuspendTime;
285 int mAlarmSuspendCount; 288 int mAlarmSuspendCount;
286 int mAlarmBeepInterval; 289 int mAlarmBeepInterval;
287 290
288 private: 291 private:
289 QDict<QColor> mCategoryColors; 292 QDict<QColor> mCategoryColors;
290 QColor mDefaultCategoryColor; 293 QColor mDefaultCategoryColor;
291 294
292 QFont mDefaultTimeBarFont; 295 QFont mDefaultTimeBarFont;
293 QFont mDefaultViewFont; 296 QFont mDefaultViewFont;
294 QFont mDefaultMonthViewFont; 297 QFont mDefaultMonthViewFont;
295 298
296 QString mName; 299 QString mName;
297 QString mEmail; 300 QString mEmail;
298}; 301};
299 302
300#endif 303#endif
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp
index c3c4c26..062c95f 100644
--- a/korganizer/mainwindow.cpp
+++ b/korganizer/mainwindow.cpp
@@ -804,193 +804,199 @@ void MainWindow::initActions()
804 configureToolBarMenu->setItemChecked( 230, true ); 804 configureToolBarMenu->setItemChecked( 230, true );
805 if (p-> mShowIconNextDays) 805 if (p-> mShowIconNextDays)
806 configureToolBarMenu->setItemChecked( 100, true ); 806 configureToolBarMenu->setItemChecked( 100, true );
807 if (p-> mShowIconNext) 807 if (p-> mShowIconNext)
808 configureToolBarMenu->setItemChecked( 110, true ); 808 configureToolBarMenu->setItemChecked( 110, true );
809 if (p-> mShowIconJournal) 809 if (p-> mShowIconJournal)
810 configureToolBarMenu->setItemChecked( 90, true ); 810 configureToolBarMenu->setItemChecked( 90, true );
811 if (p-> mShowIconWhatsThis) 811 if (p-> mShowIconWhatsThis)
812 configureToolBarMenu->setItemChecked( 300, true ); 812 configureToolBarMenu->setItemChecked( 300, true );
813 813
814 QLabel* dummy = new QLabel( iconToolBar ); 814 QLabel* dummy = new QLabel( iconToolBar );
815 dummy->setBackgroundColor( iconToolBar->backgroundColor() ); 815 dummy->setBackgroundColor( iconToolBar->backgroundColor() );
816 if (!p-> mShowIconStretch) 816 if (!p-> mShowIconStretch)
817 iconToolBar->setStretchableWidget ( dummy ) ; 817 iconToolBar->setStretchableWidget ( dummy ) ;
818 else 818 else
819 configureToolBarMenu->setItemChecked( 5, true ); 819 configureToolBarMenu->setItemChecked( 5, true );
820 if (p-> mShowIconWhatsThis) 820 if (p-> mShowIconWhatsThis)
821 QWhatsThis::whatsThisButton ( iconToolBar ); 821 QWhatsThis::whatsThisButton ( iconToolBar );
822 connect( configureToolBarMenu, SIGNAL( activated( int ) ),this, SLOT(configureToolBar( int ) ) ); 822 connect( configureToolBarMenu, SIGNAL( activated( int ) ),this, SLOT(configureToolBar( int ) ) );
823 configureAgenda( p->mHourSize ); 823 configureAgenda( p->mHourSize );
824 connect( configureAgendaMenu, SIGNAL( activated( int ) ),this, SLOT(configureAgenda( int ) ) ); 824 connect( configureAgendaMenu, SIGNAL( activated( int ) ),this, SLOT(configureAgenda( int ) ) );
825} 825}
826void MainWindow::fillSyncMenu() 826void MainWindow::fillSyncMenu()
827{ 827{
828 syncMenu->clear(); 828 syncMenu->clear();
829 syncMenu->insertItem( i18n("Configure..."), 0 ); 829 syncMenu->insertItem( i18n("Configure..."), 0 );
830 syncMenu->insertSeparator(); 830 syncMenu->insertSeparator();
831 syncMenu->insertItem( i18n("Multiple sync"), 1 ); 831 syncMenu->insertItem( i18n("Multiple sync"), 1 );
832 syncMenu->insertSeparator(); 832 syncMenu->insertSeparator();
833 KConfig config ( locateLocal( "config","syncprofilesrc" ) ); 833 KConfig config ( locateLocal( "config","syncprofilesrc" ) );
834 config.setGroup("General"); 834 config.setGroup("General");
835 QStringList prof = config.readListEntry("SyncProfileNames"); 835 QStringList prof = config.readListEntry("SyncProfileNames");
836 KOPrefs::instance()->mLocalMachineName = config.readEntry("LocalMachineName","undefined"); 836 KOPrefs::instance()->mLocalMachineName = config.readEntry("LocalMachineName","undefined");
837 if ( prof.count() < 3 ) { 837 if ( prof.count() < 3 ) {
838 prof.clear(); 838 prof.clear();
839 prof << i18n("Sharp_DTM"); 839 prof << i18n("Sharp_DTM");
840 prof << i18n("Local_file"); 840 prof << i18n("Local_file");
841 prof << i18n("Last_file"); 841 prof << i18n("Last_file");
842 KSyncProfile* temp = new KSyncProfile (); 842 KSyncProfile* temp = new KSyncProfile ();
843 temp->setName( prof[0] ); 843 temp->setName( prof[0] );
844 temp->writeConfig(&config); 844 temp->writeConfig(&config);
845 temp->setName( prof[1] ); 845 temp->setName( prof[1] );
846 temp->writeConfig(&config); 846 temp->writeConfig(&config);
847 temp->setName( prof[2] ); 847 temp->setName( prof[2] );
848 temp->writeConfig(&config); 848 temp->writeConfig(&config);
849 config.setGroup("General"); 849 config.setGroup("General");
850 config.writeEntry("SyncProfileNames",prof); 850 config.writeEntry("SyncProfileNames",prof);
851 config.writeEntry("ExternSyncProfiles","Sharp_DTM"); 851 config.writeEntry("ExternSyncProfiles","Sharp_DTM");
852 config.sync(); 852 config.sync();
853 delete temp; 853 delete temp;
854 } 854 }
855 KOPrefs::instance()->mExternSyncProfiles = config.readListEntry("ExternSyncProfiles"); 855 KOPrefs::instance()->mExternSyncProfiles = config.readListEntry("ExternSyncProfiles");
856 KOPrefs::instance()->mSyncProfileNames = prof; 856 KOPrefs::instance()->mSyncProfileNames = prof;
857 int i; 857 int i;
858 for ( i = 0; i < prof.count(); ++i ) { 858 for ( i = 0; i < prof.count(); ++i ) {
859 859
860 syncMenu->insertItem( prof[i], 1000+i ); 860 syncMenu->insertItem( prof[i], 1000+i );
861 if ( i == 2 ) 861 if ( i == 2 )
862 syncMenu->insertSeparator(); 862 syncMenu->insertSeparator();
863 } 863 }
864 QDir app_dir; 864 QDir app_dir;
865 if ( !app_dir.exists(QDir::homeDirPath()+"/Applications/dtm" ) ) { 865 if ( !app_dir.exists(QDir::homeDirPath()+"/Applications/dtm" ) ) {
866 syncMenu->setItemEnabled( false , 1000 ); 866 syncMenu->setItemEnabled( false , 1000 );
867 } 867 }
868 mView->setupExternSyncProfiles(); 868 mView->setupExternSyncProfiles();
869} 869}
870 870
871int MainWindow::ringSync() 871int MainWindow::ringSync()
872{ 872{
873 int syncedProfiles = 0; 873 int syncedProfiles = 0;
874 int i; 874 int i;
875 QTime timer; 875 QTime timer;
876 KConfig config ( locateLocal( "config","syncprofilesrc" ) ); 876 KConfig config ( locateLocal( "config","syncprofilesrc" ) );
877 QStringList syncProfileNames = KOPrefs::instance()->mSyncProfileNames; 877 QStringList syncProfileNames = KOPrefs::instance()->mSyncProfileNames;
878 KSyncProfile* temp = new KSyncProfile (); 878 KSyncProfile* temp = new KSyncProfile ();
879 KOPrefs::instance()->mAskForPreferences = false; 879 KOPrefs::instance()->mAskForPreferences = false;
880 for ( i = 0; i < syncProfileNames.count(); ++i ) { 880 for ( i = 0; i < syncProfileNames.count(); ++i ) {
881 mCurrentSyncProfile = i; 881 mCurrentSyncProfile = i;
882 temp->setName(syncProfileNames[mCurrentSyncProfile]); 882 temp->setName(syncProfileNames[mCurrentSyncProfile]);
883 temp->readConfig(&config); 883 temp->readConfig(&config);
884 if ( temp->getIncludeInRingSync() && ( i < 1 || i > 2 )) { 884 if ( temp->getIncludeInRingSync() && ( i < 1 || i > 2 )) {
885 setCaption(i18n("Profile ")+syncProfileNames[mCurrentSyncProfile]+ i18n(" is synced ... ")); 885 setCaption(i18n("Profile ")+syncProfileNames[mCurrentSyncProfile]+ i18n(" is synced ... "));
886 ++syncedProfiles; 886 ++syncedProfiles;
887 // KOPrefs::instance()->mAskForPreferences = temp->getAskForPreferences(); 887 // KOPrefs::instance()->mAskForPreferences = temp->getAskForPreferences();
888 KOPrefs::instance()->mWriteBackFile = temp->getWriteBackFile(); 888 KOPrefs::instance()->mWriteBackFile = temp->getWriteBackFile();
889 KOPrefs::instance()->mWriteBackExistingOnly = temp->getWriteBackExisting(); 889 KOPrefs::instance()->mWriteBackExistingOnly = temp->getWriteBackExisting();
890 KOPrefs::instance()->mShowSyncSummary = false; 890 KOPrefs::instance()->mShowSyncSummary = false;
891 mView->setSyncDevice(syncProfileNames[i] ); 891 mView->setSyncDevice(syncProfileNames[i] );
892 mView->setSyncName( KOPrefs::instance()->mLocalMachineName ); 892 mView->setSyncName( KOPrefs::instance()->mLocalMachineName );
893 if ( i == 0 ) { 893 if ( i == 0 ) {
894 syncSharp(); 894 syncSharp();
895 } else { 895 } else {
896 if ( temp->getIsLocalFileSync() ) { 896 if ( temp->getIsLocalFileSync() ) {
897 if ( syncWithFile( temp->getRemoteFileName( ), true ) ) 897 if ( syncWithFile( temp->getRemoteFileName( ), true ) )
898 KOPrefs::instance()->mLastSyncedLocalFile = temp->getRemoteFileName(); 898 KOPrefs::instance()->mLastSyncedLocalFile = temp->getRemoteFileName();
899 } else { 899 } else {
900 syncRemote( temp, false ); 900 if ( temp->getIsPhoneSync() ) {
901 KOPrefs::instance()->mPhoneDevice = temp->getPhoneDevice( ) ;
902 KOPrefs::instance()->mPhoneConnection = temp->getPhoneConnection( );
903 KOPrefs::instance()->mPhoneModel = temp->getPhoneModel( );
904 syncPhone();
905 } else
906 syncRemote( temp, false );
901 907
902 } 908 }
903 } 909 }
904 timer.start(); 910 timer.start();
905 setCaption(i18n("Multiple sync in progress ... please wait!") ); 911 setCaption(i18n("Multiple sync in progress ... please wait!") );
906 while ( timer.elapsed () < 2000 ) { 912 while ( timer.elapsed () < 2000 ) {
907 qApp->processEvents(); 913 qApp->processEvents();
908#ifndef _WIN32_ 914#ifndef _WIN32_
909 sleep (1); 915 sleep (1);
910#endif 916#endif
911 } 917 }
912 918
913 } 919 }
914 920
915 } 921 }
916 delete temp; 922 delete temp;
917 return syncedProfiles; 923 return syncedProfiles;
918} 924}
919 925
920void MainWindow::multiSync( bool askforPrefs ) 926void MainWindow::multiSync( bool askforPrefs )
921{ 927{
922 if (mBlockSaveFlag) 928 if (mBlockSaveFlag)
923 return; 929 return;
924 mBlockSaveFlag = true; 930 mBlockSaveFlag = true;
925 QString question = i18n("Do you really want\nto multiple sync\nwith all checked profiles?\nSyncing takes some\ntime - all profiles\nare synced twice!"); 931 QString question = i18n("Do you really want\nto multiple sync\nwith all checked profiles?\nSyncing takes some\ntime - all profiles\nare synced twice!");
926 if ( QMessageBox::information( this, i18n("KO/Pi Sync"), 932 if ( QMessageBox::information( this, i18n("KO/Pi Sync"),
927 question, 933 question,
928 i18n("Yes"), i18n("No"), 934 i18n("Yes"), i18n("No"),
929 0, 0 ) != 0 ) { 935 0, 0 ) != 0 ) {
930 mBlockSaveFlag = false; 936 mBlockSaveFlag = false;
931 setCaption(i18n("Aborted! Nothing synced!")); 937 setCaption(i18n("Aborted! Nothing synced!"));
932 return; 938 return;
933 } 939 }
934 mView->setSyncDevice(i18n("Multiple profiles") ); 940 mView->setSyncDevice(i18n("Multiple profiles") );
935 KOPrefs::instance()->mSyncAlgoPrefs = KOPrefs::instance()->mRingSyncAlgoPrefs; 941 KOPrefs::instance()->mSyncAlgoPrefs = KOPrefs::instance()->mRingSyncAlgoPrefs;
936 if ( askforPrefs ) { 942 if ( askforPrefs ) {
937 mView->edit_sync_options(); 943 mView->edit_sync_options();
938 KOPrefs::instance()->mRingSyncAlgoPrefs = KOPrefs::instance()->mSyncAlgoPrefs; 944 KOPrefs::instance()->mRingSyncAlgoPrefs = KOPrefs::instance()->mSyncAlgoPrefs;
939 } 945 }
940 setCaption(i18n("Multiple sync started.") ); 946 setCaption(i18n("Multiple sync started.") );
941 qApp->processEvents(); 947 qApp->processEvents();
942 int num = ringSync() ; 948 int num = ringSync() ;
943 if ( num > 1 ) 949 if ( num > 1 )
944 ringSync(); 950 ringSync();
945 mBlockSaveFlag = false; 951 mBlockSaveFlag = false;
946 if ( num ) 952 if ( num )
947 save(); 953 save();
948 if ( num ) 954 if ( num )
949 setCaption(i18n("%1 profiles synced. Multiple sync completed!").arg(num) ); 955 setCaption(i18n("%1 profiles synced. Multiple sync completed!").arg(num) );
950 else 956 else
951 setCaption(i18n("Nothing synced! No profiles defined for multisync!")); 957 setCaption(i18n("Nothing synced! No profiles defined for multisync!"));
952 return; 958 return;
953} 959}
954void MainWindow::slotSyncMenu( int action ) 960void MainWindow::slotSyncMenu( int action )
955{ 961{
956 //qDebug("syncaction %d ", action); 962 //qDebug("syncaction %d ", action);
957 if ( action == 0 ) { 963 if ( action == 0 ) {
958 964
959 confSync(); 965 confSync();
960 966
961 return; 967 return;
962 } 968 }
963 if ( action == 1 ) { 969 if ( action == 1 ) {
964 multiSync( true ); 970 multiSync( true );
965 return; 971 return;
966 } 972 }
967 973
968 if (mBlockSaveFlag) 974 if (mBlockSaveFlag)
969 return; 975 return;
970 mBlockSaveFlag = true; 976 mBlockSaveFlag = true;
971 mCurrentSyncProfile = action - 1000 ; 977 mCurrentSyncProfile = action - 1000 ;
972 mView->setSyncDevice(KOPrefs::instance()->mSyncProfileNames[mCurrentSyncProfile] ); 978 mView->setSyncDevice(KOPrefs::instance()->mSyncProfileNames[mCurrentSyncProfile] );
973 mView->setSyncName( KOPrefs::instance()->mLocalMachineName ); 979 mView->setSyncName( KOPrefs::instance()->mLocalMachineName );
974 KConfig config ( locateLocal( "config","syncprofilesrc" ) ); 980 KConfig config ( locateLocal( "config","syncprofilesrc" ) );
975 KSyncProfile* temp = new KSyncProfile (); 981 KSyncProfile* temp = new KSyncProfile ();
976 temp->setName(KOPrefs::instance()->mSyncProfileNames[mCurrentSyncProfile]); 982 temp->setName(KOPrefs::instance()->mSyncProfileNames[mCurrentSyncProfile]);
977 temp->readConfig(&config); 983 temp->readConfig(&config);
978 KOPrefs::instance()->mAskForPreferences = temp->getAskForPreferences(); 984 KOPrefs::instance()->mAskForPreferences = temp->getAskForPreferences();
979 KOPrefs::instance()->mSyncAlgoPrefs = temp->getSyncPrefs(); 985 KOPrefs::instance()->mSyncAlgoPrefs = temp->getSyncPrefs();
980 KOPrefs::instance()->mWriteBackFile = temp->getWriteBackFile(); 986 KOPrefs::instance()->mWriteBackFile = temp->getWriteBackFile();
981 KOPrefs::instance()->mWriteBackExistingOnly = temp->getWriteBackExisting(); 987 KOPrefs::instance()->mWriteBackExistingOnly = temp->getWriteBackExisting();
982 KOPrefs::instance()->mShowSyncSummary = temp->getShowSummaryAfterSync(); 988 KOPrefs::instance()->mShowSyncSummary = temp->getShowSummaryAfterSync();
983 if ( action == 1000 ) { 989 if ( action == 1000 ) {
984 syncSharp(); 990 syncSharp();
985 991
986 } else if ( action == 1001 ) { 992 } else if ( action == 1001 ) {
987 syncLocalFile(); 993 syncLocalFile();
988 994
989 } else if ( action == 1002 ) { 995 } else if ( action == 1002 ) {
990 quickSyncLocalFile(); 996 quickSyncLocalFile();
991 997
992 } else if ( action >= 1003 ) { 998 } else if ( action >= 1003 ) {
993 if ( temp->getIsLocalFileSync() ) { 999 if ( temp->getIsLocalFileSync() ) {
994 if ( syncWithFile( temp->getRemoteFileName( ), false ) ) 1000 if ( syncWithFile( temp->getRemoteFileName( ), false ) )
995 KOPrefs::instance()->mLastSyncedLocalFile = temp->getRemoteFileName(); 1001 KOPrefs::instance()->mLastSyncedLocalFile = temp->getRemoteFileName();
996 } else { 1002 } else {
@@ -1944,106 +1950,114 @@ void MainWindow::syncSSH()
1944 maxlen += 25; 1950 maxlen += 25;
1945 if ( remoteFile.length() > maxlen ) 1951 if ( remoteFile.length() > maxlen )
1946 question += i18n("Remote file:\n..." ) + remoteFile.right(maxlen) +"\n"; 1952 question += i18n("Remote file:\n..." ) + remoteFile.right(maxlen) +"\n";
1947 else 1953 else
1948 question += i18n("Remote file:\n " ) + remoteFile +"\n"; 1954 question += i18n("Remote file:\n " ) + remoteFile +"\n";
1949 if ( localFile.length() > maxlen ) 1955 if ( localFile.length() > maxlen )
1950 question += i18n("Local temp file:\n..." ) + localFile.right(maxlen) +"\n"; 1956 question += i18n("Local temp file:\n..." ) + localFile.right(maxlen) +"\n";
1951 else 1957 else
1952 question += i18n("Local temp file:\n " ) + localFile +"\n"; 1958 question += i18n("Local temp file:\n " ) + localFile +"\n";
1953 1959
1954 if ( QMessageBox::information( this, i18n("KO/Pi Sync"), 1960 if ( QMessageBox::information( this, i18n("KO/Pi Sync"),
1955 question, 1961 question,
1956 i18n("Yes"), i18n("No"), 1962 i18n("Yes"), i18n("No"),
1957 0, 0 ) != 0 ) 1963 0, 0 ) != 0 )
1958 return; 1964 return;
1959 // if ( !p->mUsePassWd ) { 1965 // if ( !p->mUsePassWd ) {
1960 // QString pass = getPassword(); 1966 // QString pass = getPassword();
1961 // if ( pass.length() > 0 ) 1967 // if ( pass.length() > 0 )
1962 // remoteUser += ":" + pass; 1968 // remoteUser += ":" + pass;
1963 // } 1969 // }
1964 QString command = "scp " + remoteUser + "@" + remoteIP +":" + remoteFile +" " +localFile; 1970 QString command = "scp " + remoteUser + "@" + remoteIP +":" + remoteFile +" " +localFile;
1965 setCaption ( i18n( "Copy remote file to local machine..." ) ); 1971 setCaption ( i18n( "Copy remote file to local machine..." ) );
1966 int fileSize = 0; 1972 int fileSize = 0;
1967 int result = system ( command ); 1973 int result = system ( command );
1968 // 0 : okay 1974 // 0 : okay
1969 // 256: no such file or dir 1975 // 256: no such file or dir
1970 // 1976 //
1971 qDebug("KO: Remote copy result(0 = okay): %d ",result ); 1977 qDebug("KO: Remote copy result(0 = okay): %d ",result );
1972 if ( result != 0 ) { 1978 if ( result != 0 ) {
1973 int len = maxlen; 1979 int len = maxlen;
1974 while ( len < command.length() ) { 1980 while ( len < command.length() ) {
1975 command.insert( len , "\n" ); 1981 command.insert( len , "\n" );
1976 len += maxlen +2; 1982 len += maxlen +2;
1977 } 1983 }
1978 question = i18n("Sorry, the copy command failed!\nCommand was:\n%1\n \nTry command on console to get more\ndetailed info about the reason.\n").arg (command) ; 1984 question = i18n("Sorry, the copy command failed!\nCommand was:\n%1\n \nTry command on console to get more\ndetailed info about the reason.\n").arg (command) ;
1979 QMessageBox::information( this, i18n("KO/Pi Sync - ERROR"), 1985 QMessageBox::information( this, i18n("KO/Pi Sync - ERROR"),
1980 question, 1986 question,
1981 i18n("Okay!")) ; 1987 i18n("Okay!")) ;
1982 setCaption ("KO/Pi"); 1988 setCaption ("KO/Pi");
1983 return; 1989 return;
1984 } 1990 }
1985 1991
1986 1992
1987 setCaption ( i18n( "Copying succeed." ) ); 1993 setCaption ( i18n( "Copying succeed." ) );
1988 //mView->setSyncDevice("ssh-scp" ); 1994 //mView->setSyncDevice("ssh-scp" );
1989 if ( syncWithFile(localFile , true ) ) { 1995 if ( syncWithFile(localFile , true ) ) {
1990// Event* e = mView->getLastSyncEvent(); 1996// Event* e = mView->getLastSyncEvent();
1991// e->setReadOnly( false ); 1997// e->setReadOnly( false );
1992// e->setLocation( KOPrefs::instance()->mSyncProfileNames[mCurrentSyncProfile]); 1998// e->setLocation( KOPrefs::instance()->mSyncProfileNames[mCurrentSyncProfile]);
1993// e->setReadOnly( true ); 1999// e->setReadOnly( true );
1994 if ( KOPrefs::instance()->mWriteBackFile ) { 2000 if ( KOPrefs::instance()->mWriteBackFile ) {
1995 command = "scp " + localFile +" " +remoteUser + "@" + remoteIP +":" + remoteFile ; 2001 command = "scp " + localFile +" " +remoteUser + "@" + remoteIP +":" + remoteFile ;
1996 setCaption ( i18n( "Writing back file ..." ) ); 2002 setCaption ( i18n( "Writing back file ..." ) );
1997 result = system ( command ); 2003 result = system ( command );
1998 if ( result != 0 ) { 2004 if ( result != 0 ) {
1999 int len = maxlen; 2005 int len = maxlen;
2000 while ( len < command.length() ) { 2006 while ( len < command.length() ) {
2001 command.insert( len , "\n" ); 2007 command.insert( len , "\n" );
2002 len += maxlen +2; 2008 len += maxlen +2;
2003 } 2009 }
2004 question = i18n("Sorry, the copy back command failed!\nCommand was:\n%1\n \nTry command on console to get more\ndetailed info about the reason.\n").arg (command) ; 2010 question = i18n("Sorry, the copy back command failed!\nCommand was:\n%1\n \nTry command on console to get more\ndetailed info about the reason.\n").arg (command) ;
2005 QMessageBox::information( this, i18n("KO/Pi Sync - ERROR"), 2011 QMessageBox::information( this, i18n("KO/Pi Sync - ERROR"),
2006 question, 2012 question,
2007 i18n("Okay!")) ; 2013 i18n("Okay!")) ;
2008 setCaption ("KO/Pi"); 2014 setCaption ("KO/Pi");
2009 return; 2015 return;
2010 } else { 2016 } else {
2011 setCaption ( i18n( "Syncronization sucessfully completed" ) ); 2017 setCaption ( i18n( "Syncronization sucessfully completed" ) );
2012 } 2018 }
2013 } 2019 }
2014 } 2020 }
2015 return; 2021 return;
2016#if 0 2022#if 0
2017 system ("scp zaurus@192.168.0.65:/home/zaurus/Applications/korganizer/mycalendar.ics /home/polo/Applications/korganizer/z_sync.ics"); 2023 system ("scp zaurus@192.168.0.65:/home/zaurus/Applications/korganizer/mycalendar.ics /home/polo/Applications/korganizer/z_sync.ics");
2018 while ( timer.elapsed() < 5000 ) 2024 while ( timer.elapsed() < 5000 )
2019 qApp->processEvents(); 2025 qApp->processEvents();
2020 2026
2021 qDebug("MainWindow::merging) "); 2027 qDebug("MainWindow::merging) ");
2022 mView->syncCalendar( "/home/polo/Applications/korganizer/z_sync.ics", 0 ); 2028 mView->syncCalendar( "/home/polo/Applications/korganizer/z_sync.ics", 0 );
2023 while ( mBlockSaveFlag ) 2029 while ( mBlockSaveFlag )
2024 qApp->processEvents(); 2030 qApp->processEvents();
2025 save(); 2031 save();
2026 system ("scp /home/polo/Applications/korganizer/mycalendar.ics zaurus@192.168.0.65:/home/zaurus/Applications/korganizer/mycalendar.ics"); 2032 system ("scp /home/polo/Applications/korganizer/mycalendar.ics zaurus@192.168.0.65:/home/zaurus/Applications/korganizer/mycalendar.ics");
2027#endif 2033#endif
2028 2034
2029} 2035}
2030 2036
2031 2037
2032void MainWindow::syncSharp() 2038void MainWindow::syncSharp()
2033{ 2039{
2034 if ( mCalendarModifiedFlag ) 2040 if ( mCalendarModifiedFlag )
2035 save(); 2041 save();
2036 mView->syncSharp(); 2042 mView->syncSharp();
2037 slotModifiedChanged( true ); 2043 slotModifiedChanged( true );
2038 2044
2039} 2045}
2046void MainWindow::syncPhone()
2047{
2048 if ( mCalendarModifiedFlag )
2049 save();
2050 mView->syncPhone();
2051 slotModifiedChanged( true );
2052
2053}
2040 2054
2041void MainWindow::printSel( ) 2055void MainWindow::printSel( )
2042{ 2056{
2043 mView->viewManager()->agendaView()->agenda()->printSelection(); 2057 mView->viewManager()->agendaView()->agenda()->printSelection();
2044} 2058}
2045 2059
2046void MainWindow::printCal() 2060void MainWindow::printCal()
2047{ 2061{
2048 mView->print();//mCp->showDialog(); 2062 mView->print();//mCp->showDialog();
2049} 2063}
diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h
index fba8c52..1d87db0 100644
--- a/korganizer/mainwindow.h
+++ b/korganizer/mainwindow.h
@@ -1,120 +1,121 @@
1#ifndef KORGE_MAINWINDOW_H 1#ifndef KORGE_MAINWINDOW_H
2#define KORGE_MAINWINDOW_H 2#define KORGE_MAINWINDOW_H
3 3
4#include <qmainwindow.h> 4#include <qmainwindow.h>
5#include <qtimer.h> 5#include <qtimer.h>
6#include <qdict.h> 6#include <qdict.h>
7 7
8#include <libkcal/incidence.h> 8#include <libkcal/incidence.h>
9#include "simplealarmclient.h" 9#include "simplealarmclient.h"
10 10
11class QAction; 11class QAction;
12class CalendarView; 12class CalendarView;
13class KSyncProfile; 13class KSyncProfile;
14#ifdef DESKTOP_VERSION 14#ifdef DESKTOP_VERSION
15 15
16#define QPEToolBar QToolBar 16#define QPEToolBar QToolBar
17#define QPEMenuBar QMenuBar 17#define QPEMenuBar QMenuBar
18#endif 18#endif
19class QPEToolBar; 19class QPEToolBar;
20 20
21namespace KCal { 21namespace KCal {
22class CalendarLocal; 22class CalendarLocal;
23} 23}
24 24
25using namespace KCal; 25using namespace KCal;
26 26
27class MainWindow : public QMainWindow 27class MainWindow : public QMainWindow
28{ 28{
29 Q_OBJECT 29 Q_OBJECT
30 public: 30 public:
31 MainWindow( QWidget *parent = 0, const char *name = 0, QString command = ""); 31 MainWindow( QWidget *parent = 0, const char *name = 0, QString command = "");
32 ~MainWindow(); 32 ~MainWindow();
33 public slots: 33 public slots:
34 void configureAgenda( int ); 34 void configureAgenda( int );
35 void recieve( const QCString& msg, const QByteArray& data ); 35 void recieve( const QCString& msg, const QByteArray& data );
36 static QString defaultFileName(); 36 static QString defaultFileName();
37 static QString resourcePath(); 37 static QString resourcePath();
38 protected slots: 38 protected slots:
39 void setCaptionToDates(); 39 void setCaptionToDates();
40 int ringSync(); 40 int ringSync();
41 void multiSync( bool askforPrefs = false ); 41 void multiSync( bool askforPrefs = false );
42 void about(); 42 void about();
43 void licence(); 43 void licence();
44 void faq(); 44 void faq();
45 void usertrans(); 45 void usertrans();
46 void features(); 46 void features();
47 void synchowto(); 47 void synchowto();
48 void whatsNew(); 48 void whatsNew();
49 void keyBindings(); 49 void keyBindings();
50 void aboutAutoSaving();; 50 void aboutAutoSaving();;
51 void aboutKnownBugs(); 51 void aboutKnownBugs();
52 52
53 void processIncidenceSelection( Incidence * ); 53 void processIncidenceSelection( Incidence * );
54 54
55 void importQtopia(); 55 void importQtopia();
56 void importBday(); 56 void importBday();
57 void importOL(); 57 void importOL();
58 void importIcal(); 58 void importIcal();
59 void importFile( QString, bool ); 59 void importFile( QString, bool );
60 void quickImportIcal(); 60 void quickImportIcal();
61 61
62 void slotModifiedChanged( bool ); 62 void slotModifiedChanged( bool );
63 63
64 void save(); 64 void save();
65 void configureToolBar( int ); 65 void configureToolBar( int );
66 void printSel(); 66 void printSel();
67 void printCal(); 67 void printCal();
68 void saveCalendar(); 68 void saveCalendar();
69 void loadCalendar(); 69 void loadCalendar();
70 void exportVCalendar(); 70 void exportVCalendar();
71 void fillFilterMenu(); 71 void fillFilterMenu();
72 void selectFilter( int ); 72 void selectFilter( int );
73 73
74 void slotSyncMenu( int ); 74 void slotSyncMenu( int );
75 void syncSSH(); 75 void syncSSH();
76 void confSync(); 76 void confSync();
77 void syncSharp(); 77 void syncSharp();
78 void syncPhone();
78 void syncLocalFile(); 79 void syncLocalFile();
79 bool syncWithFile( QString, bool ); 80 bool syncWithFile( QString, bool );
80 void quickSyncLocalFile(); 81 void quickSyncLocalFile();
81 82
82 83
83 protected: 84 protected:
84 void displayText( QString, QString); 85 void displayText( QString, QString);
85 void displayFile( QString, QString); 86 void displayFile( QString, QString);
86 87
87 void enableIncidenceActions( bool ); 88 void enableIncidenceActions( bool );
88 89
89 private: 90 private:
90 void saveOnClose(); 91 void saveOnClose();
91 int mCurrentSyncProfile; 92 int mCurrentSyncProfile;
92 void syncRemote( KSyncProfile* , bool ask = true); 93 void syncRemote( KSyncProfile* , bool ask = true);
93 void fillSyncMenu(); 94 void fillSyncMenu();
94 bool mFlagKeyPressed; 95 bool mFlagKeyPressed;
95 bool mBlockAtStartup; 96 bool mBlockAtStartup;
96 QPEToolBar *iconToolBar; 97 QPEToolBar *iconToolBar;
97 void initActions(); 98 void initActions();
98 void setDefaultPreferences(); 99 void setDefaultPreferences();
99 void keyPressEvent ( QKeyEvent * ) ; 100 void keyPressEvent ( QKeyEvent * ) ;
100 void keyReleaseEvent ( QKeyEvent * ) ; 101 void keyReleaseEvent ( QKeyEvent * ) ;
101 QPopupMenu *configureToolBarMenu; 102 QPopupMenu *configureToolBarMenu;
102 QPopupMenu *selectFilterMenu; 103 QPopupMenu *selectFilterMenu;
103 QPopupMenu *configureAgendaMenu, *syncMenu; 104 QPopupMenu *configureAgendaMenu, *syncMenu;
104 CalendarLocal *mCalendar; 105 CalendarLocal *mCalendar;
105 CalendarView *mView; 106 CalendarView *mView;
106 QString getPassword(); 107 QString getPassword();
107 QAction *mNewSubTodoAction; 108 QAction *mNewSubTodoAction;
108 109
109 QAction *mShowAction; 110 QAction *mShowAction;
110 QAction *mEditAction; 111 QAction *mEditAction;
111 QAction *mDeleteAction; 112 QAction *mDeleteAction;
112 void closeEvent( QCloseEvent* ce ); 113 void closeEvent( QCloseEvent* ce );
113 SimpleAlarmClient mAlarmClient; 114 SimpleAlarmClient mAlarmClient;
114 QTimer mSaveTimer; 115 QTimer mSaveTimer;
115 bool mBlockSaveFlag; 116 bool mBlockSaveFlag;
116 bool mCalendarModifiedFlag; 117 bool mCalendarModifiedFlag;
117 QPixmap loadPixmap( QString ); 118 QPixmap loadPixmap( QString );
118}; 119};
119 120
120#endif 121#endif
diff --git a/libkdepim/ksyncprofile.cpp b/libkdepim/ksyncprofile.cpp
index 15dc152..e7c35fb 100644
--- a/libkdepim/ksyncprofile.cpp
+++ b/libkdepim/ksyncprofile.cpp
@@ -1,191 +1,186 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 Copyright (c) 2004 Lutz Rogowski <rogowski@kde.org> 3 Copyright (c) 2004 Lutz Rogowski <rogowski@kde.org>
4 4
5 This library is free software; you can redistribute it and/or 5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public 6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either 7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version. 8 version 2 of the License, or (at your option) any later version.
9 9
10 This library is distributed in the hope that it will be useful, 10 This library 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 GNU 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details. 13 Library General Public License for more details.
14 14
15 You should have received a copy of the GNU Library General Public License 15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to 16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA. 18 Boston, MA 02111-1307, USA.
19*/ 19*/
20 20
21// $Id$ 21// $Id$
22 22
23#include <qcolor.h> 23#include <qcolor.h>
24 24
25#include <kconfig.h> 25#include <kconfig.h>
26#include <kstandarddirs.h> 26#include <kstandarddirs.h>
27#include <kglobal.h> 27#include <kglobal.h>
28#include <kdebug.h> 28#include <kdebug.h>
29 29
30#include "ksyncprofile.h" 30#include "ksyncprofile.h"
31 31
32 32
33KSyncProfile::KSyncProfile( const char * identifier): QObject (0, identifier ) 33KSyncProfile::KSyncProfile(): QObject ()
34{ 34{
35 setIdentifier( identifier );
36
37 if (getIdentifier().isEmpty())
38 setIdentifier( "noID" );
39
40 setDefault(); 35 setDefault();
41} 36}
42KSyncProfile::~KSyncProfile() 37KSyncProfile::~KSyncProfile()
43{ 38{
44 39
45} 40}
46 41
47 42
48KSyncProfile* KSyncProfile::clone() 43KSyncProfile* KSyncProfile::clone()
49{ 44{
50 KSyncProfile* myClone = new KSyncProfile(); 45 KSyncProfile* myClone = new KSyncProfile();
51 myClone->setPreSyncCommand( mPreSyncCommand ); 46 myClone->setPreSyncCommand( mPreSyncCommand );
52 myClone->setPostSyncCommand( mPostSyncCommand ); 47 myClone->setPostSyncCommand( mPostSyncCommand );
53 myClone->setLocalTempFile( mLocalTempFile); 48 myClone->setLocalTempFile( mLocalTempFile);
54 myClone->setRemoteFileName( mRemoteFileName ); 49 myClone->setRemoteFileName( mRemoteFileName );
55 myClone->setPreSyncCommandAB( mPreSyncCommandAB ); 50 myClone->setPreSyncCommandAB( mPreSyncCommandAB );
56 myClone->setPostSyncCommandAB( mPostSyncCommandAB ); 51 myClone->setPostSyncCommandAB( mPostSyncCommandAB );
57 myClone->setLocalTempFileAB( mLocalTempFileAB); 52 myClone->setLocalTempFileAB( mLocalTempFileAB);
58 myClone->setRemoteFileNameAB( mRemoteFileNameAB ); 53 myClone->setRemoteFileNameAB( mRemoteFileNameAB );
59 myClone->setShowSummaryAfterSync( mShowSummaryAfterSync ); 54 myClone->setShowSummaryAfterSync( mShowSummaryAfterSync );
60 myClone->setAskForPreferences( mAskForPreferences); 55 myClone->setAskForPreferences( mAskForPreferences);
61 myClone->setWriteBackExisting(mWriteBackExisting ); 56 myClone->setWriteBackExisting(mWriteBackExisting );
62 myClone->setWriteBackFile( mWriteBackFile); 57 myClone->setWriteBackFile( mWriteBackFile);
63 myClone->setWriteBackFuture( mWriteBackFuture ); 58 myClone->setWriteBackFuture( mWriteBackFuture );
64 myClone->setWriteBackFutureWeeks( mWriteBackFutureWeeks ); 59 myClone->setWriteBackFutureWeeks( mWriteBackFutureWeeks );
65 myClone->setIncludeInRingSync( mIncludeInRingSync ); 60 myClone->setIncludeInRingSync( mIncludeInRingSync );
66 myClone->setIncludeInRingSyncAB( mIncludeInRingSyncAB ); 61 myClone->setIncludeInRingSyncAB( mIncludeInRingSyncAB );
67 myClone->setSyncPrefs( mSyncPrefs); 62 myClone->setSyncPrefs( mSyncPrefs);
68 myClone->setIsLocalFileSync( mIsLocalFileSync ); 63 myClone->setIsLocalFileSync( mIsLocalFileSync );
69 myClone->setIsPhoneSync( mIsPhoneSync ); 64 myClone->setIsPhoneSync( mIsPhoneSync );
70 myClone->setName( "noName" ); 65 myClone->setName( "noName" );
71 myClone->setIdentifier( "noID" ); 66 //myClone->setIdentifier( "noID" );
72 return myClone; 67 return myClone;
73} 68}
74 69
75 70
76void KSyncProfile::setDefault() 71void KSyncProfile::setDefault()
77{ 72{
78 mPreSyncCommand = i18n("command for downloading remote file to local device"); 73 mPreSyncCommand = i18n("command for downloading remote file to local device");
79 mPostSyncCommand = i18n("command for uploading local temp file to remote device"); 74 mPostSyncCommand = i18n("command for uploading local temp file to remote device");
80 mLocalTempFile = "/tmp/mycalendar.ics"; 75 mLocalTempFile = "/tmp/mycalendar.ics";
81 mRemoteFileName = "/home/polo/kdepim/apps/korganizer/localfile.ics"; 76 mRemoteFileName = "/home/polo/kdepim/apps/korganizer/localfile.ics";
82 mPreSyncCommandAB = i18n("command for downloading remote file to local device"); 77 mPreSyncCommandAB = i18n("command for downloading remote file to local device");
83 mPostSyncCommandAB = i18n("command for uploading local temp file to remote device"); 78 mPostSyncCommandAB = i18n("command for uploading local temp file to remote device");
84 mLocalTempFileAB = "/tmp/std.vcf"; 79 mLocalTempFileAB = "/tmp/std.vcf";
85 mRemoteFileNameAB = "/home/polo/kdepim/apps/kabc/localfile.vcf"; 80 mRemoteFileNameAB = "/home/polo/kdepim/apps/kabc/localfile.vcf";
86 mShowSummaryAfterSync = true; 81 mShowSummaryAfterSync = true;
87 mAskForPreferences = true; 82 mAskForPreferences = true;
88 mWriteBackExisting = false; 83 mWriteBackExisting = false;
89 mWriteBackFuture = false; 84 mWriteBackFuture = false;
90 mWriteBackFutureWeeks = 12; 85 mWriteBackFutureWeeks = 12;
91 mWriteBackFile = true; 86 mWriteBackFile = true;
92 mIncludeInRingSync = false; 87 mIncludeInRingSync = false;
93 mIncludeInRingSyncAB = false; 88 mIncludeInRingSyncAB = false;
94 mSyncPrefs = SYNC_PREF_ASK; 89 mSyncPrefs = SYNC_PREF_ASK;
95 mIsLocalFileSync = true; 90 mIsLocalFileSync = true;
96 mName = "noName"; 91 mName = "noName";
97 mIsPhoneSync = false; 92 mIsPhoneSync = false;
98 mPhoneDevice = "/dev/ircomm"; 93 mPhoneDevice = "/dev/ircomm";
99 mPhoneConnection = "irda"; 94 mPhoneConnection = "irda";
100 mPhoneModel = "6310i"; 95 mPhoneModel = "6310i";
101} 96}
102void KSyncProfile::readConfig(KConfig *config ) 97void KSyncProfile::readConfig(KConfig *config )
103{ 98{
104 if (config) 99 if (config)
105 { 100 {
106 101
107 config->setGroup("SyncProfile_" + mIdentifier); 102 config->setGroup( mName );
108 103
109 mName = config->readEntry( "Name", mName ); 104 mName = config->readEntry( "Name", mName );
110 mPreSyncCommand = config->readEntry( "PreSyncCommand",mPreSyncCommand ); 105 mPreSyncCommand = config->readEntry( "PreSyncCommand",mPreSyncCommand );
111 mPostSyncCommand = config->readEntry( "PostSyncCommand", mPostSyncCommand ); 106 mPostSyncCommand = config->readEntry( "PostSyncCommand", mPostSyncCommand );
112 mLocalTempFile = config->readEntry( "LocalTempFile", mLocalTempFile ); 107 mLocalTempFile = config->readEntry( "LocalTempFile", mLocalTempFile );
113 mRemoteFileName = config->readEntry( "RemoteFileName", mRemoteFileName ); 108 mRemoteFileName = config->readEntry( "RemoteFileName", mRemoteFileName );
114 109
115 mPreSyncCommandAB = config->readEntry( "PreSyncCommandAB",mPreSyncCommandAB ); 110 mPreSyncCommandAB = config->readEntry( "PreSyncCommandAB",mPreSyncCommandAB );
116 mPostSyncCommandAB = config->readEntry( "PostSyncCommandAB", mPostSyncCommandAB ); 111 mPostSyncCommandAB = config->readEntry( "PostSyncCommandAB", mPostSyncCommandAB );
117 mLocalTempFileAB = config->readEntry( "LocalTempFileAB", mLocalTempFileAB ); 112 mLocalTempFileAB = config->readEntry( "LocalTempFileAB", mLocalTempFileAB );
118 mRemoteFileNameAB = config->readEntry( "RemoteFileNameAB", mRemoteFileNameAB ); 113 mRemoteFileNameAB = config->readEntry( "RemoteFileNameAB", mRemoteFileNameAB );
119 114
120 mPhoneDevice = config->readEntry( "PhoneDevice", mPhoneDevice ); 115 mPhoneDevice = config->readEntry( "PhoneDevice", mPhoneDevice );
121 mPhoneConnection = config->readEntry( "PhoneConnection", mPhoneConnection ); 116 mPhoneConnection = config->readEntry( "PhoneConnection", mPhoneConnection );
122 mPhoneModel = config->readEntry( "PhoneModel", mPhoneModel ); 117 mPhoneModel = config->readEntry( "PhoneModel", mPhoneModel );
123 118
124 mIncludeInRingSync = config->readBoolEntry( "IncludeInRingSync",mIncludeInRingSync ); 119 mIncludeInRingSync = config->readBoolEntry( "IncludeInRingSync",mIncludeInRingSync );
125 mIncludeInRingSyncAB = config->readBoolEntry( "IncludeInRingSyncAB",mIncludeInRingSyncAB ); 120 mIncludeInRingSyncAB = config->readBoolEntry( "IncludeInRingSyncAB",mIncludeInRingSyncAB );
126 mShowSummaryAfterSync = config->readBoolEntry( "ShowSummaryAfterSync", mShowSummaryAfterSync ); 121 mShowSummaryAfterSync = config->readBoolEntry( "ShowSummaryAfterSync", mShowSummaryAfterSync );
127 mAskForPreferences = config->readBoolEntry( "AskForPreferences",mAskForPreferences ); 122 mAskForPreferences = config->readBoolEntry( "AskForPreferences",mAskForPreferences );
128 mWriteBackExisting = config->readBoolEntry( "WriteBackExisting",mWriteBackExisting ); 123 mWriteBackExisting = config->readBoolEntry( "WriteBackExisting",mWriteBackExisting );
129 mWriteBackFuture = config->readBoolEntry( "WriteBackFuture",mWriteBackFuture ); 124 mWriteBackFuture = config->readBoolEntry( "WriteBackFuture",mWriteBackFuture );
130 mSyncPrefs = config->readNumEntry( "SyncPrefs", mSyncPrefs ); 125 mSyncPrefs = config->readNumEntry( "SyncPrefs", mSyncPrefs );
131 mWriteBackFutureWeeks = config->readNumEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks ); 126 mWriteBackFutureWeeks = config->readNumEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks );
132 mIsLocalFileSync= config->readBoolEntry( "IsLocalFileSync", mIsLocalFileSync ); 127 mIsLocalFileSync= config->readBoolEntry( "IsLocalFileSync", mIsLocalFileSync );
133 mIsPhoneSync= config->readBoolEntry( "IsPhoneSync", mIsPhoneSync ); 128 mIsPhoneSync= config->readBoolEntry( "IsPhoneSync", mIsPhoneSync );
134 } 129 }
135 else 130 else
136 { 131 {
137 setDefault(); 132 setDefault();
138 } 133 }
139} 134}
140 135
141void KSyncProfile::deleteConfig(KConfig *config ) 136void KSyncProfile::deleteConfig(KConfig *config )
142{ 137{
143 config->deleteGroup( "SyncProfile_" + mIdentifier ); 138 config->deleteGroup( mName );
144} 139}
145 140
146void KSyncProfile::writeConfig( KConfig * config ) 141void KSyncProfile::writeConfig( KConfig * config )
147{ 142{
148 config->setGroup("SyncProfile_" + mIdentifier); 143 config->setGroup(mName);
149 144
150 config->writeEntry( "Name", mName ); 145 config->writeEntry( "Name", mName );
151 config->writeEntry( "PreSyncCommand",mPreSyncCommand ); 146 config->writeEntry( "PreSyncCommand",mPreSyncCommand );
152 config->writeEntry( "PostSyncCommand", mPostSyncCommand ); 147 config->writeEntry( "PostSyncCommand", mPostSyncCommand );
153 config->writeEntry( "LocalTempFile", mLocalTempFile ); 148 config->writeEntry( "LocalTempFile", mLocalTempFile );
154 config->writeEntry( "RemoteFileName", mRemoteFileName ); 149 config->writeEntry( "RemoteFileName", mRemoteFileName );
155 150
156 config->writeEntry( "PreSyncCommandAB",mPreSyncCommandAB ); 151 config->writeEntry( "PreSyncCommandAB",mPreSyncCommandAB );
157 config->writeEntry( "PostSyncCommandAB", mPostSyncCommandAB ); 152 config->writeEntry( "PostSyncCommandAB", mPostSyncCommandAB );
158 config->writeEntry( "LocalTempFileAB", mLocalTempFileAB ); 153 config->writeEntry( "LocalTempFileAB", mLocalTempFileAB );
159 config->writeEntry( "RemoteFileNameAB", mRemoteFileNameAB ); 154 config->writeEntry( "RemoteFileNameAB", mRemoteFileNameAB );
160 155
161 config->writeEntry( "PhoneDevice", mPhoneDevice ); 156 config->writeEntry( "PhoneDevice", mPhoneDevice );
162 config->writeEntry( "PhoneConnection", mPhoneConnection ); 157 config->writeEntry( "PhoneConnection", mPhoneConnection );
163 config->writeEntry( "PhoneModel", mPhoneModel ); 158 config->writeEntry( "PhoneModel", mPhoneModel );
164 159
165 config->writeEntry( "IncludeInRingSync",mIncludeInRingSync ); 160 config->writeEntry( "IncludeInRingSync",mIncludeInRingSync );
166 config->writeEntry( "IncludeInRingSyncAB",mIncludeInRingSyncAB ); 161 config->writeEntry( "IncludeInRingSyncAB",mIncludeInRingSyncAB );
167 config->writeEntry( "ShowSummaryAfterSync", mShowSummaryAfterSync ); 162 config->writeEntry( "ShowSummaryAfterSync", mShowSummaryAfterSync );
168 config->writeEntry( "AskForPreferences",mAskForPreferences ); 163 config->writeEntry( "AskForPreferences",mAskForPreferences );
169 config->writeEntry( "WriteBackExisting",mWriteBackExisting ); 164 config->writeEntry( "WriteBackExisting",mWriteBackExisting );
170 config->writeEntry( "WriteBackFuture",mWriteBackFuture ); 165 config->writeEntry( "WriteBackFuture",mWriteBackFuture );
171 config->writeEntry( "SyncPrefs", mSyncPrefs ); 166 config->writeEntry( "SyncPrefs", mSyncPrefs );
172 config->writeEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks); 167 config->writeEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks);
173 config->writeEntry( "IsLocalFileSync", mIsLocalFileSync ); 168 config->writeEntry( "IsLocalFileSync", mIsLocalFileSync );
174 config->writeEntry( "IsPhoneSync", mIsPhoneSync ); 169 config->writeEntry( "IsPhoneSync", mIsPhoneSync );
175} 170}
176 171
177/* 172/*
178class KPrefsItemInt : public KPrefsItem { 173class KPrefsItemInt : public KPrefsItem {
179 public: 174 public:
180 KPrefsItemInt(const QString &group,const QString &name,int *,int defaultValue=0); 175 KPrefsItemInt(const QString &group,const QString &name,int *,int defaultValue=0);
181 virtual ~KPrefsItemInt() {} 176 virtual ~KPrefsItemInt() {}
182 177
183 void setDefault(); 178 void setDefault();
184 void readConfig(KConfig *); 179 void readConfig(KConfig *);
185 void writeConfig(KConfig *); 180 void writeConfig(KConfig *);
186 181
187 private: 182 private:
188 int *mReference; 183 int *mReference;
189 int mDefault; 184 int mDefault;
190}; 185};
191*/ 186*/
diff --git a/libkdepim/ksyncprofile.h b/libkdepim/ksyncprofile.h
index 8995def..a0cfb71 100644
--- a/libkdepim/ksyncprofile.h
+++ b/libkdepim/ksyncprofile.h
@@ -1,142 +1,139 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 Copyright (c) 2004 Lutz Rogowski <rogowski@kde.org> 3 Copyright (c) 2004 Lutz Rogowski <rogowski@kde.org>
4 4
5 This library is free software; you can redistribute it and/or 5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public 6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either 7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version. 8 version 2 of the License, or (at your option) any later version.
9 9
10 This library is distributed in the hope that it will be useful, 10 This library 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 GNU 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details. 13 Library General Public License for more details.
14 14
15 You should have received a copy of the GNU Library General Public License 15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to 16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA. 18 Boston, MA 02111-1307, USA.
19*/ 19*/
20#ifndef _KSYNCPROFILE_H 20#ifndef _KSYNCPROFILE_H
21#define _KSYNCPROFILE_H 21#define _KSYNCPROFILE_H
22 22
23#include <qptrlist.h> 23#include <qptrlist.h>
24#include <qcolor.h> 24#include <qcolor.h>
25#include <qfont.h> 25#include <qfont.h>
26#include <qstringlist.h> 26#include <qstringlist.h>
27#include <qobject.h> 27#include <qobject.h>
28#include <qstring.h> 28#include <qstring.h>
29 29
30#include <libkcal/syncdefines.h> 30#include <libkcal/syncdefines.h>
31 31
32 32
33 33
34class KConfig; 34class KConfig;
35 35
36/** 36/**
37 @short Class for storing a preferences setting 37 @short Class for storing a preferences setting
38 @author Cornelius Schumacher 38 @author Cornelius Schumacher
39 @see KPref 39 @see KPref
40 40
41 This class represents one preferences setting as used by @ref KPrefs. 41 This class represents one preferences setting as used by @ref KPrefs.
42 Subclasses of KPrefsItem implement storage functions for a certain type of 42 Subclasses of KPrefsItem implement storage functions for a certain type of
43 setting. Normally you don't have to use this class directly. Use the special 43 setting. Normally you don't have to use this class directly. Use the special
44 addItem() functions of KPrefs instead. If you subclass this class you will 44 addItem() functions of KPrefs instead. If you subclass this class you will
45 have to register instances with the function KPrefs::addItem(). 45 have to register instances with the function KPrefs::addItem().
46*/ 46*/
47class KSyncProfile : public QObject { 47class KSyncProfile : public QObject {
48 public: 48 public:
49 KSyncProfile( const char * identifier = 0); 49 KSyncProfile();
50 ~KSyncProfile() ; 50 ~KSyncProfile() ;
51 51
52 KSyncProfile* clone(); 52 KSyncProfile* clone();
53 void setDefault(); 53 void setDefault();
54 void readConfig(KConfig *); 54 void readConfig(KConfig *);
55 void writeConfig(KConfig *); 55 void writeConfig(KConfig *);
56 void deleteConfig(KConfig *); 56 void deleteConfig(KConfig *);
57 57
58 void setIdentifier( const QString& i ) {mIdentifier = i;}
59 QString getIdentifier( ) { return mIdentifier;}
60 void setPreSyncCommand( const QString& n ) {mPreSyncCommand = n;} 58 void setPreSyncCommand( const QString& n ) {mPreSyncCommand = n;}
61 QString getPreSyncCommand( ) { return mPreSyncCommand; } 59 QString getPreSyncCommand( ) { return mPreSyncCommand; }
62 void setPostSyncCommand( const QString& n ) {mPostSyncCommand = n;} 60 void setPostSyncCommand( const QString& n ) {mPostSyncCommand = n;}
63 QString getPostSyncCommand( ) { return mPostSyncCommand;} 61 QString getPostSyncCommand( ) { return mPostSyncCommand;}
64 void setLocalTempFile( const QString& n ) { mLocalTempFile= n;} 62 void setLocalTempFile( const QString& n ) { mLocalTempFile= n;}
65 QString getLocalTempFile( ) { return mLocalTempFile;} 63 QString getLocalTempFile( ) { return mLocalTempFile;}
66 void setRemoteFileName( const QString& n ) { mRemoteFileName = n;} 64 void setRemoteFileName( const QString& n ) { mRemoteFileName = n;}
67 QString getRemoteFileName( ) { return mRemoteFileName;} 65 QString getRemoteFileName( ) { return mRemoteFileName;}
68 66
69 void setPreSyncCommandAB( const QString& n ) {mPreSyncCommandAB = n;} 67 void setPreSyncCommandAB( const QString& n ) {mPreSyncCommandAB = n;}
70 QString getPreSyncCommandAB( ) { return mPreSyncCommandAB; } 68 QString getPreSyncCommandAB( ) { return mPreSyncCommandAB; }
71 void setPostSyncCommandAB( const QString& n ) {mPostSyncCommandAB = n;} 69 void setPostSyncCommandAB( const QString& n ) {mPostSyncCommandAB = n;}
72 QString getPostSyncCommandAB( ) { return mPostSyncCommandAB;} 70 QString getPostSyncCommandAB( ) { return mPostSyncCommandAB;}
73 void setLocalTempFileAB( const QString& n ) { mLocalTempFileAB= n;} 71 void setLocalTempFileAB( const QString& n ) { mLocalTempFileAB= n;}
74 QString getLocalTempFileAB( ) { return mLocalTempFileAB;} 72 QString getLocalTempFileAB( ) { return mLocalTempFileAB;}
75 void setRemoteFileNameAB( const QString& n ) { mRemoteFileNameAB = n;} 73 void setRemoteFileNameAB( const QString& n ) { mRemoteFileNameAB = n;}
76 QString getRemoteFileNameAB( ) { return mRemoteFileNameAB;} 74 QString getRemoteFileNameAB( ) { return mRemoteFileNameAB;}
77 75
78 void setPhoneDevice( const QString& n ) { mPhoneDevice = n;} 76 void setPhoneDevice( const QString& n ) { mPhoneDevice = n;}
79 QString getPhoneDevice( ) { return mPhoneDevice;} 77 QString getPhoneDevice( ) { return mPhoneDevice;}
80 void setPhoneConnection( const QString& n ) { mPhoneConnection = n;} 78 void setPhoneConnection( const QString& n ) { mPhoneConnection = n;}
81 QString getPhoneConnection( ) { return mPhoneConnection;} 79 QString getPhoneConnection( ) { return mPhoneConnection;}
82 void setPhoneModel( const QString& n ) { mPhoneModel = n;} 80 void setPhoneModel( const QString& n ) { mPhoneModel = n;}
83 QString getPhoneModel( ) { return mPhoneModel;} 81 QString getPhoneModel( ) { return mPhoneModel;}
84 /* 82 /*
85 void set( const QString& n ) { = n;} 83 void set( const QString& n ) { = n;}
86 QString get( ) { return ;} 84 QString get( ) { return ;}
87 */ 85 */
88 86
89 void setName( const QString& n ) {mName = n;} 87 void setName( const QString& n ) {mName = n;}
90 QString getName( ) { return mName;} 88 QString getName( ) { return mName;}
91 void setShowSummaryAfterSync( bool b ) { mShowSummaryAfterSync = b;} 89 void setShowSummaryAfterSync( bool b ) { mShowSummaryAfterSync = b;}
92 bool getShowSummaryAfterSync( ) { return mShowSummaryAfterSync ;} 90 bool getShowSummaryAfterSync( ) { return mShowSummaryAfterSync ;}
93 void setAskForPreferences( bool b ) { mAskForPreferences= b;} 91 void setAskForPreferences( bool b ) { mAskForPreferences= b;}
94 bool getAskForPreferences( ) { return mAskForPreferences;} 92 bool getAskForPreferences( ) { return mAskForPreferences;}
95 void setWriteBackExisting( bool b ) { mWriteBackExisting = b;} 93 void setWriteBackExisting( bool b ) { mWriteBackExisting = b;}
96 bool getWriteBackExisting( ) { return mWriteBackExisting;} 94 bool getWriteBackExisting( ) { return mWriteBackExisting;}
97 void setWriteBackFuture( bool b ) { mWriteBackFuture = b;} 95 void setWriteBackFuture( bool b ) { mWriteBackFuture = b;}
98 bool getWriteBackFuture( ) { return mWriteBackFuture;} 96 bool getWriteBackFuture( ) { return mWriteBackFuture;}
99 void setWriteBackFile( bool b ) { mWriteBackFile= b;} 97 void setWriteBackFile( bool b ) { mWriteBackFile= b;}
100 bool getWriteBackFile( ) { return mWriteBackFile;} 98 bool getWriteBackFile( ) { return mWriteBackFile;}
101 void setIncludeInRingSync( bool b ) {mIncludeInRingSync = b;} 99 void setIncludeInRingSync( bool b ) {mIncludeInRingSync = b;}
102 bool getIncludeInRingSync( ) { return mIncludeInRingSync;} 100 bool getIncludeInRingSync( ) { return mIncludeInRingSync;}
103 void setIncludeInRingSyncAB( bool b ) {mIncludeInRingSyncAB = b;} 101 void setIncludeInRingSyncAB( bool b ) {mIncludeInRingSyncAB = b;}
104 bool getIncludeInRingSyncAB( ) { return mIncludeInRingSyncAB;} 102 bool getIncludeInRingSyncAB( ) { return mIncludeInRingSyncAB;}
105 void setSyncPrefs( int n ) { mSyncPrefs= n;} 103 void setSyncPrefs( int n ) { mSyncPrefs= n;}
106 int getSyncPrefs( ) { return mSyncPrefs;} 104 int getSyncPrefs( ) { return mSyncPrefs;}
107 void setWriteBackFutureWeeks( int n ) { mWriteBackFutureWeeks= n;} 105 void setWriteBackFutureWeeks( int n ) { mWriteBackFutureWeeks= n;}
108 int getWriteBackFutureWeeks( ) { return mWriteBackFutureWeeks;} 106 int getWriteBackFutureWeeks( ) { return mWriteBackFutureWeeks;}
109 void setIsLocalFileSync( bool b ) { mIsLocalFileSync= b;} 107 void setIsLocalFileSync( bool b ) { mIsLocalFileSync= b;}
110 bool getIsLocalFileSync( ) { return mIsLocalFileSync;} 108 bool getIsLocalFileSync( ) { return mIsLocalFileSync;}
111 void setIsPhoneSync( bool b ) { mIsPhoneSync= b;} 109 void setIsPhoneSync( bool b ) { mIsPhoneSync= b;}
112 bool getIsPhoneSync( ) { return mIsPhoneSync;} 110 bool getIsPhoneSync( ) { return mIsPhoneSync;}
113 private: 111 private:
114 QString mName; 112 QString mName;
115 QString mIdentifier;
116 QString mPreSyncCommand; 113 QString mPreSyncCommand;
117 QString mPostSyncCommand; 114 QString mPostSyncCommand;
118 QString mLocalTempFile; 115 QString mLocalTempFile;
119 QString mRemoteFileName; 116 QString mRemoteFileName;
120 QString mPreSyncCommandAB; 117 QString mPreSyncCommandAB;
121 QString mPostSyncCommandAB; 118 QString mPostSyncCommandAB;
122 QString mLocalTempFileAB; 119 QString mLocalTempFileAB;
123 QString mRemoteFileNameAB; 120 QString mRemoteFileNameAB;
124 121
125 QString mPhoneDevice; 122 QString mPhoneDevice;
126 QString mPhoneConnection; 123 QString mPhoneConnection;
127 QString mPhoneModel; 124 QString mPhoneModel;
128 125
129 bool mIncludeInRingSync; 126 bool mIncludeInRingSync;
130 bool mIncludeInRingSyncAB; 127 bool mIncludeInRingSyncAB;
131 int mSyncPrefs; 128 int mSyncPrefs;
132 bool mWriteBackFile; 129 bool mWriteBackFile;
133 bool mWriteBackExisting; 130 bool mWriteBackExisting;
134 bool mWriteBackFuture; 131 bool mWriteBackFuture;
135 int mWriteBackFutureWeeks; 132 int mWriteBackFutureWeeks;
136 bool mAskForPreferences; 133 bool mAskForPreferences;
137 bool mShowSummaryAfterSync; 134 bool mShowSummaryAfterSync;
138 bool mIsLocalFileSync; 135 bool mIsLocalFileSync;
139 bool mIsPhoneSync; 136 bool mIsPhoneSync;
140}; 137};
141 138
142#endif 139#endif