-rw-r--r-- | core/pim/todo/mainwindow.cpp | 70 | ||||
-rw-r--r-- | core/pim/todo/mainwindow.h | 6 | ||||
-rw-r--r-- | core/pim/todo/quickeditimpl.cpp | 56 | ||||
-rw-r--r-- | core/pim/todo/quickeditimpl.h | 9 |
4 files changed, 86 insertions, 55 deletions
diff --git a/core/pim/todo/mainwindow.cpp b/core/pim/todo/mainwindow.cpp index 0ab6230..f0aa455 100644 --- a/core/pim/todo/mainwindow.cpp +++ b/core/pim/todo/mainwindow.cpp @@ -28,4 +28,5 @@ #include <unistd.h> +#include <stdio.h> #include <qmenubar.h> @@ -44,4 +45,5 @@ #include <qpe/resource.h> #include <qpe/qpemessagebox.h> +#include <qpe/qpetoolbar.h> #include <opie/orecur.h> @@ -86,4 +88,9 @@ void MainWindow::initTemplate() { } void MainWindow::initActions() { + + // Data menu + m_edit->insertItem(tr("New from template"), m_template, + -1, 0 ); + QAction* a = new QAction( tr("New Task" ), Resource::loadPixmap( "new" ), QString::null, 0, this, 0 ); @@ -149,8 +156,8 @@ void MainWindow::initActions() { } + // Options menu a = new QAction( tr("Find"), Resource::loadIconSet( "mag" ), QString::null, 0, this, 0 ); - connect(a, SIGNAL( activated() ), - this, SLOT( slotFind() ) ); + connect(a, SIGNAL( activated() ), this, SLOT( slotFind() ) ); a->addTo( m_options ); m_findAction = a; @@ -158,17 +165,27 @@ void MainWindow::initActions() { m_options->insertSeparator(); - m_completedAction = new QAction( QString::null, tr("Completed tasks"), + m_completedAction = new QAction( QString::null, tr("Show completed tasks"), 0, this, 0, TRUE ); m_completedAction->addTo( m_options ); m_completedAction->setOn( showCompleted() ); - connect(m_completedAction, SIGNAL( toggled(bool) ), - this, SLOT(slotShowCompleted(bool) ) ); + connect(m_completedAction, SIGNAL( toggled(bool) ), this, SLOT(slotShowCompleted(bool) ) ); - m_showDeadLineAction = new QAction( QString::null, tr("Show Deadline"), + a = new QAction( QString::null, tr("Show only over-due tasks"), + 0, this, 0, TRUE ); + a->addTo( m_options ); + a->setOn( showOverDue() ); + connect(a, SIGNAL(toggled(bool)), this, SLOT(slotShowDue(bool) ) ); + + m_showDeadLineAction = new QAction( QString::null, tr("Show task deadlines"), 0, this, 0, TRUE ); m_showDeadLineAction->addTo( m_options ); m_showDeadLineAction->setOn( showDeadline() ); - connect(m_showDeadLineAction, SIGNAL(toggled(bool) ), - this, SLOT( slotShowDeadLine( bool ) ) ); + connect(m_showDeadLineAction, SIGNAL(toggled(bool) ), this, SLOT( slotShowDeadLine( bool ) ) ); + + m_showQuickTaskAction = new QAction( QString::null, tr("Show quick task bar"), + 0, this, 0, TRUE ); + m_showQuickTaskAction->addTo( m_options ); + m_showQuickTaskAction->setOn( showQuickTask() ); + connect(m_showQuickTaskAction, SIGNAL( toggled(bool) ), this, SLOT(slotShowQuickTask(bool) ) ); m_options->insertSeparator(); @@ -178,15 +195,7 @@ void MainWindow::initActions() { m_bar->insertItem( tr("Options"), m_options ); - /* initialize the view menu */ - a = new QAction( QString::null, tr("Show only over due"), - 0, this, 0, TRUE ); - a->addTo( m_options ); - a->setOn( showOverDue() ); - connect(a, SIGNAL(toggled(bool)), - this, SLOT(slotShowDue(bool) ) ); - - /* templates */ - m_edit->insertItem(tr("New from template"), m_template, - -1, 0 ); + m_curQuick = new QuickEditImpl( this, m_quicktask ); + addToolBar( (QPEToolBar *)m_curQuick->widget(), tr( "QuickEdit" ), QMainWindow::Top, TRUE ); + m_curQuick->signal()->connect( this, SLOT(slotQuickEntered() ) ); } @@ -198,13 +207,9 @@ void MainWindow::initConfig() { m_curCat = config.readEntry( "Category", QString::null ); m_deadline = config.readBoolEntry( "ShowDeadLine", TRUE); - m_overdue = config.readBoolEntry("ShowOverDue", TRUE ); + m_overdue = config.readBoolEntry("ShowOverDue", FALSE ); + m_quicktask = config.readBoolEntry("ShowQuickTask", TRUE); } void MainWindow::initUI() { m_mainBox = new QVBox(this, "main box "); - m_curQuick = new QuickEditImpl(this, m_mainBox ); - m_curQuick->signal()->connect( this, SLOT(slotQuickEntered() ) ); - m_quickEdit.append( m_curQuick ); - - m_stack = new QWidgetStack(m_mainBox, "main stack"); @@ -213,5 +218,5 @@ void MainWindow::initUI() { setToolBarsMovable( FALSE ); - m_tool = new QToolBar( this ); + m_tool = new QPEToolBar( this ); m_tool->setHorizontalStretchable( TRUE ); @@ -372,5 +377,6 @@ void MainWindow::closeEvent( QCloseEvent* e ) { config.writeEntry( "ShowDeadLine", showDeadline()); config.writeEntry( "ShowOverDue", showOverDue() ); - /* svae templates */ + config.writeEntry( "ShowQuickTask", showQuickTask() ); + /* save templates */ templateManager()->save(); e->accept(); @@ -516,4 +522,11 @@ void MainWindow::slotShowCompleted( bool show) { currentView()->setShowCompleted( m_completed ); } +void MainWindow::slotShowQuickTask( bool show ) { + m_quicktask = show; + if ( m_quicktask ) + m_curQuick->widget()->show(); + else + m_curQuick->widget()->hide(); +} bool MainWindow::showOverDue()const { return m_overdue; @@ -592,4 +605,7 @@ bool MainWindow::showDeadline()const { return m_deadline; } +bool MainWindow::showQuickTask()const { + return m_quicktask; +} QString MainWindow::currentCategory()const { return m_curCat; diff --git a/core/pim/todo/mainwindow.h b/core/pim/todo/mainwindow.h index 87a9133..86b9ac2 100644 --- a/core/pim/todo/mainwindow.h +++ b/core/pim/todo/mainwindow.h @@ -48,4 +48,5 @@ class QWidgetStack; class Ir; class QVBox; +class QLineEdit; namespace Todo { @@ -83,4 +84,5 @@ namespace Todo { bool showDeadline()const; bool showOverDue()const; + bool showQuickTask()const; QString currentCategory()const; int currentCatId(); @@ -132,4 +134,5 @@ private slots: *m_duplicateAction, *m_showOverDueAction, + *m_showQuickTaskAction, *m_effectiveAction; QWidgetStack *m_stack; @@ -150,8 +153,8 @@ private slots: bool m_completed:1; bool m_overdue:1; + bool m_quicktask:1; TodoManager m_todoMgr; QString m_curCat; QList<ViewBase> m_views; - QList<QuickEditBase> m_quickEdit; uint m_counter; TemplateManager* m_tempManager; @@ -179,4 +182,5 @@ private slots: void slotShowDeadLine( bool ); void slotShowCompleted( bool ); + void slotShowQuickTask( bool ); void setDocument( const QString& ); diff --git a/core/pim/todo/quickeditimpl.cpp b/core/pim/todo/quickeditimpl.cpp index 2dd5b61..9b54bdc 100644 --- a/core/pim/todo/quickeditimpl.cpp +++ b/core/pim/todo/quickeditimpl.cpp @@ -1,4 +1,7 @@ +#include <qaction.h> #include <qlineedit.h> +#include <qpe/resource.h> + #include <opie/oclickablelabel.h> @@ -7,30 +10,36 @@ -QuickEditImpl::QuickEditImpl( Todo::MainWindow* win, QWidget* arent ) - : QHBox(arent), Todo::QuickEdit(win) { - m_lbl = new OClickableLabel(this ); - m_lbl->setMinimumWidth(12); - m_lbl->setText("3"); +QuickEditImpl::QuickEditImpl( QWidget* parent, bool visible ) + : QPEToolBar( (QMainWindow *)parent ), Todo::QuickEdit( (Todo::MainWindow *)parent ) { + setHorizontalStretchable( TRUE ); - m_edit = new QLineEdit(this ); + // TODO - come up with icons and replace text priority values + m_lbl = new OClickableLabel( this ); + m_lbl->setMinimumWidth(15); + m_lbl->setText("3"); + connect(m_lbl, SIGNAL(clicked() ), this, SLOT(slotPrio()) ); - m_enter = new OClickableLabel(this); - m_enter->setText("Enter"); + m_edit = new QLineEdit( this ); + setStretchableWidget( m_edit ); - m_more = new OClickableLabel(this); - m_more->setText("More"); + QAction *a = new QAction( tr( "More" ), Resource::loadPixmap( "todo/more" ), QString::null, 0, this, 0 ); + connect( a, SIGNAL( activated() ), this, SLOT( slotMore() ) ); + a->addTo( this ); + a = new QAction( tr( "Enter" ), Resource::loadPixmap( "enter" ), QString::null, 0, this, 0 ); + connect( a, SIGNAL( activated() ), this, SLOT( slotEnter() ) ); + a->addTo( this ); - // connect - connect(m_lbl, SIGNAL(clicked() ), - this, SLOT(slotPrio()) ); - connect(m_enter, SIGNAL(clicked() ), - this, SLOT(slotEnter() ) ); - connect(m_more, SIGNAL(clicked() ), - this, SLOT(slotMore() ) ); + a = new QAction( tr( "Cancel" ), Resource::loadPixmap( "close" ), QString::null, 0, this, 0 ); + connect( a, SIGNAL( activated() ), this, SLOT( slotCancel() ) ); + a->addTo( this ); + m_visible = visible; + if ( !m_visible ) { + hide(); + } + m_menu = 0l; reinit(); - setMaximumHeight( m_edit->sizeHint().height() ); } QuickEditImpl::~QuickEditImpl() { @@ -43,7 +52,4 @@ QWidget* QuickEditImpl::widget() { return this; } -QSize QuickEditImpl::sizeHint()const{ - return m_edit->sizeHint(); -} void QuickEditImpl::slotEnter() { OTodo todo; @@ -54,6 +60,6 @@ void QuickEditImpl::slotEnter() { todo.setPriority( m_lbl->text().toInt() ); todo.setSummary( m_edit->text() ); - if ( mainWindow()->currentCatId() != 0 ) - todo.setCategories( mainWindow()->currentCatId() ); + if ( ((Todo::MainWindow *)parent())->currentCatId() != 0 ) + todo.setCategories( ((Todo::MainWindow *)parent())->currentCatId() ); m_todo = todo; @@ -82,4 +88,8 @@ void QuickEditImpl::slotPrio() { } void QuickEditImpl::slotMore() { + // TODO - implement +} +void QuickEditImpl::slotCancel() { + reinit(); } void QuickEditImpl::reinit() { diff --git a/core/pim/todo/quickeditimpl.h b/core/pim/todo/quickeditimpl.h index d0f6c69..c58275e 100644 --- a/core/pim/todo/quickeditimpl.h +++ b/core/pim/todo/quickeditimpl.h @@ -2,5 +2,5 @@ #define OPIE_QUICK_EDIT_IMPL_H -#include <qhbox.h> +#include <qpe/qpetoolbar.h> #include "quickedit.h" @@ -9,16 +9,16 @@ class QLineEdit; class QLabel; -class QuickEditImpl : public QHBox, public Todo::QuickEdit { +class QuickEditImpl : public QPEToolBar, public Todo::QuickEdit { Q_OBJECT public: - QuickEditImpl( Todo::MainWindow* win , QWidget* parent); + QuickEditImpl( QWidget* parent, bool visible); ~QuickEditImpl(); OTodo todo()const; QWidget* widget(); - QSize sizeHint()const; private slots: void slotEnter(); void slotPrio(); void slotMore(); + void slotCancel(); private: void reinit(); @@ -30,4 +30,5 @@ private: QPopupMenu* m_menu; OTodo m_todo; + bool m_visible; }; |