-rw-r--r-- | korganizer/mainwindow.cpp | 59 |
1 files changed, 58 insertions, 1 deletions
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(); |