summaryrefslogtreecommitdiff
path: root/core/pim/todo/otaskeditor.cpp
Side-by-side diff
Diffstat (limited to 'core/pim/todo/otaskeditor.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/todo/otaskeditor.cpp35
1 files changed, 22 insertions, 13 deletions
diff --git a/core/pim/todo/otaskeditor.cpp b/core/pim/todo/otaskeditor.cpp
index 8b261de..eeb3c0c 100644
--- a/core/pim/todo/otaskeditor.cpp
+++ b/core/pim/todo/otaskeditor.cpp
@@ -1,15 +1,16 @@
#include <qdatetime.h>
#include <qlayout.h>
#include <qlabel.h>
#include <qmultilineedit.h>
+#include <qscrollview.h>
#include <opie/orecurrancewidget.h>
#include "taskeditoroverviewimpl.h"
-#include "taskeditoradvanced.h"
+#include "taskeditoradvancedimpl.h"
#include "taskeditoralarms.h"
#include "otaskeditor.h"
OTaskEditor::OTaskEditor(int cur)
: QDialog(0, 0, TRUE ) {
@@ -37,38 +38,42 @@ void OTaskEditor::init( const OTodo& to ) {
}
OTodo OTaskEditor::todo()const{
qWarning("saving!");
OTodo to;
to.setUid(m_uid );
m_overView->save( to );
- to.setDescription( m_line->text() );
+ m_adv->save( to );
+ to.setRecurrence( m_rec->recurrence() );
return to;
}
void OTaskEditor::load(const OTodo& to) {
m_overView->load( to );
- m_line->setText( to.description() );
+ m_adv->load( to );
+ m_rec->setRecurrence( to.recurrence(), to.hasDueDate() ? to.dueDate() : QDate::currentDate() );
}
void OTaskEditor::init() {
- QVBoxLayout* lay = new QVBoxLayout(this);
+ QVBoxLayout* lay = new QVBoxLayout(this );
+ QScrollView* view = new QScrollView( this );
+ view->setResizePolicy( QScrollView::AutoOneFit );
+ lay->addWidget( view );
+
setCaption("Task Editor");
- m_tab = new OTabWidget(this);
+ QWidget* container = new QWidget( view->viewport() );
+ view->addChild( container );
+ QVBoxLayout* layo = new QVBoxLayout( container );
+ m_tab = new OTabWidget(container );
+ layo->addWidget( m_tab );
/*
* Add the Widgets
*/
m_overView = new TaskEditorOverViewImpl(m_tab );
m_tab->addTab( m_overView, QString::null, tr("Overview") );
- m_adv = new TaskEditorAdvanced( m_tab );
- m_line = new QMultiLineEdit(m_adv );
- m_line->setWordWrap( QMultiLineEdit::WidgetWidth );
- QLabel* label = new QLabel(m_adv );
- label->setText( tr("Description") );
- ((QGridLayout*) m_adv->layout() )->addWidget( label,3, 0 );
- ((QGridLayout*) m_adv->layout())->addWidget( m_line,4,0 );
+ m_adv = new TaskEditorAdvancedImpl( m_tab );
m_tab->addTab( m_adv, QString::null, tr("Advanced") );
m_alarm = new TaskEditorAlarms( m_tab );
m_tab->addTab( m_alarm, QString::null, tr("Alarms") );
m_remind = new TaskEditorAlarms( m_tab );
@@ -78,14 +83,18 @@ void OTaskEditor::init() {
lbl->setText( tr("X-Ref") );
m_tab->addTab( lbl, QString::null, tr("X-Ref") );
m_rec = new ORecurranceWidget( true, QDate::currentDate(), this );
m_tab->addTab( m_rec, QString::null, tr("Recurrance") );
- lay->addWidget(m_tab );
/* signal and slots */
connect(m_overView, SIGNAL(recurranceEnabled(bool) ),
m_rec, SLOT(setEnabled(bool) ) );
+ /* connect due date changed to the recurrence tab */
+ connect(m_overView, SIGNAL(dueDateChanged(const QDate&) ),
+ m_rec, SLOT(setStartDate(const QDate& ) ) );
+
+
m_tab->setCurrentTab( m_overView );
}