Diffstat (limited to 'core/pim/todo/mainwindow.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/pim/todo/mainwindow.cpp | 98 |
1 files changed, 48 insertions, 50 deletions
diff --git a/core/pim/todo/mainwindow.cpp b/core/pim/todo/mainwindow.cpp index fc189bd..0613f2c 100644 --- a/core/pim/todo/mainwindow.cpp +++ b/core/pim/todo/mainwindow.cpp | |||
@@ -28,6 +28,20 @@ | |||
28 | 28 | ||
29 | #include <unistd.h> | 29 | #include <unistd.h> |
30 | 30 | ||
31 | #include <opie2/opimrecurrence.h> | ||
32 | #include <opie2/opimnotifymanager.h> | ||
33 | #include <opie2/otodoaccessvcal.h> | ||
34 | #include <opie2/oapplicationfactory.h> | ||
35 | |||
36 | #include <qpe/applnk.h> | ||
37 | #include <qpe/config.h> | ||
38 | #include <qpe/ir.h> | ||
39 | #include <qpe/resource.h> | ||
40 | #include <qpe/qpemessagebox.h> | ||
41 | #include <qpe/alarmserver.h> | ||
42 | #include <qpe/timestring.h> | ||
43 | #include <qpe/qpeapplication.h> | ||
44 | |||
31 | #include <qmenubar.h> | 45 | #include <qmenubar.h> |
32 | #include <qmessagebox.h> | 46 | #include <qmessagebox.h> |
33 | #include <qtoolbar.h> | 47 | #include <qtoolbar.h> |
@@ -41,22 +55,6 @@ | |||
41 | #include <qlineedit.h> | 55 | #include <qlineedit.h> |
42 | #include <qwhatsthis.h> | 56 | #include <qwhatsthis.h> |
43 | 57 | ||
44 | #include <qpe/applnk.h> | ||
45 | #include <qpe/config.h> | ||
46 | #include <qpe/ir.h> | ||
47 | #include <qpe/resource.h> | ||
48 | #include <qpe/qpemessagebox.h> | ||
49 | #include <qpe/alarmserver.h> | ||
50 | #include <qpe/timestring.h> | ||
51 | #include <qpe/qpeapplication.h> | ||
52 | |||
53 | #include <opie/orecur.h> | ||
54 | #include <opie/opimnotifymanager.h> | ||
55 | #include <opie/otodoaccessvcal.h> | ||
56 | #include <opie/owidgetstack.h> | ||
57 | |||
58 | #include <opie/oapplicationfactory.h> | ||
59 | |||
60 | #include "quickeditimpl.h" | 58 | #include "quickeditimpl.h" |
61 | #include "todotemplatemanager.h" | 59 | #include "todotemplatemanager.h" |
62 | #include "templateeditor.h" | 60 | #include "templateeditor.h" |
@@ -310,10 +308,10 @@ QPopupMenu* MainWindow::edit() { | |||
310 | QToolBar* MainWindow::toolbar() { | 308 | QToolBar* MainWindow::toolbar() { |
311 | return m_tool; | 309 | return m_tool; |
312 | } | 310 | } |
313 | OTodoAccess::List MainWindow::list()const { | 311 | OPimTodoAccess::List MainWindow::list()const { |
314 | return m_todoMgr.list(); | 312 | return m_todoMgr.list(); |
315 | } | 313 | } |
316 | OTodoAccess::List MainWindow::sorted( bool asc, int sortOrder ) { | 314 | OPimTodoAccess::List MainWindow::sorted( bool asc, int sortOrder ) { |
317 | int cat = 0; | 315 | int cat = 0; |
318 | if ( m_curCat != QWidget::tr("All Categories") ) | 316 | if ( m_curCat != QWidget::tr("All Categories") ) |
319 | cat = currentCatId(); | 317 | cat = currentCatId(); |
@@ -331,7 +329,7 @@ OTodoAccess::List MainWindow::sorted( bool asc, int sortOrder ) { | |||
331 | 329 | ||
332 | return m_todoMgr.sorted( asc, sortOrder, filter, cat ); | 330 | return m_todoMgr.sorted( asc, sortOrder, filter, cat ); |
333 | } | 331 | } |
334 | OTodoAccess::List MainWindow::sorted( bool asc, int sortOrder, int addFilter) { | 332 | OPimTodoAccess::List MainWindow::sorted( bool asc, int sortOrder, int addFilter) { |
335 | int cat = 0; | 333 | int cat = 0; |
336 | if ( m_curCat != QWidget::tr("All Categories") ) | 334 | if ( m_curCat != QWidget::tr("All Categories") ) |
337 | cat = currentCatId(); | 335 | cat = currentCatId(); |
@@ -341,7 +339,7 @@ OTodoAccess::List MainWindow::sorted( bool asc, int sortOrder, int addFilter) { | |||
341 | 339 | ||
342 | return m_todoMgr.sorted(asc, sortOrder, addFilter, cat ); | 340 | return m_todoMgr.sorted(asc, sortOrder, addFilter, cat ); |
343 | } | 341 | } |
344 | OTodo MainWindow::event( int uid ) { | 342 | OPimTodo MainWindow::event( int uid ) { |
345 | return m_todoMgr.event( uid ); | 343 | return m_todoMgr.event( uid ); |
346 | } | 344 | } |
347 | bool MainWindow::isSyncing()const { | 345 | bool MainWindow::isSyncing()const { |
@@ -433,14 +431,14 @@ void MainWindow::populateTemplates() { | |||
433 | void MainWindow::slotNewFromTemplate( int id ) { | 431 | void MainWindow::slotNewFromTemplate( int id ) { |
434 | QString name = m_template->text( id ); | 432 | QString name = m_template->text( id ); |
435 | 433 | ||
436 | OTodo event = templateManager()->templateEvent( name ); | 434 | OPimTodo event = templateManager()->templateEvent( name ); |
437 | event = currentEditor()->edit(this, | 435 | event = currentEditor()->edit(this, |
438 | event ); | 436 | event ); |
439 | 437 | ||
440 | if ( currentEditor()->accepted() ) { | 438 | if ( currentEditor()->accepted() ) { |
441 | /* assign new todo */ | 439 | /* assign new todo */ |
442 | event.setUid( 1 ); | 440 | event.setUid( 1 ); |
443 | handleAlarms( OTodo(), event ); | 441 | handleAlarms( OPimTodo(), event ); |
444 | m_todoMgr.add( event ); | 442 | m_todoMgr.add( event ); |
445 | currentView()->addEvent( event ); | 443 | currentView()->addEvent( event ); |
446 | 444 | ||
@@ -457,7 +455,7 @@ void MainWindow::slotDuplicate() { | |||
457 | QWidget::tr("Data can not be edited, currently syncing")); | 455 | QWidget::tr("Data can not be edited, currently syncing")); |
458 | return; | 456 | return; |
459 | } | 457 | } |
460 | OTodo ev = m_todoMgr.event( currentView()->current() ); | 458 | OPimTodo ev = m_todoMgr.event( currentView()->current() ); |
461 | /* let's generate a new uid */ | 459 | /* let's generate a new uid */ |
462 | ev.setUid(1); | 460 | ev.setUid(1); |
463 | m_todoMgr.add( ev ); | 461 | m_todoMgr.add( ev ); |
@@ -478,7 +476,7 @@ void MainWindow::slotDelete() { | |||
478 | if (!QPEMessageBox::confirmDelete(this, QWidget::tr("Todo"), strName ) ) | 476 | if (!QPEMessageBox::confirmDelete(this, QWidget::tr("Todo"), strName ) ) |
479 | return; | 477 | return; |
480 | 478 | ||
481 | handleAlarms( m_todoMgr.event( currentView()->current() ), OTodo() ); | 479 | handleAlarms( m_todoMgr.event( currentView()->current() ), OPimTodo() ); |
482 | m_todoMgr.remove( currentView()->current() ); | 480 | m_todoMgr.remove( currentView()->current() ); |
483 | currentView()->removeEvent( currentView()->current() ); | 481 | currentView()->removeEvent( currentView()->current() ); |
484 | raiseCurrentView(); | 482 | raiseCurrentView(); |
@@ -490,11 +488,11 @@ void MainWindow::slotDelete(int uid ) { | |||
490 | QWidget::tr("Data can not be edited, currently syncing")); | 488 | QWidget::tr("Data can not be edited, currently syncing")); |
491 | return; | 489 | return; |
492 | } | 490 | } |
493 | OTodo to = m_todoMgr.event(uid); | 491 | OPimTodo to = m_todoMgr.event(uid); |
494 | if (!QPEMessageBox::confirmDelete(this, QWidget::tr("Todo"), to.toShortText() ) ) | 492 | if (!QPEMessageBox::confirmDelete(this, QWidget::tr("Todo"), to.toShortText() ) ) |
495 | return; | 493 | return; |
496 | 494 | ||
497 | handleAlarms(to, OTodo() ); | 495 | handleAlarms(to, OPimTodo() ); |
498 | m_todoMgr.remove( to.uid() ); | 496 | m_todoMgr.remove( to.uid() ); |
499 | currentView()->removeEvent( to.uid() ); | 497 | currentView()->removeEvent( to.uid() ); |
500 | raiseCurrentView(); | 498 | raiseCurrentView(); |
@@ -597,11 +595,11 @@ void MainWindow::beamDone( Ir* ir) { | |||
597 | ::unlink( beamfile ); | 595 | ::unlink( beamfile ); |
598 | } | 596 | } |
599 | void MainWindow::receiveFile( const QString& filename ) { | 597 | void MainWindow::receiveFile( const QString& filename ) { |
600 | OTodoAccessVCal* cal = new OTodoAccessVCal(filename ); | 598 | OPimTodoAccessVCal* cal = new OPimTodoAccessVCal(filename ); |
601 | 599 | ||
602 | OTodoAccess acc( cal ); | 600 | OPimTodoAccess acc( cal ); |
603 | acc.load(); | 601 | acc.load(); |
604 | OTodoAccess::List list = acc.allRecords(); | 602 | OPimTodoAccess::List list = acc.allRecords(); |
605 | 603 | ||
606 | if (list.count()){ | 604 | if (list.count()){ |
607 | 605 | ||
@@ -610,7 +608,7 @@ void MainWindow::receiveFile( const QString& filename ) { | |||
610 | if ( QMessageBox::information(this, QWidget::tr("New Tasks"), | 608 | if ( QMessageBox::information(this, QWidget::tr("New Tasks"), |
611 | message, QMessageBox::Ok, | 609 | message, QMessageBox::Ok, |
612 | QMessageBox::Cancel ) == QMessageBox::Ok ) { | 610 | QMessageBox::Cancel ) == QMessageBox::Ok ) { |
613 | OTodoAccess::List::Iterator it; | 611 | OPimTodoAccess::List::Iterator it; |
614 | for ( it = list.begin(); it != list.end(); ++it ) | 612 | for ( it = list.begin(); it != list.end(); ++it ) |
615 | m_todoMgr.add( (*it) ); | 613 | m_todoMgr.add( (*it) ); |
616 | 614 | ||
@@ -708,9 +706,9 @@ void MainWindow::slotEdit( int uid ) { | |||
708 | return; | 706 | return; |
709 | } | 707 | } |
710 | 708 | ||
711 | OTodo old_todo = m_todoMgr.event( uid ); | 709 | OPimTodo old_todo = m_todoMgr.event( uid ); |
712 | 710 | ||
713 | OTodo todo = currentEditor()->edit(this, old_todo ); | 711 | OPimTodo todo = currentEditor()->edit(this, old_todo ); |
714 | 712 | ||
715 | /* if completed */ | 713 | /* if completed */ |
716 | if ( currentEditor()->accepted() ) { | 714 | if ( currentEditor()->accepted() ) { |
@@ -728,7 +726,7 @@ void MainWindow::slotUpdate1( int uid, const SmallTodo& ev) { | |||
728 | m_todoMgr.update( uid, ev ); | 726 | m_todoMgr.update( uid, ev ); |
729 | } | 727 | } |
730 | */ | 728 | */ |
731 | void MainWindow::updateTodo( const OTodo& ev) { | 729 | void MainWindow::updateTodo( const OPimTodo& ev) { |
732 | m_todoMgr.update( ev.uid() , ev ); | 730 | m_todoMgr.update( ev.uid() , ev ); |
733 | } | 731 | } |
734 | /* The view changed it's configuration | 732 | /* The view changed it's configuration |
@@ -746,7 +744,7 @@ void MainWindow::setReadAhead( uint count ) { | |||
746 | } | 744 | } |
747 | void MainWindow::slotQuickEntered() { | 745 | void MainWindow::slotQuickEntered() { |
748 | qWarning("entered"); | 746 | qWarning("entered"); |
749 | OTodo todo = quickEditor()->todo(); | 747 | OPimTodo todo = quickEditor()->todo(); |
750 | if (todo.isEmpty() ) | 748 | if (todo.isEmpty() ) |
751 | return; | 749 | return; |
752 | 750 | ||
@@ -760,8 +758,8 @@ QuickEditBase* MainWindow::quickEditor() { | |||
760 | void MainWindow::slotComplete( int uid ) { | 758 | void MainWindow::slotComplete( int uid ) { |
761 | slotComplete( event(uid) ); | 759 | slotComplete( event(uid) ); |
762 | } | 760 | } |
763 | void MainWindow::slotComplete( const OTodo& todo ) { | 761 | void MainWindow::slotComplete( const OPimTodo& todo ) { |
764 | OTodo to = todo; | 762 | OPimTodo to = todo; |
765 | to.setCompleted( !to.isCompleted() ); | 763 | to.setCompleted( !to.isCompleted() ); |
766 | to.setCompletedDate( QDate::currentDate() ); | 764 | to.setCompletedDate( QDate::currentDate() ); |
767 | 765 | ||
@@ -777,12 +775,12 @@ void MainWindow::slotComplete( const OTodo& todo ) { | |||
777 | * -zecke | 775 | * -zecke |
778 | */ | 776 | */ |
779 | if ( to.hasRecurrence() && to.isCompleted() ) { | 777 | if ( to.hasRecurrence() && to.isCompleted() ) { |
780 | OTodo to2( to ); | 778 | OPimTodo to2( to ); |
781 | 779 | ||
782 | /* the spinned off one won't recur anymore */ | 780 | /* the spinned off one won't recur anymore */ |
783 | to.setRecurrence( ORecur() ); | 781 | to.setRecurrence( OPimRecurrence() ); |
784 | 782 | ||
785 | ORecur rec = to2.recurrence(); | 783 | OPimRecurrence rec = to2.recurrence(); |
786 | rec.setStart( to.dueDate() ); | 784 | rec.setStart( to.dueDate() ); |
787 | to2.setRecurrence( rec ); | 785 | to2.setRecurrence( rec ); |
788 | /* | 786 | /* |
@@ -825,7 +823,7 @@ void MainWindow::slotComplete( const OTodo& todo ) { | |||
825 | als.append( al ); | 823 | als.append( al ); |
826 | } | 824 | } |
827 | to2.notifiers().setAlarms( als ); | 825 | to2.notifiers().setAlarms( als ); |
828 | handleAlarms( OTodo(), todo ); | 826 | handleAlarms( OPimTodo(), todo ); |
829 | } | 827 | } |
830 | to2.setCompletedDate( inval ); | 828 | to2.setCompletedDate( inval ); |
831 | to2.setCompleted( false ); | 829 | to2.setCompleted( false ); |
@@ -855,13 +853,13 @@ int MainWindow::create() { | |||
855 | m_todoMgr.load(); | 853 | m_todoMgr.load(); |
856 | 854 | ||
857 | 855 | ||
858 | OTodo todo = currentEditor()->newTodo( currentCatId(), | 856 | OPimTodo todo = currentEditor()->newTodo( currentCatId(), |
859 | this ); | 857 | this ); |
860 | 858 | ||
861 | if ( currentEditor()->accepted() ) { | 859 | if ( currentEditor()->accepted() ) { |
862 | //todo.assignUid(); | 860 | //todo.assignUid(); |
863 | uid = todo.uid(); | 861 | uid = todo.uid(); |
864 | handleAlarms( OTodo(), todo ); | 862 | handleAlarms( OPimTodo(), todo ); |
865 | m_todoMgr.add( todo ); | 863 | m_todoMgr.add( todo ); |
866 | currentView()->addEvent( todo ); | 864 | currentView()->addEvent( todo ); |
867 | 865 | ||
@@ -880,7 +878,7 @@ bool MainWindow::remove( int uid ) { | |||
880 | if (m_syncing) return false; | 878 | if (m_syncing) return false; |
881 | 879 | ||
882 | /* argh need to get the whole OEvent... to disable alarms -zecke */ | 880 | /* argh need to get the whole OEvent... to disable alarms -zecke */ |
883 | handleAlarms( OTodo(), m_todoMgr.event( uid ) ); | 881 | handleAlarms( OPimTodo(), m_todoMgr.event( uid ) ); |
884 | 882 | ||
885 | return m_todoMgr.remove( uid ); | 883 | return m_todoMgr.remove( uid ); |
886 | } | 884 | } |
@@ -890,9 +888,9 @@ void MainWindow::beam( int uid) { | |||
890 | ::unlink( beamfile ); | 888 | ::unlink( beamfile ); |
891 | m_todoMgr.load(); | 889 | m_todoMgr.load(); |
892 | 890 | ||
893 | OTodo todo = event( uid ); | 891 | OPimTodo todo = event( uid ); |
894 | OTodoAccessVCal* cal = new OTodoAccessVCal(QString::fromLatin1(beamfile) ); | 892 | OPimTodoAccessVCal* cal = new OPimTodoAccessVCal(QString::fromLatin1(beamfile) ); |
895 | OTodoAccess acc( cal ); | 893 | OPimTodoAccess acc( cal ); |
896 | acc.load(); | 894 | acc.load(); |
897 | acc.add( todo ); | 895 | acc.add( todo ); |
898 | acc.save(); | 896 | acc.save(); |
@@ -913,10 +911,10 @@ void MainWindow::edit( int uid ) { | |||
913 | slotEdit( uid ); | 911 | slotEdit( uid ); |
914 | } | 912 | } |
915 | void MainWindow::add( const OPimRecord& rec) { | 913 | void MainWindow::add( const OPimRecord& rec) { |
916 | if ( rec.rtti() != OTodo::rtti() ) return; | 914 | if ( rec.rtti() != OPimTodo::rtti() ) return; |
917 | m_todoMgr.load(); // might not be loaded | 915 | m_todoMgr.load(); // might not be loaded |
918 | 916 | ||
919 | const OTodo& todo = static_cast<const OTodo&>(rec); | 917 | const OPimTodo& todo = static_cast<const OPimTodo&>(rec); |
920 | 918 | ||
921 | m_todoMgr.add(todo ); | 919 | m_todoMgr.add(todo ); |
922 | currentView()->addEvent( todo ); | 920 | currentView()->addEvent( todo ); |
@@ -969,7 +967,7 @@ namespace { | |||
969 | } | 967 | } |
970 | } | 968 | } |
971 | 969 | ||
972 | void MainWindow::handleAlarms( const OTodo& oldTodo, const OTodo& newTodo) { | 970 | void MainWindow::handleAlarms( const OPimTodo& oldTodo, const OPimTodo& newTodo) { |
973 | /* | 971 | /* |
974 | * if oldTodo is not empty and has notifiers we need to find the deleted ones | 972 | * if oldTodo is not empty and has notifiers we need to find the deleted ones |
975 | */ | 973 | */ |
@@ -997,7 +995,7 @@ void MainWindow::handleAlarms( const OTodo& oldTodo, const OTodo& newTodo) { | |||
997 | void MainWindow::doAlarm( const QDateTime& dt, int uid ) { | 995 | void MainWindow::doAlarm( const QDateTime& dt, int uid ) { |
998 | m_todoMgr.load(); | 996 | m_todoMgr.load(); |
999 | 997 | ||
1000 | OTodo todo = m_todoMgr.event( uid ); | 998 | OPimTodo todo = m_todoMgr.event( uid ); |
1001 | if (!todo.hasNotifiers() ) return; | 999 | if (!todo.hasNotifiers() ) return; |
1002 | 1000 | ||
1003 | /* | 1001 | /* |