summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/todo/mainwindow.cpp70
-rw-r--r--core/pim/todo/mainwindow.h6
-rw-r--r--core/pim/todo/quickeditimpl.cpp56
-rw-r--r--core/pim/todo/quickeditimpl.h9
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
@@ -27,6 +27,7 @@
*/
#include <unistd.h>
+#include <stdio.h>
#include <qmenubar.h>
#include <qmessagebox.h>
@@ -43,6 +44,7 @@
#include <qpe/ir.h>
#include <qpe/resource.h>
#include <qpe/qpemessagebox.h>
+#include <qpe/qpetoolbar.h>
#include <opie/orecur.h>
#include <opie/otodoaccessvcal.h>
@@ -85,6 +87,11 @@ void MainWindow::initTemplate() {
m_curTempEd = new TemplateEditor( this, templateManager() );
}
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 );
connect(a, SIGNAL( activated() ),
@@ -148,28 +155,38 @@ void MainWindow::initActions() {
a->addTo( m_tool );
}
+ // 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;
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();
@@ -177,17 +194,9 @@ void MainWindow::initActions() {
m_bar->insertItem( tr("Category"), m_catMenu );
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() ) );
}
/* m_curCat from Config */
@@ -197,22 +206,18 @@ void MainWindow::initConfig() {
m_completed = config.readBoolEntry( "ShowComplete", TRUE );
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");
setCentralWidget( m_mainBox );
setToolBarsMovable( FALSE );
- m_tool = new QToolBar( this );
+ m_tool = new QPEToolBar( this );
m_tool->setHorizontalStretchable( TRUE );
m_bar = new QMenuBar( m_tool );
@@ -371,7 +376,8 @@ void MainWindow::closeEvent( QCloseEvent* e ) {
config.writeEntry( "Category", currentCategory() );
config.writeEntry( "ShowDeadLine", showDeadline());
config.writeEntry( "ShowOverDue", showOverDue() );
- /* svae templates */
+ config.writeEntry( "ShowQuickTask", showQuickTask() );
+ /* save templates */
templateManager()->save();
e->accept();
}
@@ -515,6 +521,13 @@ void MainWindow::slotShowCompleted( bool show) {
m_completed = 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;
}
@@ -591,6 +604,9 @@ bool MainWindow::showCompleted()const {
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
@@ -47,6 +47,7 @@ class QAction;
class QWidgetStack;
class Ir;
class QVBox;
+class QLineEdit;
namespace Todo {
typedef TodoView View;
@@ -82,6 +83,7 @@ namespace Todo {
bool showCompleted()const;
bool showDeadline()const;
bool showOverDue()const;
+ bool showQuickTask()const;
QString currentCategory()const;
int currentCatId();
TemplateManager* templateManager();
@@ -131,6 +133,7 @@ private slots:
*m_deleteCompleteAction,
*m_duplicateAction,
*m_showOverDueAction,
+ *m_showQuickTaskAction,
*m_effectiveAction;
QWidgetStack *m_stack;
QPopupMenu* m_catMenu,
@@ -149,10 +152,10 @@ private slots:
bool m_deadline:1;
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;
@@ -178,6 +181,7 @@ 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,37 +1,46 @@
+#include <qaction.h>
#include <qlineedit.h>
+#include <qpe/resource.h>
+
#include <opie/oclickablelabel.h>
#include "mainwindow.h"
#include "quickeditimpl.h"
-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() {
@@ -42,9 +51,6 @@ OTodo QuickEditImpl::todo()const {
QWidget* QuickEditImpl::widget() {
return this;
}
-QSize QuickEditImpl::sizeHint()const{
- return m_edit->sizeHint();
-}
void QuickEditImpl::slotEnter() {
OTodo todo;
@@ -53,8 +59,8 @@ void QuickEditImpl::slotEnter() {
todo.setUid(1 ); // new uid
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;
commit();
@@ -81,6 +87,10 @@ void QuickEditImpl::slotPrio() {
}
}
void QuickEditImpl::slotMore() {
+ // TODO - implement
+}
+void QuickEditImpl::slotCancel() {
+ reinit();
}
void QuickEditImpl::reinit() {
m_state = 1;
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
@@ -1,25 +1,25 @@
#ifndef OPIE_QUICK_EDIT_IMPL_H
#define OPIE_QUICK_EDIT_IMPL_H
-#include <qhbox.h>
+#include <qpe/qpetoolbar.h>
#include "quickedit.h"
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();
int m_state;
@@ -29,6 +29,7 @@ private:
QLabel* m_more;
QPopupMenu* m_menu;
OTodo m_todo;
+ bool m_visible;
};
#endif