-rw-r--r-- | korganizer/calendarview.cpp | 8 | ||||
-rw-r--r-- | korganizer/calendarview.h | 1 | ||||
-rw-r--r-- | korganizer/main.cpp | 6 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 59 | ||||
-rw-r--r-- | korganizer/mainwindow.h | 12 |
5 files changed, 77 insertions, 9 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 884c61a..0306e07 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp | |||
@@ -1213,65 +1213,68 @@ bool CalendarView::syncCalendar(QString filename, int mode) | |||
1213 | { | 1213 | { |
1214 | storage->setSaveFormat( new ICalFormat() ); | 1214 | storage->setSaveFormat( new ICalFormat() ); |
1215 | storage->save(); | 1215 | storage->save(); |
1216 | } | 1216 | } |
1217 | } | 1217 | } |
1218 | setModified( true ); | 1218 | setModified( true ); |
1219 | } | 1219 | } |
1220 | delete storage; | 1220 | delete storage; |
1221 | delete calendar; | 1221 | delete calendar; |
1222 | if ( syncOK ) | 1222 | if ( syncOK ) |
1223 | updateView(); | 1223 | updateView(); |
1224 | return syncOK; | 1224 | return syncOK; |
1225 | } | 1225 | } |
1226 | 1226 | ||
1227 | void CalendarView::syncExternal( int mode ) | 1227 | void CalendarView::syncExternal( int mode ) |
1228 | { | 1228 | { |
1229 | mGlobalSyncMode = SYNC_MODE_EXTERNAL; | 1229 | mGlobalSyncMode = SYNC_MODE_EXTERNAL; |
1230 | 1230 | ||
1231 | qApp->processEvents(); | 1231 | qApp->processEvents(); |
1232 | CalendarLocal* calendar = new CalendarLocal(); | 1232 | CalendarLocal* calendar = new CalendarLocal(); |
1233 | calendar->setTimeZoneId(KOPrefs::instance()->mTimeZoneId); | 1233 | calendar->setTimeZoneId(KOPrefs::instance()->mTimeZoneId); |
1234 | bool syncOK = false; | 1234 | bool syncOK = false; |
1235 | bool loadSuccess = false; | 1235 | bool loadSuccess = false; |
1236 | PhoneFormat* phoneFormat = 0; | 1236 | PhoneFormat* phoneFormat = 0; |
1237 | emit tempDisableBR(true); | ||
1237 | #ifndef DESKTOP_VERSION | 1238 | #ifndef DESKTOP_VERSION |
1238 | SharpFormat* sharpFormat = 0; | 1239 | SharpFormat* sharpFormat = 0; |
1239 | if ( mode == 0 ) { // sharp | 1240 | if ( mode == 0 ) { // sharp |
1240 | sharpFormat = new SharpFormat () ; | 1241 | sharpFormat = new SharpFormat () ; |
1241 | loadSuccess = sharpFormat->load( calendar, mCalendar ); | 1242 | loadSuccess = sharpFormat->load( calendar, mCalendar ); |
1242 | 1243 | ||
1243 | } else | 1244 | } else |
1244 | #endif | 1245 | #endif |
1245 | if ( mode == 1 ) { // phone | 1246 | if ( mode == 1 ) { // phone |
1246 | phoneFormat = new PhoneFormat (mCurrentSyncDevice, | 1247 | phoneFormat = new PhoneFormat (mCurrentSyncDevice, |
1247 | mSyncManager->mPhoneDevice, | 1248 | mSyncManager->mPhoneDevice, |
1248 | mSyncManager->mPhoneConnection, | 1249 | mSyncManager->mPhoneConnection, |
1249 | mSyncManager->mPhoneModel); | 1250 | mSyncManager->mPhoneModel); |
1250 | loadSuccess = phoneFormat->load( calendar,mCalendar); | 1251 | loadSuccess = phoneFormat->load( calendar,mCalendar); |
1251 | 1252 | ||
1252 | } else | 1253 | } else { |
1253 | return; | 1254 | emit tempDisableBR(false); |
1255 | return; | ||
1256 | } | ||
1254 | if ( loadSuccess ) { | 1257 | if ( loadSuccess ) { |
1255 | getEventViewerDialog()->setSyncMode( true ); | 1258 | getEventViewerDialog()->setSyncMode( true ); |
1256 | syncOK = synchronizeCalendar( mCalendar, calendar, mSyncManager->mSyncAlgoPrefs ); | 1259 | syncOK = synchronizeCalendar( mCalendar, calendar, mSyncManager->mSyncAlgoPrefs ); |
1257 | getEventViewerDialog()->setSyncMode( false ); | 1260 | getEventViewerDialog()->setSyncMode( false ); |
1258 | qApp->processEvents(); | 1261 | qApp->processEvents(); |
1259 | if ( syncOK ) { | 1262 | if ( syncOK ) { |
1260 | if ( mSyncManager->mWriteBackFile ) | 1263 | if ( mSyncManager->mWriteBackFile ) |
1261 | { | 1264 | { |
1262 | QPtrList<Incidence> iL = mCalendar->rawIncidences(); | 1265 | QPtrList<Incidence> iL = mCalendar->rawIncidences(); |
1263 | Incidence* inc = iL.first(); | 1266 | Incidence* inc = iL.first(); |
1264 | if ( phoneFormat ) { | 1267 | if ( phoneFormat ) { |
1265 | while ( inc ) { | 1268 | while ( inc ) { |
1266 | inc->removeID(mCurrentSyncDevice); | 1269 | inc->removeID(mCurrentSyncDevice); |
1267 | inc = iL.next(); | 1270 | inc = iL.next(); |
1268 | } | 1271 | } |
1269 | } | 1272 | } |
1270 | #ifndef DESKTOP_VERSION | 1273 | #ifndef DESKTOP_VERSION |
1271 | if ( sharpFormat ) | 1274 | if ( sharpFormat ) |
1272 | sharpFormat->save(calendar); | 1275 | sharpFormat->save(calendar); |
1273 | #endif | 1276 | #endif |
1274 | if ( phoneFormat ) | 1277 | if ( phoneFormat ) |
1275 | phoneFormat->save(calendar); | 1278 | phoneFormat->save(calendar); |
1276 | iL = calendar->rawIncidences(); | 1279 | iL = calendar->rawIncidences(); |
1277 | inc = iL.first(); | 1280 | inc = iL.first(); |
@@ -1282,48 +1285,49 @@ void CalendarView::syncExternal( int mode ) | |||
1282 | if ( loc ) { | 1285 | if ( loc ) { |
1283 | loc->setID(mCurrentSyncDevice, inc->getID(mCurrentSyncDevice) ); | 1286 | loc->setID(mCurrentSyncDevice, inc->getID(mCurrentSyncDevice) ); |
1284 | loc->setCsum( mCurrentSyncDevice, inc->getCsum(mCurrentSyncDevice) ); | 1287 | loc->setCsum( mCurrentSyncDevice, inc->getCsum(mCurrentSyncDevice) ); |
1285 | } | 1288 | } |
1286 | } | 1289 | } |
1287 | inc = iL.next(); | 1290 | inc = iL.next(); |
1288 | } | 1291 | } |
1289 | Incidence* lse = getLastSyncEvent(); | 1292 | Incidence* lse = getLastSyncEvent(); |
1290 | if ( lse ) { | 1293 | if ( lse ) { |
1291 | lse->setReadOnly( false ); | 1294 | lse->setReadOnly( false ); |
1292 | lse->setDescription( "" ); | 1295 | lse->setDescription( "" ); |
1293 | lse->setReadOnly( true ); | 1296 | lse->setReadOnly( true ); |
1294 | } | 1297 | } |
1295 | } | 1298 | } |
1296 | } | 1299 | } |
1297 | setModified( true ); | 1300 | setModified( true ); |
1298 | } else { | 1301 | } else { |
1299 | QString question = i18n("Sorry, the database access\ncommand failed!\n\nNothing synced!\n") ; | 1302 | QString question = i18n("Sorry, the database access\ncommand failed!\n\nNothing synced!\n") ; |
1300 | QMessageBox::information( 0, i18n("KO/Pi Import - ERROR"), | 1303 | QMessageBox::information( 0, i18n("KO/Pi Import - ERROR"), |
1301 | question, i18n("Ok")) ; | 1304 | question, i18n("Ok")) ; |
1302 | 1305 | ||
1303 | } | 1306 | } |
1304 | delete calendar; | 1307 | delete calendar; |
1305 | updateView(); | 1308 | updateView(); |
1309 | emit tempDisableBR(false); | ||
1306 | return ;//syncOK; | 1310 | return ;//syncOK; |
1307 | 1311 | ||
1308 | } | 1312 | } |
1309 | 1313 | ||
1310 | bool CalendarView::importBday() | 1314 | bool CalendarView::importBday() |
1311 | { | 1315 | { |
1312 | #ifndef KORG_NOKABC | 1316 | #ifndef KORG_NOKABC |
1313 | 1317 | ||
1314 | #ifdef DESKTOP_VERSION | 1318 | #ifdef DESKTOP_VERSION |
1315 | KABC::StdAddressBook* AddressBook = KABC::StdAddressBook::self( true ); | 1319 | KABC::StdAddressBook* AddressBook = KABC::StdAddressBook::self( true ); |
1316 | KABC::AddressBook::Iterator it; | 1320 | KABC::AddressBook::Iterator it; |
1317 | int count = 0; | 1321 | int count = 0; |
1318 | for( it = AddressBook->begin(); it != AddressBook->end(); ++it ) { | 1322 | for( it = AddressBook->begin(); it != AddressBook->end(); ++it ) { |
1319 | ++count; | 1323 | ++count; |
1320 | } | 1324 | } |
1321 | QProgressBar bar(count,0 ); | 1325 | QProgressBar bar(count,0 ); |
1322 | int w = 300; | 1326 | int w = 300; |
1323 | if ( QApplication::desktop()->width() < 320 ) | 1327 | if ( QApplication::desktop()->width() < 320 ) |
1324 | w = 220; | 1328 | w = 220; |
1325 | int h = bar.sizeHint().height() ; | 1329 | int h = bar.sizeHint().height() ; |
1326 | int dw = QApplication::desktop()->width(); | 1330 | int dw = QApplication::desktop()->width(); |
1327 | int dh = QApplication::desktop()->height(); | 1331 | int dh = QApplication::desktop()->height(); |
1328 | bar.setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); | 1332 | bar.setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); |
1329 | bar.show(); | 1333 | bar.show(); |
diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h index 1cd896d..2818ee9 100644 --- a/korganizer/calendarview.h +++ b/korganizer/calendarview.h | |||
@@ -96,48 +96,49 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser | |||
96 | const char *name = 0 ); | 96 | const char *name = 0 ); |
97 | virtual ~CalendarView(); | 97 | virtual ~CalendarView(); |
98 | 98 | ||
99 | Calendar *calendar() { return mCalendar; } | 99 | Calendar *calendar() { return mCalendar; } |
100 | 100 | ||
101 | KOViewManager *viewManager(); | 101 | KOViewManager *viewManager(); |
102 | KODialogManager *dialogManager(); | 102 | KODialogManager *dialogManager(); |
103 | 103 | ||
104 | QDate startDate(); | 104 | QDate startDate(); |
105 | QDate endDate(); | 105 | QDate endDate(); |
106 | 106 | ||
107 | QWidgetStack *viewStack(); | 107 | QWidgetStack *viewStack(); |
108 | QWidget *leftFrame(); | 108 | QWidget *leftFrame(); |
109 | NavigatorBar *navigatorBar(); | 109 | NavigatorBar *navigatorBar(); |
110 | 110 | ||
111 | DateNavigator *dateNavigator(); | 111 | DateNavigator *dateNavigator(); |
112 | KDateNavigator *dateNavigatorWidget(); | 112 | KDateNavigator *dateNavigatorWidget(); |
113 | 113 | ||
114 | void addView(KOrg::BaseView *); | 114 | void addView(KOrg::BaseView *); |
115 | void showView(KOrg::BaseView *); | 115 | void showView(KOrg::BaseView *); |
116 | KOEventViewerDialog* getEventViewerDialog(); | 116 | KOEventViewerDialog* getEventViewerDialog(); |
117 | Incidence *currentSelection(); | 117 | Incidence *currentSelection(); |
118 | 118 | ||
119 | signals: | 119 | signals: |
120 | void tempDisableBR(bool); | ||
120 | /** This todo has been modified */ | 121 | /** This todo has been modified */ |
121 | void todoModified(Todo *, int); | 122 | void todoModified(Todo *, int); |
122 | 123 | ||
123 | /** when change is made to options dialog, the topwidget will catch this | 124 | /** when change is made to options dialog, the topwidget will catch this |
124 | * and emit this signal which notifies all widgets which have registered | 125 | * and emit this signal which notifies all widgets which have registered |
125 | * for notification to update their settings. */ | 126 | * for notification to update their settings. */ |
126 | void configChanged(); | 127 | void configChanged(); |
127 | /** emitted when the topwidget is closing down, so that any attached | 128 | /** emitted when the topwidget is closing down, so that any attached |
128 | child windows can also close. */ | 129 | child windows can also close. */ |
129 | void closingDown(); | 130 | void closingDown(); |
130 | /** emitted right before we die */ | 131 | /** emitted right before we die */ |
131 | void closed(QWidget *); | 132 | void closed(QWidget *); |
132 | 133 | ||
133 | /** Emitted when state of modified flag changes */ | 134 | /** Emitted when state of modified flag changes */ |
134 | void modifiedChanged(bool); | 135 | void modifiedChanged(bool); |
135 | void signalmodified(); | 136 | void signalmodified(); |
136 | 137 | ||
137 | /** Emitted when state of read-only flag changes */ | 138 | /** Emitted when state of read-only flag changes */ |
138 | void readOnlyChanged(bool); | 139 | void readOnlyChanged(bool); |
139 | 140 | ||
140 | /** Emitted when the unit of navigation changes */ | 141 | /** Emitted when the unit of navigation changes */ |
141 | void changeNavStringPrev(const QString &); | 142 | void changeNavStringPrev(const QString &); |
142 | void changeNavStringNext(const QString &); | 143 | void changeNavStringNext(const QString &); |
143 | 144 | ||
diff --git a/korganizer/main.cpp b/korganizer/main.cpp index 16186c0..c8a55d2 100644 --- a/korganizer/main.cpp +++ b/korganizer/main.cpp | |||
@@ -59,50 +59,46 @@ int main( int argc, char **argv ) | |||
59 | printf(" -showWeek: Week view\n"); | 59 | printf(" -showWeek: Week view\n"); |
60 | printf(" -showTodo: Todo view\n"); | 60 | printf(" -showTodo: Todo view\n"); |
61 | printf(" -showJournal: Journal view\n"); | 61 | printf(" -showJournal: Journal view\n"); |
62 | printf(" -showKO: Next Days view\n"); | 62 | printf(" -showKO: Next Days view\n"); |
63 | printf(" -showWNext: What's Next view\n"); | 63 | printf(" -showWNext: What's Next view\n"); |
64 | printf(" -showNextXView: Next X View\n"); | 64 | printf(" -showNextXView: Next X View\n"); |
65 | printf(" -new[Y] and -show[X] may be used togehther\n"); | 65 | printf(" -new[Y] and -show[X] may be used togehther\n"); |
66 | printf(" KO/Pi is exiting now. Bye!\n"); | 66 | printf(" KO/Pi is exiting now. Bye!\n"); |
67 | exitHelp = true; | 67 | exitHelp = true; |
68 | } | 68 | } |
69 | } | 69 | } |
70 | if ( ! exitHelp ) { | 70 | if ( ! exitHelp ) { |
71 | KGlobal::setAppName( "korganizer" ); | 71 | KGlobal::setAppName( "korganizer" ); |
72 | QString fileName ; | 72 | QString fileName ; |
73 | #ifndef DESKTOP_VERSION | 73 | #ifndef DESKTOP_VERSION |
74 | fileName = getenv("QPEDIR"); | 74 | fileName = getenv("QPEDIR"); |
75 | KGlobal::iconLoader()->setIconPath( fileName +"/pics/kdepim/korganizer/"); | 75 | KGlobal::iconLoader()->setIconPath( fileName +"/pics/kdepim/korganizer/"); |
76 | #else | 76 | #else |
77 | fileName = qApp->applicationDirPath () + "/kdepim/korganizer/"; | 77 | fileName = qApp->applicationDirPath () + "/kdepim/korganizer/"; |
78 | KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName)); | 78 | KGlobal::iconLoader()->setIconPath(QDir::convertSeparators(fileName)); |
79 | #endif | 79 | #endif |
80 | KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "korganizer"))); | 80 | KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "korganizer"))); |
81 | MainWindow m; | 81 | MainWindow m; |
82 | #ifndef DESKTOP_VERSION | 82 | #ifndef DESKTOP_VERSION |
83 | QCopChannel* c1 = new QCopChannel("QPE/Application/datebook",&m, "channel" ) ; | 83 | |
84 | QObject::connect( c1, SIGNAL (received ( const QCString &, const QByteArray & )),&m, SLOT(recieve( const QCString&, const QByteArray& ))); | ||
85 | QObject::connect( &a, SIGNAL (appMessage ( const QCString &, const QByteArray & )),&m, SLOT(recieve( const QCString&, const QByteArray& ))); | 84 | QObject::connect( &a, SIGNAL (appMessage ( const QCString &, const QByteArray & )),&m, SLOT(recieve( const QCString&, const QByteArray& ))); |
86 | a.showMainWidget(&m ); | 85 | a.showMainWidget(&m ); |
87 | #else | 86 | #else |
88 | a.setMainWidget(&m ); | 87 | a.setMainWidget(&m ); |
89 | m.show(); | 88 | m.show(); |
90 | //m.resize( 800, 600 ); | 89 | //m.resize( 800, 600 ); |
91 | QObject::connect(&a, SIGNAL(lastWindowClosed()), &a, SLOT(quit())); | 90 | QObject::connect(&a, SIGNAL(lastWindowClosed()), &a, SLOT(quit())); |
92 | #endif | 91 | #endif |
93 | if ( argc > 1 ) { | 92 | if ( argc > 1 ) { |
94 | QCString command = argv[1]; | 93 | QCString command = argv[1]; |
95 | if ( argc > 2 ) | 94 | if ( argc > 2 ) |
96 | command += argv[2]; | 95 | command += argv[2]; |
97 | qApp->processEvents(); | 96 | qApp->processEvents(); |
98 | m.recieve(command, QByteArray() ); | 97 | m.recieve(command, QByteArray() ); |
99 | 98 | ||
100 | } | 99 | } |
101 | a.exec(); | 100 | a.exec(); |
102 | #ifndef DESKTOP_VERSION | ||
103 | delete c1; | ||
104 | #endif | ||
105 | 101 | ||
106 | } | 102 | } |
107 | qDebug("KO: Bye! "); | 103 | qDebug("KO: Bye! "); |
108 | } | 104 | } |
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 02ca523..9e215b9 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp | |||
@@ -216,94 +216,145 @@ MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) : | |||
216 | qApp->processEvents(); | 216 | qApp->processEvents(); |
217 | } | 217 | } |
218 | } | 218 | } |
219 | mView->saveCalendar( defaultFileName() ); | 219 | mView->saveCalendar( defaultFileName() ); |
220 | newFile = true; | 220 | newFile = true; |
221 | } | 221 | } |
222 | 222 | ||
223 | QTime neededSaveTime = QDateTime::currentDateTime().time(); | 223 | QTime neededSaveTime = QDateTime::currentDateTime().time(); |
224 | mView->openCalendar( defaultFileName() ); | 224 | mView->openCalendar( defaultFileName() ); |
225 | int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); | 225 | int msNeeded = neededSaveTime.msecsTo( QDateTime::currentDateTime().time() ); |
226 | qDebug("KO: Calendar loading time: %d ms",msNeeded ); | 226 | qDebug("KO: Calendar loading time: %d ms",msNeeded ); |
227 | 227 | ||
228 | if ( KOPrefs::instance()->mLanguageChanged ) { | 228 | if ( KOPrefs::instance()->mLanguageChanged ) { |
229 | KOPrefs::instance()->setCategoryDefaults(); | 229 | KOPrefs::instance()->setCategoryDefaults(); |
230 | int count = mView->addCategories(); | 230 | int count = mView->addCategories(); |
231 | KOPrefs::instance()->mLanguageChanged = false; | 231 | KOPrefs::instance()->mLanguageChanged = false; |
232 | } | 232 | } |
233 | processIncidenceSelection( 0 ); | 233 | processIncidenceSelection( 0 ); |
234 | connect( mView, SIGNAL( incidenceSelected( Incidence * ) ), | 234 | connect( mView, SIGNAL( incidenceSelected( Incidence * ) ), |
235 | SLOT( processIncidenceSelection( Incidence * ) ) ); | 235 | SLOT( processIncidenceSelection( Incidence * ) ) ); |
236 | connect( mView, SIGNAL( modifiedChanged( bool ) ), | 236 | connect( mView, SIGNAL( modifiedChanged( bool ) ), |
237 | SLOT( slotModifiedChanged( bool ) ) ); | 237 | SLOT( slotModifiedChanged( bool ) ) ); |
238 | 238 | ||
239 | 239 | ||
240 | connect( mView, SIGNAL( tempDisableBR(bool) ), | ||
241 | SLOT( disableBR(bool) ) ); | ||
240 | connect( &mSaveTimer, SIGNAL( timeout() ), SLOT( save() ) ); | 242 | connect( &mSaveTimer, SIGNAL( timeout() ), SLOT( save() ) ); |
241 | mView->setModified( false ); | 243 | mView->setModified( false ); |
242 | mBlockAtStartup = false; | 244 | mBlockAtStartup = false; |
243 | mView->setModified( false ); | 245 | mView->setModified( false ); |
244 | setCentralWidget( mView ); | 246 | setCentralWidget( mView ); |
245 | globalFlagBlockStartup = 0; | 247 | globalFlagBlockStartup = 0; |
246 | mView->show(); | 248 | mView->show(); |
247 | delete splash; | 249 | delete splash; |
248 | if ( newFile ) | 250 | if ( newFile ) |
249 | mView->updateConfig(); | 251 | mView->updateConfig(); |
250 | // qApp->processEvents(); | 252 | // qApp->processEvents(); |
251 | //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ()); | 253 | //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ()); |
252 | //fillSyncMenu(); | 254 | //fillSyncMenu(); |
253 | 255 | ||
254 | 256 | ||
255 | connect(mSyncManager , SIGNAL( save() ), this, SLOT( save() ) ); | 257 | connect(mSyncManager , SIGNAL( save() ), this, SLOT( save() ) ); |
256 | connect(mSyncManager , SIGNAL( request_file() ), this, SLOT( syncFileRequest() ) ); | 258 | connect(mSyncManager , SIGNAL( request_file() ), this, SLOT( syncFileRequest() ) ); |
257 | connect(mSyncManager , SIGNAL( getFile( bool )), this, SLOT(getFile( bool ) ) ); | 259 | connect(mSyncManager , SIGNAL( getFile( bool )), this, SLOT(getFile( bool ) ) ); |
258 | mSyncManager->setDefaultFileName( defaultFileName()); | 260 | mSyncManager->setDefaultFileName( defaultFileName()); |
259 | connect ( syncMenu, SIGNAL( activated ( int ) ), mSyncManager, SLOT (slotSyncMenu( int ) ) ); | 261 | connect ( syncMenu, SIGNAL( activated ( int ) ), mSyncManager, SLOT (slotSyncMenu( int ) ) ); |
260 | mSyncManager->fillSyncMenu(); | 262 | mSyncManager->fillSyncMenu(); |
261 | 263 | ||
262 | 264 | ||
263 | 265 | ||
264 | mView->viewManager()->agendaView()->setStartHour( KOPrefs::instance()->mDayBegins ); | 266 | mView->viewManager()->agendaView()->setStartHour( KOPrefs::instance()->mDayBegins ); |
265 | if ( showWarning ) { | 267 | if ( showWarning ) { |
266 | KMessageBox::information( this, | 268 | KMessageBox::information( this, |
267 | "You are starting KO/Pi for the first time.\nPlease read menu: Help-What's New,\nif you did an update!\nPlease choose your timezone in the \nConfigure Dialog TAB Time Zone!\nPlease choose your language\nin the TAB Locale!\nYou get the Configure Dialog\nvia Menu: Actions - Configure....\nClick OK to show the Configure Dialog!\n", "KO/Pi information"); | 269 | "You are starting KO/Pi for the first time.\nPlease read menu: Help-What's New,\nif you did an update!\nPlease choose your timezone in the \nConfigure Dialog TAB Time Zone!\nPlease choose your language\nin the TAB Locale!\nYou get the Configure Dialog\nvia Menu: Actions - Configure....\nClick OK to show the Configure Dialog!\n", "KO/Pi information"); |
268 | qApp->processEvents(); | 270 | qApp->processEvents(); |
269 | mView->dialogManager()->showSyncOptions(); | 271 | mView->dialogManager()->showSyncOptions(); |
270 | } | 272 | } |
271 | 273 | ||
272 | //US listen for result adressed from Ka/Pi | 274 | //US listen for result adressed from Ka/Pi |
273 | #ifndef DESKTOP_VERSION | 275 | #ifndef DESKTOP_VERSION |
274 | connect(qApp, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & ))); | 276 | connect(qApp, SIGNAL (appMessage ( const QCString &, const QByteArray & )), ExternalAppHandler::instance(), SLOT (appMessage ( const QCString &, const QByteArray & ))); |
275 | #endif | 277 | #endif |
276 | 278 | #ifndef DESKTOP_VERSION | |
279 | infrared = 0; | ||
280 | #endif | ||
281 | |||
282 | mBRdisabled = false; | ||
283 | toggleBeamReceive(); | ||
277 | } | 284 | } |
278 | MainWindow::~MainWindow() | 285 | MainWindow::~MainWindow() |
279 | { | 286 | { |
280 | //qDebug("MainWindow::~MainWindow() "); | 287 | //qDebug("MainWindow::~MainWindow() "); |
281 | //save toolbar location | 288 | //save toolbar location |
282 | delete mCalendar; | 289 | delete mCalendar; |
283 | delete mSyncManager; | 290 | delete mSyncManager; |
291 | if ( infrared ) | ||
292 | delete infrared; | ||
293 | |||
294 | |||
295 | } | ||
296 | |||
297 | void MainWindow::disableBR(bool b) | ||
298 | { | ||
299 | if ( b ) { | ||
300 | if ( infrared ) { | ||
301 | toggleBeamReceive(); | ||
302 | mBRdisabled = true; | ||
303 | } | ||
304 | } else { | ||
305 | if ( mBRdisabled ) { | ||
306 | mBRdisabled = false; | ||
307 | toggleBeamReceive(); | ||
308 | } | ||
309 | } | ||
284 | 310 | ||
311 | } | ||
312 | bool MainWindow::beamReceiveEnabled() | ||
313 | { | ||
314 | #ifndef DESKTOP_VERSION | ||
315 | return ( infrared != 0 ); | ||
316 | #endif | ||
317 | return false; | ||
318 | } | ||
285 | 319 | ||
320 | void MainWindow::toggleBeamReceive() | ||
321 | { | ||
322 | if ( mBRdisabled ) | ||
323 | return; | ||
324 | #ifndef DESKTOP_VERSION | ||
325 | if ( infrared ) { | ||
326 | qDebug("disable BeamReceive "); | ||
327 | delete infrared; | ||
328 | infrared = 0; | ||
329 | brAction->setOn(false); | ||
330 | return; | ||
331 | } | ||
332 | qDebug("enable BeamReceive "); | ||
333 | brAction->setOn(true); | ||
334 | infrared = new QCopChannel("QPE/Application/datebook",this, "channel" ) ; | ||
335 | QObject::connect( infrared, SIGNAL (received ( const QCString &, const QByteArray & )),this, SLOT(recieve( const QCString&, const QByteArray& ))); | ||
336 | #endif | ||
286 | } | 337 | } |
287 | void MainWindow::showMaximized () | 338 | void MainWindow::showMaximized () |
288 | { | 339 | { |
289 | #ifndef DESKTOP_VERSION | 340 | #ifndef DESKTOP_VERSION |
290 | if ( ! globalFlagBlockStartup ) | 341 | if ( ! globalFlagBlockStartup ) |
291 | if ( mClosed ) | 342 | if ( mClosed ) |
292 | mView->goToday(); | 343 | mView->goToday(); |
293 | #endif | 344 | #endif |
294 | QWidget::showMaximized () ; | 345 | QWidget::showMaximized () ; |
295 | mClosed = false; | 346 | mClosed = false; |
296 | } | 347 | } |
297 | void MainWindow::closeEvent( QCloseEvent* ce ) | 348 | void MainWindow::closeEvent( QCloseEvent* ce ) |
298 | { | 349 | { |
299 | 350 | ||
300 | 351 | ||
301 | 352 | ||
302 | if ( ! KOPrefs::instance()->mAskForQuit ) { | 353 | if ( ! KOPrefs::instance()->mAskForQuit ) { |
303 | saveOnClose(); | 354 | saveOnClose(); |
304 | mClosed = true; | 355 | mClosed = true; |
305 | ce->accept(); | 356 | ce->accept(); |
306 | return; | 357 | return; |
307 | 358 | ||
308 | } | 359 | } |
309 | 360 | ||
@@ -730,48 +781,54 @@ void MainWindow::initActions() | |||
730 | this ); | 781 | this ); |
731 | action->addTo( importMenu ); | 782 | action->addTo( importMenu ); |
732 | connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); | 783 | connect( action, SIGNAL( activated() ), SLOT( saveCalendar() ) ); |
733 | 784 | ||
734 | importMenu->insertSeparator(); | 785 | importMenu->insertSeparator(); |
735 | action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0, | 786 | action = new QAction( "import_qtopia", i18n("Export VCalendar"), 0, |
736 | this ); | 787 | this ); |
737 | action->addTo( importMenu ); connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) ); | 788 | action->addTo( importMenu ); connect( action, SIGNAL( activated() ), SLOT( exportVCalendar() ) ); |
738 | 789 | ||
739 | 790 | ||
740 | //LR | 791 | //LR |
741 | QPopupMenu *ex2phone = new QPopupMenu( this ); | 792 | QPopupMenu *ex2phone = new QPopupMenu( this ); |
742 | ex2phone->insertItem(i18n("Complete calendar..."), 1 ); | 793 | ex2phone->insertItem(i18n("Complete calendar..."), 1 ); |
743 | ex2phone->insertItem(i18n("Filtered calendar..."), 2 ); | 794 | ex2phone->insertItem(i18n("Filtered calendar..."), 2 ); |
744 | connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) ); | 795 | connect( ex2phone, SIGNAL( activated(int) ), this, SLOT( exportToPhone( int)) ); |
745 | importMenu->insertItem( i18n("Export to phone"), ex2phone ); | 796 | importMenu->insertItem( i18n("Export to phone"), ex2phone ); |
746 | 797 | ||
747 | importMenu->insertSeparator(); | 798 | importMenu->insertSeparator(); |
748 | action = new QAction( "manage cat", i18n("Manage new categories..."), 0, | 799 | action = new QAction( "manage cat", i18n("Manage new categories..."), 0, |
749 | this ); | 800 | this ); |
750 | action->addTo( importMenu ); | 801 | action->addTo( importMenu ); |
751 | connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); | 802 | connect( action, SIGNAL( activated() ), mView, SLOT( manageCategories() ) ); |
752 | #ifndef DESKTOP_VERSION | 803 | #ifndef DESKTOP_VERSION |
753 | importMenu->insertSeparator(); | 804 | importMenu->insertSeparator(); |
805 | brAction = new QAction( "beam toggle", i18n("Beam receice enabled"), 0, | ||
806 | this ); | ||
807 | brAction->addTo( importMenu ); | ||
808 | brAction->setToggleAction (true ) ; | ||
809 | connect( brAction, SIGNAL( activated() ), this, SLOT( toggleBeamReceive() ) ); | ||
810 | |||
754 | action = new QAction( "beam all", i18n("Beam complete calendar..."), 0, | 811 | action = new QAction( "beam all", i18n("Beam complete calendar..."), 0, |
755 | this ); | 812 | this ); |
756 | action->addTo( importMenu ); | 813 | action->addTo( importMenu ); |
757 | connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) ); | 814 | connect( action, SIGNAL( activated() ), mView, SLOT( beamCalendar() ) ); |
758 | 815 | ||
759 | action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0, | 816 | action = new QAction( "beam all", i18n("Beam filtered calendar..."), 0, |
760 | this ); | 817 | this ); |
761 | action->addTo( importMenu ); | 818 | action->addTo( importMenu ); |
762 | connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) ); | 819 | connect( action, SIGNAL( activated() ), mView, SLOT( beamFilteredCalendar()) ); |
763 | #else | 820 | #else |
764 | importMenu->insertSeparator(); | 821 | importMenu->insertSeparator(); |
765 | icon = loadPixmap( pathString + "print" ); | 822 | icon = loadPixmap( pathString + "print" ); |
766 | action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this ); | 823 | action = new QAction( i18n("Print calendar..."),icon,i18n("Print calendar..."), 0, this ); |
767 | action->addTo( importMenu ); | 824 | action->addTo( importMenu ); |
768 | connect( action, SIGNAL( activated() ), | 825 | connect( action, SIGNAL( activated() ), |
769 | this, SLOT( printCal() ) ); | 826 | this, SLOT( printCal() ) ); |
770 | 827 | ||
771 | icon = loadPixmap( pathString + "print" ); | 828 | icon = loadPixmap( pathString + "print" ); |
772 | action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this ); | 829 | action = new QAction( i18n("Print agenda selection..."),icon,i18n("Print agenda selection..."), 0, this ); |
773 | action->addTo( importMenu ); | 830 | action->addTo( importMenu ); |
774 | connect( action, SIGNAL( activated() ), | 831 | connect( action, SIGNAL( activated() ), |
775 | this, SLOT( printSel() ) ); | 832 | this, SLOT( printSel() ) ); |
776 | #endif | 833 | #endif |
777 | importMenu->insertSeparator(); | 834 | importMenu->insertSeparator(); |
diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h index e3383ed..0926313 100644 --- a/korganizer/mainwindow.h +++ b/korganizer/mainwindow.h | |||
@@ -1,117 +1,127 @@ | |||
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 | #include <qfile.h> | 7 | #include <qfile.h> |
8 | #include <qtextstream.h> | 8 | #include <qtextstream.h> |
9 | #include <qregexp.h> | 9 | #include <qregexp.h> |
10 | 10 | ||
11 | #include <libkcal/incidence.h> | 11 | #include <libkcal/incidence.h> |
12 | #include "simplealarmclient.h" | 12 | #include "simplealarmclient.h" |
13 | #include <ksyncmanager.h> | 13 | #include <ksyncmanager.h> |
14 | 14 | #ifndef DESKTOP_VERSION | |
15 | #include <qcopchannel_qws.h> | ||
16 | #endif | ||
15 | class QAction; | 17 | class QAction; |
16 | class CalendarView; | 18 | class CalendarView; |
17 | class KSyncProfile; | 19 | class KSyncProfile; |
18 | #ifdef DESKTOP_VERSION | 20 | #ifdef DESKTOP_VERSION |
19 | 21 | ||
20 | #define QPEToolBar QToolBar | 22 | #define QPEToolBar QToolBar |
21 | #define QPEMenuBar QMenuBar | 23 | #define QPEMenuBar QMenuBar |
22 | #endif | 24 | #endif |
23 | class QPEToolBar; | 25 | class QPEToolBar; |
24 | 26 | ||
25 | 27 | ||
26 | namespace KCal { | 28 | namespace KCal { |
27 | class CalendarLocal; | 29 | class CalendarLocal; |
28 | } | 30 | } |
29 | 31 | ||
30 | using namespace KCal; | 32 | using namespace KCal; |
31 | 33 | ||
32 | class MainWindow : public QMainWindow | 34 | class MainWindow : public QMainWindow |
33 | { | 35 | { |
34 | Q_OBJECT | 36 | Q_OBJECT |
35 | public: | 37 | public: |
36 | MainWindow( QWidget *parent = 0, const char *name = 0, QString command = ""); | 38 | MainWindow( QWidget *parent = 0, const char *name = 0, QString command = ""); |
37 | ~MainWindow(); | 39 | ~MainWindow(); |
40 | bool beamReceiveEnabled(); | ||
38 | public slots: | 41 | public slots: |
39 | virtual void showMaximized (); | 42 | virtual void showMaximized (); |
40 | void configureAgenda( int ); | 43 | void configureAgenda( int ); |
41 | void recieve( const QCString& msg, const QByteArray& data ); | 44 | void recieve( const QCString& msg, const QByteArray& data ); |
42 | static QString defaultFileName(); | 45 | static QString defaultFileName(); |
43 | static QString syncFileName(); | 46 | static QString syncFileName(); |
44 | static QString resourcePath(); | 47 | static QString resourcePath(); |
45 | protected slots: | 48 | protected slots: |
46 | void setCaptionToDates(); | 49 | void setCaptionToDates(); |
47 | void about(); | 50 | void about(); |
48 | void licence(); | 51 | void licence(); |
49 | void faq(); | 52 | void faq(); |
50 | void usertrans(); | 53 | void usertrans(); |
51 | void features(); | 54 | void features(); |
52 | void synchowto(); | 55 | void synchowto(); |
53 | void whatsNew(); | 56 | void whatsNew(); |
54 | void keyBindings(); | 57 | void keyBindings(); |
55 | void aboutAutoSaving();; | 58 | void aboutAutoSaving();; |
56 | void aboutKnownBugs(); | 59 | void aboutKnownBugs(); |
57 | 60 | ||
58 | void processIncidenceSelection( Incidence * ); | 61 | void processIncidenceSelection( Incidence * ); |
59 | 62 | ||
60 | void importQtopia(); | 63 | void importQtopia(); |
61 | void importBday(); | 64 | void importBday(); |
62 | void importOL(); | 65 | void importOL(); |
63 | void importIcal(); | 66 | void importIcal(); |
64 | void importFile( QString, bool ); | 67 | void importFile( QString, bool ); |
65 | void quickImportIcal(); | 68 | void quickImportIcal(); |
66 | 69 | ||
67 | void slotModifiedChanged( bool ); | 70 | void slotModifiedChanged( bool ); |
68 | 71 | ||
69 | void save(); | 72 | void save(); |
70 | void configureToolBar( int ); | 73 | void configureToolBar( int ); |
71 | void printSel(); | 74 | void printSel(); |
72 | void printCal(); | 75 | void printCal(); |
73 | void saveCalendar(); | 76 | void saveCalendar(); |
74 | void loadCalendar(); | 77 | void loadCalendar(); |
75 | void exportVCalendar(); | 78 | void exportVCalendar(); |
76 | void fillFilterMenu(); | 79 | void fillFilterMenu(); |
77 | void selectFilter( int ); | 80 | void selectFilter( int ); |
78 | void exportToPhone( int ); | 81 | void exportToPhone( int ); |
82 | void toggleBeamReceive(); | ||
83 | void disableBR(bool); | ||
79 | 84 | ||
80 | 85 | ||
81 | protected: | 86 | protected: |
82 | void displayText( QString, QString); | 87 | void displayText( QString, QString); |
83 | void displayFile( QString, QString); | 88 | void displayFile( QString, QString); |
84 | 89 | ||
85 | void enableIncidenceActions( bool ); | 90 | void enableIncidenceActions( bool ); |
86 | 91 | ||
87 | private slots: | 92 | private slots: |
88 | QSocket* piSocket; | 93 | QSocket* piSocket; |
89 | QString piFileString; | 94 | QString piFileString; |
90 | QTime piTime; | 95 | QTime piTime; |
91 | void getFile( bool ); | 96 | void getFile( bool ); |
92 | void syncFileRequest(); | 97 | void syncFileRequest(); |
93 | private: | 98 | private: |
99 | bool mBRdisabled; | ||
100 | #ifndef DESKTOP_VERSION | ||
101 | QCopChannel* infrared; | ||
102 | #endif | ||
103 | QAction* brAction; | ||
94 | KSyncManager* mSyncManager; | 104 | KSyncManager* mSyncManager; |
95 | bool mClosed; | 105 | bool mClosed; |
96 | void saveOnClose(); | 106 | void saveOnClose(); |
97 | bool mFlagKeyPressed; | 107 | bool mFlagKeyPressed; |
98 | bool mBlockAtStartup; | 108 | bool mBlockAtStartup; |
99 | QPEToolBar *iconToolBar; | 109 | QPEToolBar *iconToolBar; |
100 | void initActions(); | 110 | void initActions(); |
101 | void setDefaultPreferences(); | 111 | void setDefaultPreferences(); |
102 | void keyPressEvent ( QKeyEvent * ) ; | 112 | void keyPressEvent ( QKeyEvent * ) ; |
103 | void keyReleaseEvent ( QKeyEvent * ) ; | 113 | void keyReleaseEvent ( QKeyEvent * ) ; |
104 | QPopupMenu *configureToolBarMenu; | 114 | QPopupMenu *configureToolBarMenu; |
105 | QPopupMenu *selectFilterMenu; | 115 | QPopupMenu *selectFilterMenu; |
106 | QPopupMenu *configureAgendaMenu, *syncMenu; | 116 | QPopupMenu *configureAgendaMenu, *syncMenu; |
107 | CalendarLocal *mCalendar; | 117 | CalendarLocal *mCalendar; |
108 | CalendarView *mView; | 118 | CalendarView *mView; |
109 | QAction *mNewSubTodoAction; | 119 | QAction *mNewSubTodoAction; |
110 | 120 | ||
111 | QAction *mShowAction; | 121 | QAction *mShowAction; |
112 | QAction *mEditAction; | 122 | QAction *mEditAction; |
113 | QAction *mDeleteAction; | 123 | QAction *mDeleteAction; |
114 | QAction *mCloneAction; | 124 | QAction *mCloneAction; |
115 | QAction *mMoveAction; | 125 | QAction *mMoveAction; |
116 | QAction *mBeamAction; | 126 | QAction *mBeamAction; |
117 | QAction *mCancelAction; | 127 | QAction *mCancelAction; |