-rw-r--r-- | core/pim/todo/.cvsignore | 2 | ||||
-rw-r--r-- | core/pim/todo/otaskeditor.cpp | 8 | ||||
-rw-r--r-- | core/pim/todo/otaskeditor.h | 4 | ||||
-rw-r--r-- | core/pim/todo/taskeditoradvanced.cpp | 132 | ||||
-rw-r--r-- | core/pim/todo/taskeditoradvanced.h | 73 | ||||
-rw-r--r-- | core/pim/todo/taskeditoradvanced.ui | 224 | ||||
-rw-r--r-- | core/pim/todo/taskeditoradvancedimpl.cpp | 63 | ||||
-rw-r--r-- | core/pim/todo/taskeditoradvancedimpl.h | 37 | ||||
-rw-r--r-- | core/pim/todo/taskeditoroverview.cpp | 3 | ||||
-rw-r--r-- | core/pim/todo/todo.pro | 5 |
10 files changed, 213 insertions, 338 deletions
diff --git a/core/pim/todo/.cvsignore b/core/pim/todo/.cvsignore index c212d11..77e97da 100644 --- a/core/pim/todo/.cvsignore +++ b/core/pim/todo/.cvsignore @@ -1,6 +1,4 @@ Makefile* moc_* -taskeditoradvanced.cpp -taskeditoradvanced.h todoentry.cpp todoentry.h diff --git a/core/pim/todo/otaskeditor.cpp b/core/pim/todo/otaskeditor.cpp index e6ebf60..bde25ef 100644 --- a/core/pim/todo/otaskeditor.cpp +++ b/core/pim/todo/otaskeditor.cpp @@ -1,17 +1,17 @@ #include <qdatetime.h> #include <qlayout.h> #include <qlabel.h> #include <qmultilineedit.h> #include <opie/orecurrancewidget.h> #include "taskeditoroverview.h" -#include "taskeditoradvancedimpl.h" +#include "taskeditoradvanced.h" #include "taskeditoralarms.h" #include "otaskeditor.h" OTaskEditor::OTaskEditor(int cur) : QDialog(0, 0, TRUE ) { init(); init( cur ); @@ -35,40 +35,40 @@ void OTaskEditor::init( const OTodo& to ) { load( to ); m_uid = to.uid(); } OTodo OTaskEditor::todo()const{ qWarning("saving!"); OTodo to; to.setUid(m_uid ); m_overView->save( to ); - //m_adv->save( to ); + m_adv->save( to ); to.setRecurrence( m_rec->recurrence() ); return to; } void OTaskEditor::load(const OTodo& to) { m_overView->load( to ); - //m_adv->load( to ); + m_adv->load( to ); m_rec->setRecurrence( to.recurrence(), to.hasDueDate() ? to.dueDate() : QDate::currentDate() ); } void OTaskEditor::init() { setCaption("Task Editor"); QVBoxLayout* layo = new QVBoxLayout( this ); m_tab = new OTabWidget( this ); layo->addWidget( m_tab ); /* * Add the Widgets */ m_overView = new TaskEditorOverView( m_tab ); m_tab->addTab( m_overView, "TodoList", tr("Overview") ); - m_adv = new TaskEditorAdvancedImpl( m_tab ); + m_adv = new TaskEditorAdvanced( m_tab ); m_tab->addTab( m_adv, "todo/advanced", tr("Advanced") ); m_alarm = new TaskEditorAlarms( m_tab ); m_tab->addTab( m_alarm, "todo/alarm", tr("Alarms") ); m_remind = new TaskEditorAlarms( m_tab ); m_tab->addTab( m_remind, "todo/reminder", tr("Reminders") ); diff --git a/core/pim/todo/otaskeditor.h b/core/pim/todo/otaskeditor.h index d13e157..8232886 100644 --- a/core/pim/todo/otaskeditor.h +++ b/core/pim/todo/otaskeditor.h @@ -2,17 +2,17 @@ #define OPIE_TASK_EDITOR_H #include <qdialog.h> #include <opie/otodo.h> #include <opie/otabwidget.h> class TaskEditorOverView; -class TaskEditorAdvancedImpl; +class TaskEditorAdvanced; class TaskEditorAlarms; class ORecurranceWidget; class QMultiLineEdit; class OTaskEditor : public QDialog { Q_OBJECT public: OTaskEditor(int cur); @@ -28,17 +28,17 @@ public: OTodo todo()const; private: void load( const OTodo& ); void init(); OTabWidget *m_tab; TaskEditorOverView *m_overView; - TaskEditorAdvancedImpl *m_adv; + TaskEditorAdvanced *m_adv; TaskEditorAlarms *m_alarm; TaskEditorAlarms *m_remind; ORecurranceWidget *m_rec; int m_uid; }; #endif diff --git a/core/pim/todo/taskeditoradvanced.cpp b/core/pim/todo/taskeditoradvanced.cpp new file mode 100644 index 0000000..a431d47 --- a/dev/null +++ b/core/pim/todo/taskeditoradvanced.cpp @@ -0,0 +1,132 @@ +/* + =. This file is part of the OPIE Project + .=l. Copyright (c) 2002 <> + .>+-= + _;:, .> :=|. This program is free software; you can +.> <`_, > . <= redistribute it and/or modify it under +:`=1 )Y*s>-.-- : the terms of the GNU General Public +.="- .-=="i, .._ License as published by the Free Software + - . .-<_> .<> Foundation; either version 2 of the License, + ._= =} : or (at your option) any later version. + .%`+i> _;_. + .i_,=:_. -<s. This program is distributed in the hope that + + . -:. = it will be useful, but WITHOUT ANY WARRANTY; + : .. .:, . . . without even the implied warranty of + =_ + =;=|` MERCHANTABILITY or FITNESS FOR A + _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU +..}^=.= = ; Library General Public License for more +++= -. .` .: details. + : = ...= . :.=- + -. .:....=;==+<; You should have received a copy of the GNU + -_. . . )=. = General Public License along with + -- :-=` this library; see the file COPYING.LIB. + If not, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. + +*/ + +#include "taskeditoradvanced.h" + +#include <opie/otodo.h> +#include <opie/opimmaintainer.h> +#include <opie/opimstate.h> + +#include <qpe/resource.h> + +#include <qcombobox.h> +#include <qlabel.h> +#include <qlayout.h> +#include <qmultilineedit.h> +#include <qscrollview.h> +#include <qtoolbutton.h> +#include <qwhatsthis.h> + +TaskEditorAdvanced::TaskEditorAdvanced( QWidget* parent, const char* name, WFlags fl ) + : QWidget( parent, name, fl ) +{ + QVBoxLayout *vb = new QVBoxLayout( this ); + + QScrollView *sv = new QScrollView( this ); + vb->addWidget( sv ); + sv->setResizePolicy( QScrollView::AutoOneFit ); + sv->setFrameStyle( QFrame::NoFrame ); + + QWidget *container = new QWidget( sv->viewport() ); + sv->addChild( container ); + + QGridLayout *layout = new QGridLayout( container, 5, 3, 4, 4 ); + + QLabel *label = new QLabel( tr( "State:" ), container ); + layout->addWidget( label, 0, 0 ); + + cmbState = new QComboBox( FALSE, container ); + cmbState->insertItem( tr( "Started" ) ); + cmbState->insertItem( tr( "Postponed" ) ); + cmbState->insertItem( tr( "Finished" ) ); + cmbState->insertItem( tr( "Not started" ) ); + layout->addMultiCellWidget( cmbState, 0, 0, 1, 2 ); + + label = new QLabel( tr( "Maintain Mode:" ), container ); + layout->addWidget( label, 1, 0 ); + + cmbMode = new QComboBox( FALSE, container ); + cmbMode->insertItem( tr( "Nothing" ) ); + cmbMode->insertItem( tr( "Responsible" ) ); + cmbMode->insertItem( tr( "Done By" ) ); + cmbMode->insertItem( tr( "Coordinating" ) ); + layout->addMultiCellWidget( cmbMode, 1, 1, 1, 2 ); + + label = new QLabel( tr( "Maintainer:" ), container ); + layout->addWidget( label, 2, 0 ); + + txtMaintainer = new QLabel( tr( "test" ), container ); + txtMaintainer->setTextFormat( QLabel::RichText ); + layout->addWidget( txtMaintainer, 2, 1 ); + + tbtMaintainer = new QToolButton( container ); + tbtMaintainer->setPixmap( Resource::loadPixmap( "todo/more" ) ); + layout->addWidget( tbtMaintainer, 2, 2 ); + + label = new QLabel( tr( "Description:" ), container ); + layout->addWidget( label, 3, 0 ); + + m_edit = new QMultiLineEdit( this ); + m_edit->setWordWrap( QMultiLineEdit::WidgetWidth ); + layout->addMultiCellWidget( m_edit, 4, 4, 0, 2 ); +} + +TaskEditorAdvanced::~TaskEditorAdvanced() +{ +} + +void TaskEditorAdvanced::load( const OTodo &todo ) +{ + m_edit->setText( todo.description() ); + + /* OPimState */ + int state = todo.state().state(); + + /* defualt to not started */ + if ( state == OPimState::Undefined ) + state = OPimState::NotStarted; + + cmbState->setCurrentItem( state ); + + /* Maintainer Mode */ + state = todo.maintainer().mode(); + if ( state == OPimMaintainer::Undefined ) + state = OPimMaintainer::Nothing; + + cmbMode->setCurrentItem( state ); +} + +void TaskEditorAdvanced::save( OTodo &todo ) +{ + todo.setDescription( m_edit->text() ); + todo.setState( OPimState( cmbState->currentItem() ) ); + + /* Fix me resolve name to uid.....*/ + todo.setMaintainer( OPimMaintainer( cmbMode->currentItem(), -10 ) ); + qWarning("save"); +} diff --git a/core/pim/todo/taskeditoradvanced.h b/core/pim/todo/taskeditoradvanced.h new file mode 100644 index 0000000..65359e9 --- a/dev/null +++ b/core/pim/todo/taskeditoradvanced.h @@ -0,0 +1,73 @@ +/* + =. This file is part of the OPIE Project + .=l. Copyright (c) 2002 <> + .>+-= + _;:, .> :=|. This program is free software; you can +.> <`_, > . <= redistribute it and/or modify it under +:`=1 )Y*s>-.-- : the terms of the GNU General Public +.="- .-=="i, .._ License as published by the Free Software + - . .-<_> .<> Foundation; either version 2 of the License, + ._= =} : or (at your option) any later version. + .%`+i> _;_. + .i_,=:_. -<s. This program is distributed in the hope that + + . -:. = it will be useful, but WITHOUT ANY WARRANTY; + : .. .:, . . . without even the implied warranty of + =_ + =;=|` MERCHANTABILITY or FITNESS FOR A + _.=:. : :=>`: PARTICULAR PURPOSE. See the GNU +..}^=.= = ; Library General Public License for more +++= -. .` .: details. + : = ...= . :.=- + -. .:....=;==+<; You should have received a copy of the GNU + -_. . . )=. = General Public License along with + -- :-=` this library; see the file COPYING.LIB. + If not, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. + +*/ + +#ifndef TASKEDITORADVANCED_H +#define TASKEDITORADVANCED_H + +#include <qwidget.h> + +class OTodo; +class QComboBox; +class QLabel; +class QMultiLineEdit; +class QToolButton; + +/** + * This is the implementation of the Opie Task Editor Advanced tab + * it features the State! + * MaintainerMode + * Description + */ +class TaskEditorAdvanced : public QWidget +{ + Q_OBJECT + +public: + TaskEditorAdvanced( QWidget* parent = 0, const char* name = 0, WFlags fl = 0 ); + ~TaskEditorAdvanced(); + + /* + * I could have a struct which returns a QWidget* + * load and save to a OTodo + * and use multiple inheretence with all other widgets + * and then simply iterate over the list of structs + * this way I could easily have plugins for the whole editor.... + * but I do not do it -zecke + */ + void load( const OTodo& ); + void save( OTodo& ); + + QComboBox *cmbState; + QLabel *txtMaintainer; + QToolButton *tbtMaintainer; + QComboBox *cmbMode; + QMultiLineEdit *m_edit; + +}; + +#endif // TASKEDITORADVANCED_H diff --git a/core/pim/todo/taskeditoradvanced.ui b/core/pim/todo/taskeditoradvanced.ui deleted file mode 100644 index 3aac216..0000000 --- a/core/pim/todo/taskeditoradvanced.ui +++ b/dev/null @@ -1,224 +0,0 @@ -<!DOCTYPE UI><UI> -<class>TaskEditorAdvanced</class> -<widget> - <class>QWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>TaskEditorAdvanced</cstring> - </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>0</x> - <y>0</y> - <width>232</width> - <height>307</height> - </rect> - </property> - <property> - <name>layoutMargin</name> - </property> - <property> - <name>layoutSpacing</name> - </property> - <grid> - <property stdset="1"> - <name>margin</name> - <number>8</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <widget row="0" column="0" > - <class>QLayoutWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>Layout13</cstring> - </property> - <hbox> - <property stdset="1"> - <name>margin</name> - <number>0</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>lblState</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>State:</string> - </property> - </widget> - <widget> - <class>QComboBox</class> - <item> - <property> - <name>text</name> - <string>Started</string> - </property> - </item> - <item> - <property> - <name>text</name> - <string>Postponed</string> - </property> - </item> - <item> - <property> - <name>text</name> - <string>Finished</string> - </property> - </item> - <item> - <property> - <name>text</name> - <string>Not started</string> - </property> - </item> - <property stdset="1"> - <name>name</name> - <cstring>cmbState</cstring> - </property> - </widget> - </hbox> - </widget> - <widget row="2" column="0" > - <class>QLayoutWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>Layout17</cstring> - </property> - <hbox> - <property stdset="1"> - <name>margin</name> - <number>0</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>lblMaintainer</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>Maintainer</string> - </property> - </widget> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>txtMaintainer</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>test</string> - </property> - <property stdset="1"> - <name>textFormat</name> - <enum>RichText</enum> - </property> - </widget> - <widget> - <class>QLayoutWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>Layout16</cstring> - </property> - <vbox> - <property stdset="1"> - <name>margin</name> - <number>0</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <widget> - <class>QToolButton</class> - <property stdset="1"> - <name>name</name> - <cstring>tbtMaintainer</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>...</string> - </property> - </widget> - </vbox> - </widget> - </hbox> - </widget> - <widget row="1" column="0" > - <class>QLayoutWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>Layout4</cstring> - </property> - <hbox> - <property stdset="1"> - <name>margin</name> - <number>0</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>txtMode</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>Maintain Mode:</string> - </property> - </widget> - <widget> - <class>QComboBox</class> - <item> - <property> - <name>text</name> - <string>Nothing</string> - </property> - </item> - <item> - <property> - <name>text</name> - <string>Responsible</string> - </property> - </item> - <item> - <property> - <name>text</name> - <string>Done By</string> - </property> - </item> - <item> - <property> - <name>text</name> - <string>Coordinating</string> - </property> - </item> - <property stdset="1"> - <name>name</name> - <cstring>cmbMode</cstring> - </property> - </widget> - </hbox> - </widget> - </grid> -</widget> -</UI> diff --git a/core/pim/todo/taskeditoradvancedimpl.cpp b/core/pim/todo/taskeditoradvancedimpl.cpp deleted file mode 100644 index 89f672c..0000000 --- a/core/pim/todo/taskeditoradvancedimpl.cpp +++ b/dev/null @@ -1,63 +0,0 @@ -#include <qmultilineedit.h> -#include <qcombobox.h> -#include <qlabel.h> -#include <qlayout.h> - - -#include <opie/otodo.h> -#include <opie/opimmaintainer.h> -#include <opie/opimstate.h> - -#include "taskeditoradvancedimpl.h" - - -TaskEditorAdvancedImpl::TaskEditorAdvancedImpl( QWidget* parent, const char* name ) - : TaskEditorAdvanced( parent, name ) { - initUI(); -} -TaskEditorAdvancedImpl::~TaskEditorAdvancedImpl() { -} -void TaskEditorAdvancedImpl::load( const OTodo& todo) { - m_edit->setText( todo.description() ); - - /* OPimState */ - int state = todo.state().state(); - - /* defualt to not started */ - if ( state == OPimState::Undefined ) - state = OPimState::NotStarted; - - cmbState->setCurrentItem( state ); - - /* Maintainer Mode */ - state = todo.maintainer().mode(); - if ( state == OPimMaintainer::Undefined ) - state = OPimMaintainer::Nothing; - - cmbMode->setCurrentItem( state ); - -} -void TaskEditorAdvancedImpl::save( OTodo& todo) { - todo.setDescription( m_edit->text() ); - todo.setState( OPimState( cmbState->currentItem() ) ); - - /* Fix me resolve name to uid.....*/ - todo.setMaintainer( OPimMaintainer( cmbMode->currentItem(), -10 ) ); - qWarning("save"); -} -/* - * int the damn UI - */ -void TaskEditorAdvancedImpl::initUI() { - /* a MultiLineEdit */ - m_edit = new QMultiLineEdit( this ); - m_edit->setWordWrap( QMultiLineEdit::WidgetWidth ); - - /* a Label */ - QLabel* lbl = new QLabel(this ); - lbl->setText( tr("Description") ); - - /* add it to the QGridLayout of our base class */ - static_cast<QGridLayout*>(layout() )->addWidget( lbl , 3, 0 ); - static_cast<QGridLayout*>(layout() )->addWidget( m_edit, 4, 0 ); -} diff --git a/core/pim/todo/taskeditoradvancedimpl.h b/core/pim/todo/taskeditoradvancedimpl.h deleted file mode 100644 index 215d8cb..0000000 --- a/core/pim/todo/taskeditoradvancedimpl.h +++ b/dev/null @@ -1,37 +0,0 @@ -#ifndef OPIE_TASK_EDITOR_ADVANCED_IMPL_H -#define OPIE_TASK_EDITOR_ADVANCED_IMPL_H - -#include "taskeditoradvanced.h" - -/** - * This is the implementation of the Opie Task Editor Advanced tab - * it features the State! - * MaintainerMode - * Description - */ -class QMultiLineEdit; -class OTodo; -class TaskEditorAdvancedImpl : public TaskEditorAdvanced { - Q_OBJECT -public: - TaskEditorAdvancedImpl( QWidget* parent = 0, const char* name = 0 ); - ~TaskEditorAdvancedImpl(); - - /* - * I could have a struct which returns a QWidget* - * load and save to a OTodo - * and use multiple inheretence with all other widgets - * and then simply iterate over the list of structs - * this way I could easily have plugins for the whole editor.... - * but I do not do it -zecke - */ - void load( const OTodo& ); - void save( OTodo& ); - -private: - void initUI(); - QMultiLineEdit* m_edit; -}; - - -#endif diff --git a/core/pim/todo/taskeditoroverview.cpp b/core/pim/todo/taskeditoroverview.cpp index 9aab76a..6906c26 100644 --- a/core/pim/todo/taskeditoroverview.cpp +++ b/core/pim/todo/taskeditoroverview.cpp @@ -35,18 +35,16 @@ #include <qpe/resource.h> #include <qpe/timestring.h> #include <qcheckbox.h> #include <qcombobox.h> #include <qlabel.h> #include <qlayout.h> #include <qpushbutton.h> -#include <qtooltip.h> -#include <qvariant.h> #include <qwhatsthis.h> TaskEditorOverView::TaskEditorOverView( QWidget* parent, const char* name, WFlags fl ) : QWidget( parent, name, fl ) { // Load icons // TODO - probably should be done globally somewhere else, // see also quickeditimpl.cpp/h, tableview.cpp/h @@ -56,17 +54,16 @@ TaskEditorOverView::TaskEditorOverView( QWidget* parent, const char* name, WFla namestr.append( QString::number( i ) ); m_pic_priority[ i - 1 ] = Resource::loadPixmap( namestr ); } QDate curDate = QDate::currentDate(); m_start = m_comp = m_due = curDate; QString curDateStr = TimeString::longDateString( curDate ); - // TODO - add QScrollView for contents QVBoxLayout *vb = new QVBoxLayout( this ); QScrollView *sv = new QScrollView( this ); vb->addWidget( sv ); sv->setResizePolicy( QScrollView::AutoOneFit ); sv->setFrameStyle( QFrame::NoFrame ); QWidget *container = new QWidget( sv->viewport() ); diff --git a/core/pim/todo/todo.pro b/core/pim/todo/todo.pro index 9960c65..697c005 100644 --- a/core/pim/todo/todo.pro +++ b/core/pim/todo/todo.pro @@ -13,17 +13,17 @@ HEADERS = smalltodo.h \ textviewshow.h \ templateeditor.h \ templatedialog.h \ templatedialogimpl.h \ quickedit.h \ quickeditimpl.h \ otaskeditor.h \ taskeditoroverview.h \ - taskeditoradvancedimpl.h \ + taskeditoradvanced.h \ taskeditoralarms.h SOURCES = smalltodo.cpp \ todomanager.cpp \ mainwindow.cpp \ main.cpp \ tableview.cpp \ todoview.cpp \ @@ -33,20 +33,19 @@ SOURCES = smalltodo.cpp \ textviewshow.cpp \ templateeditor.cpp \ templatedialog.cpp \ templatedialogimpl.cpp \ quickeditimpl.cpp \ quickedit.cpp \ otaskeditor.cpp \ taskeditoroverview.cpp \ - taskeditoradvancedimpl.cpp \ + taskeditoradvanced.cpp \ taskeditoralarms.cpp -INTERFACES = taskeditoradvanced.ui TARGET = todolist INCLUDEPATH += $(OPIEDIR)/include DEPENDPATH += $(OPIEDIR)/include LIBS += -lqpe -lopie TRANSLATIONS = ../../../i18n/de/todolist.ts \ ../../../i18n/da/todolist.ts \ ../../../i18n/xx/todolist.ts \ |