summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/todo/main.cpp2
-rw-r--r--core/pim/todo/mainwindow.cpp2
-rw-r--r--core/pim/todo/mainwindow.h2
3 files changed, 3 insertions, 3 deletions
diff --git a/core/pim/todo/main.cpp b/core/pim/todo/main.cpp
index aeae794..58ed45c 100644
--- a/core/pim/todo/main.cpp
+++ b/core/pim/todo/main.cpp
@@ -1,49 +1,49 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved. 2** Copyright (C) 2000 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of Qtopia Environment. 4** This file is part of Qtopia Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20 20
21#include "mainwindow.h" 21#include "mainwindow.h"
22 22
23 23
24#include <qdatetime.h> 24#include <qdatetime.h>
25 25
26#include <qpe/qpeapplication.h> 26#include <qpe/qpeapplication.h>
27 27
28void myMessages( QtMsgType, const char* ) { 28void myMessages( QtMsgType, const char* ) {
29 29
30} 30}
31 31
32int main( int argc, char **argv ) 32int main( int argc, char **argv )
33{ 33{
34// qInstallMsgHandler( myMessages ); 34 qInstallMsgHandler( myMessages );
35 QPEApplication a( argc, argv ); 35 QPEApplication a( argc, argv );
36 36
37 QTime time; 37 QTime time;
38 time.start(); 38 time.start();
39 Todo::MainWindow mw; 39 Todo::MainWindow mw;
40 int t = time.elapsed(); 40 int t = time.elapsed();
41 qWarning("QTime %d", t/1000 ); 41 qWarning("QTime %d", t/1000 );
42 mw.setCaption("Opie Todolist"); 42 mw.setCaption("Opie Todolist");
43 QObject::connect( &a, SIGNAL( flush() ), &mw, SLOT( slotFlush() ) ); 43 QObject::connect( &a, SIGNAL( flush() ), &mw, SLOT( slotFlush() ) );
44 QObject::connect( &a, SIGNAL( reload() ), &mw, SLOT( slotReload() ) ); 44 QObject::connect( &a, SIGNAL( reload() ), &mw, SLOT( slotReload() ) );
45 45
46 a.showMainWidget(&mw); 46 a.showMainWidget(&mw);
47 47
48 return a.exec(); 48 return a.exec();
49} 49}
diff --git a/core/pim/todo/mainwindow.cpp b/core/pim/todo/mainwindow.cpp
index d328558..7810285 100644
--- a/core/pim/todo/mainwindow.cpp
+++ b/core/pim/todo/mainwindow.cpp
@@ -655,164 +655,164 @@ void MainWindow::slotEdit( int uid ) {
655void MainWindow::slotUpdate1( int uid, const SmallTodo& ev) { 655void MainWindow::slotUpdate1( int uid, const SmallTodo& ev) {
656 m_todoMgr.update( uid, ev ); 656 m_todoMgr.update( uid, ev );
657} 657}
658*/ 658*/
659void MainWindow::updateTodo( const OTodo& ev) { 659void MainWindow::updateTodo( const OTodo& ev) {
660 m_todoMgr.update( ev.uid() , ev ); 660 m_todoMgr.update( ev.uid() , ev );
661} 661}
662/* The view changed it's configuration 662/* The view changed it's configuration
663 * update the view menu 663 * update the view menu
664 */ 664 */
665void MainWindow::slotUpdate3( QWidget* ) { 665void MainWindow::slotUpdate3( QWidget* ) {
666 666
667} 667}
668void MainWindow::updateList() { 668void MainWindow::updateList() {
669 m_todoMgr.updateList(); 669 m_todoMgr.updateList();
670} 670}
671void MainWindow::setReadAhead( uint count ) { 671void MainWindow::setReadAhead( uint count ) {
672 if (m_todoMgr.todoDB() ) 672 if (m_todoMgr.todoDB() )
673 m_todoMgr.todoDB()->setReadAhead( count ); 673 m_todoMgr.todoDB()->setReadAhead( count );
674} 674}
675void MainWindow::slotQuickEntered() { 675void MainWindow::slotQuickEntered() {
676 qWarning("entered"); 676 qWarning("entered");
677 OTodo todo = quickEditor()->todo(); 677 OTodo todo = quickEditor()->todo();
678 if (todo.isEmpty() ) 678 if (todo.isEmpty() )
679 return; 679 return;
680 680
681 m_todoMgr.add( todo ); 681 m_todoMgr.add( todo );
682 currentView()->addEvent( todo ); 682 currentView()->addEvent( todo );
683 raiseCurrentView(); 683 raiseCurrentView();
684} 684}
685QuickEditBase* MainWindow::quickEditor() { 685QuickEditBase* MainWindow::quickEditor() {
686 return m_curQuick; 686 return m_curQuick;
687} 687}
688void MainWindow::slotComplete( int uid ) { 688void MainWindow::slotComplete( int uid ) {
689 slotComplete( event(uid) ); 689 slotComplete( event(uid) );
690} 690}
691void MainWindow::slotComplete( const OTodo& todo ) { 691void MainWindow::slotComplete( const OTodo& todo ) {
692 OTodo to = todo; 692 OTodo to = todo;
693 to.setCompleted( !to.isCompleted() ); 693 to.setCompleted( !to.isCompleted() );
694 to.setCompletedDate( QDate::currentDate() ); 694 to.setCompletedDate( QDate::currentDate() );
695 695
696 /* 696 /*
697 * if the item does recur 697 * if the item does recur
698 * we need to spin it off 698 * we need to spin it off
699 * and update the items duedate to the next 699 * and update the items duedate to the next
700 * possible recurrance of this item... 700 * possible recurrance of this item...
701 * the spinned off one will loose the 701 * the spinned off one will loose the
702 */ 702 */
703 if ( to.recurrence().doesRecur() && to.isCompleted() ) { 703 if ( to.recurrence().doesRecur() && to.isCompleted() ) {
704 OTodo to2( to ); 704 OTodo to2( to );
705 705
706 /* the spinned off one won't recur anymore */ 706 /* the spinned off one won't recur anymore */
707 to.setRecurrence( ORecur() ); 707 to.setRecurrence( ORecur() );
708 708
709 ORecur rec = to2.recurrence(); 709 ORecur rec = to2.recurrence();
710 rec.setStart( to.dueDate() ); 710 rec.setStart( to.dueDate() );
711 to2.setRecurrence( rec ); 711 to2.setRecurrence( rec );
712 /* 712 /*
713 * if there is a next occurence 713 * if there is a next occurence
714 * from the duedate of the last recurrance 714 * from the duedate of the last recurrance
715 */ 715 */
716 QDate date; 716 QDate date;
717 if ( to2.recurrence().nextOcurrence( to2.dueDate().addDays(1), date ) ) { 717 if ( to2.recurrence().nextOcurrence( to2.dueDate().addDays(1), date ) ) {
718 QDate inval; 718 QDate inval;
719 /* generate a new uid for the old record */ 719 /* generate a new uid for the old record */
720 to.setUid( 1 ); 720 to.setUid( 1 );
721 721
722 /* add the old one cause it has a new UID here cause it was spin off */ 722 /* add the old one cause it has a new UID here cause it was spin off */
723 m_todoMgr.add( to ); 723 m_todoMgr.add( to );
724 724
725 /* 725 /*
726 * update the due date 726 * update the due date
727 * start date 727 * start date
728 * and complete date 728 * and complete date
729 */ 729 */
730 to2.setDueDate( date ); 730 to2.setDueDate( date );
731 to2.setStartDate( inval ); 731 to2.setStartDate( inval );
732 to2.setCompletedDate( inval ); 732 to2.setCompletedDate( inval );
733 to2.setCompleted( false ); 733 to2.setCompleted( false );
734 updateTodo( to2 ); 734 updateTodo( to2 );
735 }else 735 }else
736 updateTodo( to ); 736 updateTodo( to );
737 }else 737 }else
738 updateTodo( to ); 738 updateTodo( to );
739 739
740 currentView()->updateView(); 740 currentView()->updateView();
741 raiseCurrentView(); 741 raiseCurrentView();
742} 742}
743void MainWindow::flush() { 743void MainWindow::flush() {
744 slotFlush(); 744 slotFlush();
745} 745}
746void MainWindow::reload() { 746void MainWindow::reload() {
747 slotReload(); 747 slotReload();
748} 748}
749int MainWindow::create() { 749int MainWindow::create() {
750 int uid = 0; 750 int uid = 0;
751 if(m_syncing) { 751 if(m_syncing) {
752 QMessageBox::warning(this, QWidget::tr("Todo"), 752 QMessageBox::warning(this, QWidget::tr("Todo"),
753 QWidget::tr("Can not edit data, currently syncing")); 753 QWidget::tr("Can not edit data, currently syncing"));
754 return uid; 754 return uid;
755 } 755 }
756 756
757 757
758 OTodo todo = currentEditor()->newTodo( currentCatId(), 758 OTodo todo = currentEditor()->newTodo( currentCatId(),
759 this ); 759 this );
760 760
761 if ( currentEditor()->accepted() ) { 761 if ( currentEditor()->accepted() ) {
762 //todo.assignUid(); 762 //todo.assignUid();
763 uid = todo.uid(); 763 uid = todo.uid();
764 m_todoMgr.add( todo ); 764 m_todoMgr.add( todo );
765 currentView()->addEvent( todo ); 765 currentView()->addEvent( todo );
766 766
767 767
768 // I'm afraid we must call this every time now, otherwise 768 // I'm afraid we must call this every time now, otherwise
769 // spend expensive time comparing all these strings... 769 // spend expensive time comparing all these strings...
770 // but only call if we changed something -zecke 770 // but only call if we changed something -zecke
771 populateCategories(); 771 populateCategories();
772 } 772 }
773 raiseCurrentView( ); 773 raiseCurrentView( );
774 774
775 return uid; 775 return uid;
776} 776}
777/* delete it silently... */ 777/* delete it silently... */
778bool MainWindow::remove( int uid ) { 778bool MainWindow::remove( int uid ) {
779 if (m_syncing) return false; 779 if (m_syncing) return false;
780 780
781 return m_todoMgr.remove( uid ); 781 return m_todoMgr.remove( uid );
782} 782}
783void MainWindow::beam( int uid, int ) { 783void MainWindow::beam( int uid) {
784 ::unlink( beamfile ); 784 ::unlink( beamfile );
785 OTodo todo = event( uid ); 785 OTodo todo = event( uid );
786 OTodoAccessVCal* cal = new OTodoAccessVCal(QString::fromLatin1(beamfile) ); 786 OTodoAccessVCal* cal = new OTodoAccessVCal(QString::fromLatin1(beamfile) );
787 OTodoAccess acc( cal ); 787 OTodoAccess acc( cal );
788 acc.load(); 788 acc.load();
789 acc.add( todo ); 789 acc.add( todo );
790 acc.save(); 790 acc.save();
791 Ir* ir = new Ir(this ); 791 Ir* ir = new Ir(this );
792 connect(ir, SIGNAL(done(Ir*) ), 792 connect(ir, SIGNAL(done(Ir*) ),
793 this, SLOT(beamDone(Ir*) ) ); 793 this, SLOT(beamDone(Ir*) ) );
794 ir->send( beamfile, todo.summary(), "text/x-vCalendar" ); 794 ir->send( beamfile, todo.summary(), "text/x-vCalendar" );
795} 795}
796void MainWindow::show( int uid ) { 796void MainWindow::show( int uid ) {
797 slotShow( uid ); 797 slotShow( uid );
798} 798}
799void MainWindow::edit( int uid ) { 799void MainWindow::edit( int uid ) {
800 slotEdit( uid ); 800 slotEdit( uid );
801} 801}
802void MainWindow::add( const OPimRecord& rec) { 802void MainWindow::add( const OPimRecord& rec) {
803 if ( rec.rtti() != OTodo::rtti() ) return; 803 if ( rec.rtti() != OTodo::rtti() ) return;
804 804
805 const OTodo& todo = static_cast<const OTodo&>(rec); 805 const OTodo& todo = static_cast<const OTodo&>(rec);
806 806
807 m_todoMgr.add(todo ); 807 m_todoMgr.add(todo );
808 currentView()->addEvent( todo ); 808 currentView()->addEvent( todo );
809 809
810 810
811 // I'm afraid we must call this every time now, otherwise 811 // I'm afraid we must call this every time now, otherwise
812 // spend expensive time comparing all these strings... 812 // spend expensive time comparing all these strings...
813 // but only call if we changed something -zecke 813 // but only call if we changed something -zecke
814 populateCategories(); 814 populateCategories();
815} 815}
816void MainWindow::slotReturnFromView() { 816void MainWindow::slotReturnFromView() {
817 raiseCurrentView(); 817 raiseCurrentView();
818} 818}
diff --git a/core/pim/todo/mainwindow.h b/core/pim/todo/mainwindow.h
index f880505..434e969 100644
--- a/core/pim/todo/mainwindow.h
+++ b/core/pim/todo/mainwindow.h
@@ -66,136 +66,136 @@ namespace Todo {
66 const char* name = 0 ); 66 const char* name = 0 );
67 ~MainWindow(); 67 ~MainWindow();
68 68
69 /** return a context menu for an OTodo */ 69 /** return a context menu for an OTodo */
70 QPopupMenu* contextMenu(int uid, bool doesRecur = FALSE ); 70 QPopupMenu* contextMenu(int uid, bool doesRecur = FALSE );
71 QPopupMenu* options(); 71 QPopupMenu* options();
72 QPopupMenu* edit(); 72 QPopupMenu* edit();
73 QToolBar* toolbar(); 73 QToolBar* toolbar();
74 74
75 75
76 void updateList(); 76 void updateList();
77 OTodoAccess::List list()const; 77 OTodoAccess::List list()const;
78 OTodoAccess::List sorted( bool asc, int sortOrder ); 78 OTodoAccess::List sorted( bool asc, int sortOrder );
79 OTodoAccess::List sorted( bool asc, int sortOrder, int addFilter ); 79 OTodoAccess::List sorted( bool asc, int sortOrder, int addFilter );
80 80
81 OTodo event(int uid ); 81 OTodo event(int uid );
82 82
83 bool isSyncing()const; 83 bool isSyncing()const;
84 bool showCompleted()const; 84 bool showCompleted()const;
85 bool showDeadline()const; 85 bool showDeadline()const;
86 bool showOverDue()const; 86 bool showOverDue()const;
87 bool showQuickTask()const; 87 bool showQuickTask()const;
88 QString currentCategory()const; 88 QString currentCategory()const;
89 int currentCatId(); 89 int currentCatId();
90 TemplateManager* templateManager(); 90 TemplateManager* templateManager();
91 QuickEditBase* quickEditor(); 91 QuickEditBase* quickEditor();
92 92
93 void updateTodo( const OTodo& ); 93 void updateTodo( const OTodo& );
94 void populateTemplates(); 94 void populateTemplates();
95 Editor* currentEditor(); 95 Editor* currentEditor();
96 void setReadAhead(uint count ); 96 void setReadAhead(uint count );
97private slots: 97private slots:
98 void slotQuickEntered(); 98 void slotQuickEntered();
99 void populateCategories(); 99 void populateCategories();
100 void slotReload(); 100 void slotReload();
101 void slotFlush(); 101 void slotFlush();
102 102
103 protected: 103 protected:
104 void closeEvent( QCloseEvent* e ); 104 void closeEvent( QCloseEvent* e );
105 105
106 private: 106 private:
107 void receiveFile( const QString& filename ); 107 void receiveFile( const QString& filename );
108 void connectBase( ViewBase* ); 108 void connectBase( ViewBase* );
109 void initUI(); 109 void initUI();
110 void initActions(); 110 void initActions();
111 void initConfig(); 111 void initConfig();
112 void initViews(); 112 void initViews();
113 void initEditor(); 113 void initEditor();
114 void initShow(); 114 void initShow();
115 void initTemplate(); 115 void initTemplate();
116 void raiseCurrentView(); 116 void raiseCurrentView();
117 ViewBase* currentView(); 117 ViewBase* currentView();
118 ViewBase* m_curView; 118 ViewBase* m_curView;
119 QuickEditBase* m_curQuick; 119 QuickEditBase* m_curQuick;
120 Editor* m_curEdit; 120 Editor* m_curEdit;
121 TodoShow* currentShow(); 121 TodoShow* currentShow();
122 TodoShow* m_curShow; 122 TodoShow* m_curShow;
123 TemplateEditor* currentTemplateEditor(); 123 TemplateEditor* currentTemplateEditor();
124 TemplateEditor* m_curTempEd; 124 TemplateEditor* m_curTempEd;
125 125
126 QMenuBar* m_bar; 126 QMenuBar* m_bar;
127 QToolBar* m_tool; 127 QToolBar* m_tool;
128 QAction* m_editAction, 128 QAction* m_editAction,
129 *m_deleteAction, 129 *m_deleteAction,
130 *m_findAction, 130 *m_findAction,
131 *m_completedAction, 131 *m_completedAction,
132 *m_showDeadLineAction, 132 *m_showDeadLineAction,
133 *m_deleteAllAction, 133 *m_deleteAllAction,
134 *m_deleteCompleteAction, 134 *m_deleteCompleteAction,
135 *m_duplicateAction, 135 *m_duplicateAction,
136 *m_showOverDueAction, 136 *m_showOverDueAction,
137 *m_showQuickTaskAction, 137 *m_showQuickTaskAction,
138 *m_effectiveAction; 138 *m_effectiveAction;
139 QWidgetStack *m_stack; 139 QWidgetStack *m_stack;
140 QPopupMenu* m_catMenu, 140 QPopupMenu* m_catMenu,
141 *m_edit, 141 *m_edit,
142 *m_options, 142 *m_options,
143 *m_template; 143 *m_template;
144 144
145 bool m_syncing:1; 145 bool m_syncing:1;
146 bool m_deadline:1; 146 bool m_deadline:1;
147 bool m_completed:1; 147 bool m_completed:1;
148 bool m_overdue:1; 148 bool m_overdue:1;
149 bool m_quicktask:1; 149 bool m_quicktask:1;
150 TodoManager m_todoMgr; 150 TodoManager m_todoMgr;
151 QString m_curCat; 151 QString m_curCat;
152 QList<ViewBase> m_views; 152 QList<ViewBase> m_views;
153 uint m_counter; 153 uint m_counter;
154 TemplateManager* m_tempManager; 154 TemplateManager* m_tempManager;
155 155
156 156
157 private slots: 157 private slots:
158 void slotShow(int); 158 void slotShow(int);
159 void slotEdit(int); 159 void slotEdit(int);
160 void slotUpdate3( QWidget* ); 160 void slotUpdate3( QWidget* );
161 void slotComplete( int uid ); 161 void slotComplete( int uid );
162 void slotComplete( const OTodo& ev ); 162 void slotComplete( const OTodo& ev );
163 void slotNewFromTemplate(int id ); 163 void slotNewFromTemplate(int id );
164 void slotNew(); 164 void slotNew();
165 void slotDuplicate(); 165 void slotDuplicate();
166 166
167 void slotDelete(); 167 void slotDelete();
168 void slotDeleteAll(); 168 void slotDeleteAll();
169 void slotDeleteCompleted(); 169 void slotDeleteCompleted();
170 170
171 void slotEdit(); 171 void slotEdit();
172 void slotFind(); 172 void slotFind();
173 173
174 void setCategory( int ); 174 void setCategory( int );
175 175
176 void slotShowDeadLine( bool ); 176 void slotShowDeadLine( bool );
177 void slotShowCompleted( bool ); 177 void slotShowCompleted( bool );
178 void slotShowQuickTask( bool ); 178 void slotShowQuickTask( bool );
179 179
180 void setDocument( const QString& ); 180 void setDocument( const QString& );
181 181
182 182
183 void slotBeam(); 183 void slotBeam();
184 void beamDone( Ir* ); 184 void beamDone( Ir* );
185 void slotShowDetails(); 185 void slotShowDetails();
186 void slotShowDue( bool ); 186 void slotShowDue( bool );
187 void slotReturnFromView(); // for TodoShow... 187 void slotReturnFromView(); // for TodoShow...
188 /* reimplementation from opimmainwindow */ 188 /* reimplementation from opimmainwindow */
189 protected slots: 189 protected slots:
190 void flush(); 190 void flush();
191 void reload(); 191 void reload();
192 int create(); 192 int create();
193 bool remove( int uid ); 193 bool remove( int uid );
194 void beam(int uid, int transport = IrDa ); 194 void beam(int uid);
195 void show( int uid ); 195 void show( int uid );
196 void edit( int uid ); 196 void edit( int uid );
197 void add( const OPimRecord& ); 197 void add( const OPimRecord& );
198 }; 198 };
199}; 199};
200 200
201#endif 201#endif