author | zecke <zecke> | 2002-10-25 22:12:35 (UTC) |
---|---|---|
committer | zecke <zecke> | 2002-10-25 22:12:35 (UTC) |
commit | b682e9d2276c10a5c26773c6797ba1ac176ea4cf (patch) (unidiff) | |
tree | 9780ad571f14943e3ad6c3ec34a4e787f8a85217 | |
parent | 595407074ac5724eb33aeb151ce27e38fbca21d5 (diff) | |
download | opie-b682e9d2276c10a5c26773c6797ba1ac176ea4cf.zip opie-b682e9d2276c10a5c26773c6797ba1ac176ea4cf.tar.gz opie-b682e9d2276c10a5c26773c6797ba1ac176ea4cf.tar.bz2 |
MainWindow i18n change 'Show only over due' to avoid misunderstanding
then 'share' and 'preload' the taskeditor
on first request it'll be created but on destroyed until Destruction
the interface. This will happen when the apps quits.
This should speed up editing and entering quite a lot
-rw-r--r-- | core/pim/todo/mainwindow.cpp | 2 | ||||
-rw-r--r-- | core/pim/todo/otaskeditor.cpp | 19 | ||||
-rw-r--r-- | core/pim/todo/otaskeditor.h | 7 | ||||
-rw-r--r-- | core/pim/todo/taskeditoroverviewimpl.cpp | 12 | ||||
-rw-r--r-- | core/pim/todo/todoeditor.cpp | 32 | ||||
-rw-r--r-- | core/pim/todo/todoeditor.h | 4 |
6 files changed, 59 insertions, 17 deletions
diff --git a/core/pim/todo/mainwindow.cpp b/core/pim/todo/mainwindow.cpp index 71e6750..9b2423b 100644 --- a/core/pim/todo/mainwindow.cpp +++ b/core/pim/todo/mainwindow.cpp | |||
@@ -166,25 +166,25 @@ void MainWindow::initActions() { | |||
166 | m_showDeadLineAction->addTo( m_options ); | 166 | m_showDeadLineAction->addTo( m_options ); |
167 | m_showDeadLineAction->setOn( showDeadline() ); | 167 | m_showDeadLineAction->setOn( showDeadline() ); |
168 | connect(m_showDeadLineAction, SIGNAL(toggled(bool) ), | 168 | connect(m_showDeadLineAction, SIGNAL(toggled(bool) ), |
169 | this, SLOT( slotShowDeadLine( bool ) ) ); | 169 | this, SLOT( slotShowDeadLine( bool ) ) ); |
170 | 170 | ||
171 | m_options->insertSeparator(); | 171 | m_options->insertSeparator(); |
172 | 172 | ||
173 | m_bar->insertItem( tr("Data") ,m_edit ); | 173 | m_bar->insertItem( tr("Data") ,m_edit ); |
174 | m_bar->insertItem( tr("Category"), m_catMenu ); | 174 | m_bar->insertItem( tr("Category"), m_catMenu ); |
175 | m_bar->insertItem( tr("Options"), m_options ); | 175 | m_bar->insertItem( tr("Options"), m_options ); |
176 | 176 | ||
177 | /* initialize the view menu */ | 177 | /* initialize the view menu */ |
178 | a = new QAction( QString::null, tr("Show over due"), | 178 | a = new QAction( QString::null, tr("Show only over due"), |
179 | 0, this, 0, TRUE ); | 179 | 0, this, 0, TRUE ); |
180 | a->addTo( m_view ); | 180 | a->addTo( m_view ); |
181 | a->setOn( showOverDue() ); | 181 | a->setOn( showOverDue() ); |
182 | connect(a, SIGNAL(toggled(bool)), | 182 | connect(a, SIGNAL(toggled(bool)), |
183 | this, SLOT(slotShowDue(bool) ) ); | 183 | this, SLOT(slotShowDue(bool) ) ); |
184 | m_view->insertSeparator(); | 184 | m_view->insertSeparator(); |
185 | 185 | ||
186 | m_bar->insertItem( tr("View"), m_view ); | 186 | m_bar->insertItem( tr("View"), m_view ); |
187 | 187 | ||
188 | /* templates */ | 188 | /* templates */ |
189 | m_edit->insertItem(tr("New from template"), m_template, | 189 | m_edit->insertItem(tr("New from template"), m_template, |
190 | -1, 0 ); | 190 | -1, 0 ); |
diff --git a/core/pim/todo/otaskeditor.cpp b/core/pim/todo/otaskeditor.cpp index e8e922f..1a68eb5 100644 --- a/core/pim/todo/otaskeditor.cpp +++ b/core/pim/todo/otaskeditor.cpp | |||
@@ -5,38 +5,45 @@ | |||
5 | 5 | ||
6 | #include <opie/orecurrancewidget.h> | 6 | #include <opie/orecurrancewidget.h> |
7 | 7 | ||
8 | #include "taskeditoroverviewimpl.h" | 8 | #include "taskeditoroverviewimpl.h" |
9 | #include "taskeditoradvanced.h" | 9 | #include "taskeditoradvanced.h" |
10 | #include "taskeditoralarms.h" | 10 | #include "taskeditoralarms.h" |
11 | 11 | ||
12 | #include "otaskeditor.h" | 12 | #include "otaskeditor.h" |
13 | 13 | ||
14 | OTaskEditor::OTaskEditor(int cur) | 14 | OTaskEditor::OTaskEditor(int cur) |
15 | : QDialog(0, 0, TRUE ) { | 15 | : QDialog(0, 0, TRUE ) { |
16 | init(); | 16 | init(); |
17 | OTodo to; | 17 | init( cur ); |
18 | to.setCategories( cur ); | ||
19 | load(to); | ||
20 | m_uid = 1; // generate a new one | ||
21 | } | 18 | } |
22 | OTaskEditor::OTaskEditor( const OTodo& to) | 19 | OTaskEditor::OTaskEditor( const OTodo& to) |
23 | : QDialog(0, 0, TRUE ) { | 20 | : QDialog(0, 0, TRUE ) { |
24 | init(); | 21 | init(); |
25 | load( to ); | 22 | init( to ); |
26 | m_uid = to.uid(); | ||
27 | } | 23 | } |
28 | OTaskEditor::~OTaskEditor() { | 24 | OTaskEditor::~OTaskEditor() { |
29 | 25 | ||
30 | } | 26 | } |
27 | void OTaskEditor::init( int cur ) { | ||
28 | OTodo to; | ||
29 | if ( cur != 0 ) | ||
30 | to.setCategories( cur ); | ||
31 | load(to); | ||
32 | m_uid = 1; // generate a new one | ||
33 | } | ||
34 | void OTaskEditor::init( const OTodo& to ) { | ||
35 | load( to ); | ||
36 | m_uid = to.uid(); | ||
37 | } | ||
31 | OTodo OTaskEditor::todo()const{ | 38 | OTodo OTaskEditor::todo()const{ |
32 | qWarning("saving!"); | 39 | qWarning("saving!"); |
33 | OTodo to; | 40 | OTodo to; |
34 | to.setUid(m_uid ); | 41 | to.setUid(m_uid ); |
35 | m_overView->save( to ); | 42 | m_overView->save( to ); |
36 | to.setDescription( m_line->text() ); | 43 | to.setDescription( m_line->text() ); |
37 | 44 | ||
38 | return to; | 45 | return to; |
39 | } | 46 | } |
40 | void OTaskEditor::load(const OTodo& to) { | 47 | void OTaskEditor::load(const OTodo& to) { |
41 | m_overView->load( to ); | 48 | m_overView->load( to ); |
42 | m_line->setText( to.description() ); | 49 | m_line->setText( to.description() ); |
diff --git a/core/pim/todo/otaskeditor.h b/core/pim/todo/otaskeditor.h index 5842fdc..bcbd543 100644 --- a/core/pim/todo/otaskeditor.h +++ b/core/pim/todo/otaskeditor.h | |||
@@ -9,24 +9,31 @@ | |||
9 | class TaskEditorOverViewImpl; | 9 | class TaskEditorOverViewImpl; |
10 | class TaskEditorAdvanced; | 10 | class TaskEditorAdvanced; |
11 | class TaskEditorAlarms; | 11 | class TaskEditorAlarms; |
12 | class ORecurranceWidget; | 12 | class ORecurranceWidget; |
13 | class QMultiLineEdit; | 13 | class QMultiLineEdit; |
14 | class OTaskEditor : public QDialog { | 14 | class OTaskEditor : public QDialog { |
15 | Q_OBJECT | 15 | Q_OBJECT |
16 | public: | 16 | public: |
17 | OTaskEditor(int cur); | 17 | OTaskEditor(int cur); |
18 | OTaskEditor( const OTodo& todo ); | 18 | OTaskEditor( const OTodo& todo ); |
19 | ~OTaskEditor(); | 19 | ~OTaskEditor(); |
20 | 20 | ||
21 | /* | ||
22 | * same as the c'tor but this gives us the | ||
23 | * power to 'preload' the dialog | ||
24 | */ | ||
25 | void init( int cur ); | ||
26 | void init( const OTodo& todo ); | ||
27 | |||
21 | OTodo todo()const; | 28 | OTodo todo()const; |
22 | private: | 29 | private: |
23 | void load( const OTodo& ); | 30 | void load( const OTodo& ); |
24 | void init(); | 31 | void init(); |
25 | 32 | ||
26 | OTabWidget *m_tab; | 33 | OTabWidget *m_tab; |
27 | TaskEditorOverViewImpl* m_overView; | 34 | TaskEditorOverViewImpl* m_overView; |
28 | TaskEditorAdvanced *m_adv; | 35 | TaskEditorAdvanced *m_adv; |
29 | TaskEditorAlarms *m_alarm; | 36 | TaskEditorAlarms *m_alarm; |
30 | TaskEditorAlarms* m_remind; | 37 | TaskEditorAlarms* m_remind; |
31 | ORecurranceWidget* m_rec; | 38 | ORecurranceWidget* m_rec; |
32 | QMultiLineEdit* m_line; | 39 | QMultiLineEdit* m_line; |
diff --git a/core/pim/todo/taskeditoroverviewimpl.cpp b/core/pim/todo/taskeditoroverviewimpl.cpp index b9b2ae6..c10ad40 100644 --- a/core/pim/todo/taskeditoroverviewimpl.cpp +++ b/core/pim/todo/taskeditoroverviewimpl.cpp | |||
@@ -11,24 +11,34 @@ | |||
11 | 11 | ||
12 | /* | 12 | /* |
13 | * we need to hack | 13 | * we need to hack |
14 | */ | 14 | */ |
15 | 15 | ||
16 | TaskEditorOverViewImpl::TaskEditorOverViewImpl( QWidget* parent, const char* name ) | 16 | TaskEditorOverViewImpl::TaskEditorOverViewImpl( QWidget* parent, const char* name ) |
17 | : TaskEditorOverView( parent, name ) { | 17 | : TaskEditorOverView( parent, name ) { |
18 | init(); | 18 | init(); |
19 | } | 19 | } |
20 | TaskEditorOverViewImpl::~TaskEditorOverViewImpl() { | 20 | TaskEditorOverViewImpl::~TaskEditorOverViewImpl() { |
21 | } | 21 | } |
22 | void TaskEditorOverViewImpl::load( const OTodo& todo) { | 22 | void TaskEditorOverViewImpl::load( const OTodo& todo) { |
23 | /* | ||
24 | * now that we're 'preloaded' we | ||
25 | * need to disable the buttons | ||
26 | * holding the dat | ||
27 | */ | ||
28 | btnDue-> setEnabled( FALSE ); | ||
29 | btnComp-> setEnabled( FALSE ); | ||
30 | btnStart->setEnabled( FALSE ); | ||
31 | |||
32 | |||
23 | QDate date = QDate::currentDate(); | 33 | QDate date = QDate::currentDate(); |
24 | QString str = TimeString::longDateString( date ); | 34 | QString str = TimeString::longDateString( date ); |
25 | 35 | ||
26 | emit recurranceEnabled( FALSE ); | 36 | emit recurranceEnabled( FALSE ); |
27 | ckbStart->setChecked( FALSE ); | 37 | ckbStart->setChecked( FALSE ); |
28 | btnStart->setText( str ); | 38 | btnStart->setText( str ); |
29 | 39 | ||
30 | ckbComp->setChecked( FALSE ); | 40 | ckbComp->setChecked( FALSE ); |
31 | btnComp->setText( str ); | 41 | btnComp->setText( str ); |
32 | 42 | ||
33 | cmbProgress->setCurrentItem( todo.progress()/20 ); | 43 | cmbProgress->setCurrentItem( todo.progress()/20 ); |
34 | cmbSum->insertItem( todo.summary(), 0 ); | 44 | cmbSum->insertItem( todo.summary(), 0 ); |
@@ -60,24 +70,26 @@ void TaskEditorOverViewImpl::save( OTodo& to) { | |||
60 | to.setProgress( cmbProgress->currentItem() * 20 ); | 70 | to.setProgress( cmbProgress->currentItem() * 20 ); |
61 | } | 71 | } |
62 | /* | 72 | /* |
63 | * here we will init the basic view | 73 | * here we will init the basic view |
64 | * one Popup for each Date Button | 74 | * one Popup for each Date Button |
65 | * and some other signal and slots connection | 75 | * and some other signal and slots connection |
66 | */ | 76 | */ |
67 | void TaskEditorOverViewImpl::init() { | 77 | void TaskEditorOverViewImpl::init() { |
68 | QDate curDate = QDate::currentDate(); | 78 | QDate curDate = QDate::currentDate(); |
69 | m_start = m_comp = m_due = curDate; | 79 | m_start = m_comp = m_due = curDate; |
70 | QString str = TimeString::longDateString( curDate ); | 80 | QString str = TimeString::longDateString( curDate ); |
71 | 81 | ||
82 | |||
83 | |||
72 | /* Start Date Picker */ | 84 | /* Start Date Picker */ |
73 | m_startPop = new QPopupMenu(this); | 85 | m_startPop = new QPopupMenu(this); |
74 | m_startBook = new DateBookMonth(m_startPop, 0, TRUE ); | 86 | m_startBook = new DateBookMonth(m_startPop, 0, TRUE ); |
75 | m_startPop->insertItem( m_startBook ); | 87 | m_startPop->insertItem( m_startBook ); |
76 | connect( m_startBook, SIGNAL( dateClicked(int, int, int) ), | 88 | connect( m_startBook, SIGNAL( dateClicked(int, int, int) ), |
77 | this, SLOT(slotStartChanged(int, int, int) ) ); | 89 | this, SLOT(slotStartChanged(int, int, int) ) ); |
78 | 90 | ||
79 | 91 | ||
80 | /* Due Date Picker */ | 92 | /* Due Date Picker */ |
81 | m_duePop = new QPopupMenu(this); | 93 | m_duePop = new QPopupMenu(this); |
82 | m_dueBook = new DateBookMonth(m_duePop, 0, TRUE ); | 94 | m_dueBook = new DateBookMonth(m_duePop, 0, TRUE ); |
83 | m_duePop->insertItem( m_dueBook ); | 95 | m_duePop->insertItem( m_dueBook ); |
diff --git a/core/pim/todo/todoeditor.cpp b/core/pim/todo/todoeditor.cpp index e19ab8d..9b8c5cb 100644 --- a/core/pim/todo/todoeditor.cpp +++ b/core/pim/todo/todoeditor.cpp | |||
@@ -1,55 +1,67 @@ | |||
1 | 1 | ||
2 | #include "otaskeditor.h" | 2 | #include "otaskeditor.h" |
3 | #include "todoeditor.h" | 3 | #include "todoeditor.h" |
4 | 4 | ||
5 | using namespace Todo; | 5 | using namespace Todo; |
6 | 6 | ||
7 | Editor::Editor() { | 7 | Editor::Editor() { |
8 | m_accepted = false; | 8 | m_accepted = false; |
9 | m_self = 0l; | ||
9 | } | 10 | } |
10 | Editor::~Editor() { | 11 | Editor::~Editor() { |
12 | delete m_self; | ||
13 | m_self = 0; | ||
11 | } | 14 | } |
12 | OTodo Editor::newTodo( int cur, | 15 | OTodo Editor::newTodo( int cur, |
13 | QWidget* par) { | 16 | QWidget*) { |
14 | 17 | ||
15 | OTaskEditor e( cur); | 18 | OTaskEditor *e = self(); |
19 | e->setCaption( QObject::tr("Enter Task") ); | ||
20 | e->init( cur ); | ||
16 | 21 | ||
17 | 22 | ||
18 | #if defined(Q_WS_QWS) || defined(_WS_QWS_) | 23 | #if defined(Q_WS_QWS) || defined(_WS_QWS_) |
19 | e.showMaximized(); | 24 | e->showMaximized(); |
20 | #endif | 25 | #endif |
21 | 26 | ||
22 | int ret = e.exec(); | 27 | int ret = e->exec(); |
23 | if ( QDialog::Accepted == ret ) { | 28 | if ( QDialog::Accepted == ret ) { |
24 | m_accepted = true; | 29 | m_accepted = true; |
25 | }else | 30 | }else |
26 | m_accepted = false; | 31 | m_accepted = false; |
27 | 32 | ||
28 | OTodo ev = e.todo(); | 33 | OTodo ev = e->todo(); |
29 | qWarning("Todo uid"); | 34 | qWarning("Todo uid"); |
30 | qWarning("Todo %s %d %d", ev.summary().latin1(), ev.progress(), ev.isCompleted() ); | 35 | qWarning("Todo %s %d %d", ev.summary().latin1(), ev.progress(), ev.isCompleted() ); |
31 | ev.setUid(1); | 36 | ev.setUid(1); |
32 | 37 | ||
33 | return ev; | 38 | return ev; |
34 | } | 39 | } |
35 | OTodo Editor::edit( QWidget *wid, | 40 | OTodo Editor::edit( QWidget *wid, |
36 | const OTodo& todo ) { | 41 | const OTodo& todo ) { |
37 | OTaskEditor e( todo ); | 42 | OTaskEditor *e = self(); |
38 | e.setCaption( QObject::tr( "Edit Task" ) ); | 43 | e->init( todo ); |
44 | e->setCaption( QObject::tr( "Edit Task" ) ); | ||
39 | 45 | ||
40 | #if defined(Q_WS_QWS) || defined(_WS_QWS_) | 46 | #if defined(Q_WS_QWS) || defined(_WS_QWS_) |
41 | e.showMaximized(); | 47 | e->showMaximized(); |
42 | #endif | 48 | #endif |
43 | int ret = e.exec(); | 49 | int ret = e->exec(); |
44 | 50 | ||
45 | OTodo ev = e.todo(); | 51 | OTodo ev = e->todo(); |
46 | if ( ret == QDialog::Accepted ) | 52 | if ( ret == QDialog::Accepted ) |
47 | m_accepted = true; | 53 | m_accepted = true; |
48 | else | 54 | else |
49 | m_accepted = false; | 55 | m_accepted = false; |
50 | 56 | ||
51 | return ev; | 57 | return ev; |
52 | } | 58 | } |
53 | bool Editor::accepted()const { | 59 | bool Editor::accepted()const { |
54 | return m_accepted; | 60 | return m_accepted; |
55 | } | 61 | } |
62 | OTaskEditor* Editor::self() { | ||
63 | if (!m_self ) | ||
64 | m_self = new OTaskEditor(0); | ||
65 | |||
66 | return m_self; | ||
67 | } | ||
diff --git a/core/pim/todo/todoeditor.h b/core/pim/todo/todoeditor.h index bbfdcb5..fe30634 100644 --- a/core/pim/todo/todoeditor.h +++ b/core/pim/todo/todoeditor.h | |||
@@ -1,25 +1,29 @@ | |||
1 | #ifndef OPIE_TODO_EDITOR_H | 1 | #ifndef OPIE_TODO_EDITOR_H |
2 | #define OPIE_TODO_EDITOR_H | 2 | #define OPIE_TODO_EDITOR_H |
3 | 3 | ||
4 | #include <opie/otodo.h> | 4 | #include <opie/otodo.h> |
5 | 5 | ||
6 | 6 | ||
7 | class OTaskEditor; | ||
7 | namespace Todo { | 8 | namespace Todo { |
8 | class Editor { | 9 | class Editor { |
9 | public: | 10 | public: |
10 | Editor(); | 11 | Editor(); |
11 | ~Editor(); | 12 | ~Editor(); |
12 | 13 | ||
13 | OTodo newTodo( int currentCatId, | 14 | OTodo newTodo( int currentCatId, |
14 | QWidget* par ); | 15 | QWidget* par ); |
15 | OTodo edit( QWidget* par, | 16 | OTodo edit( QWidget* par, |
16 | const OTodo& ev = OTodo() ); | 17 | const OTodo& ev = OTodo() ); |
17 | 18 | ||
18 | 19 | ||
19 | bool accepted()const; | 20 | bool accepted()const; |
21 | protected: | ||
22 | OTaskEditor* self(); | ||
20 | private: | 23 | private: |
21 | bool m_accepted: 1; | 24 | bool m_accepted: 1; |
25 | OTaskEditor* m_self; | ||
22 | }; | 26 | }; |
23 | }; | 27 | }; |
24 | 28 | ||
25 | #endif | 29 | #endif |