author | eilers <eilers> | 2003-08-01 14:22:29 (UTC) |
---|---|---|
committer | eilers <eilers> | 2003-08-01 14:22:29 (UTC) |
commit | 7d51872c86155fbbf27aeb8e49e7a336d909caac (patch) (side-by-side diff) | |
tree | 55ecf3452d6711065e36c6bceab8ec52bd5525d8 | |
parent | 34991bac7d96b1c17601be6a5607819342571e0c (diff) | |
download | opie-7d51872c86155fbbf27aeb8e49e7a336d909caac.zip opie-7d51872c86155fbbf27aeb8e49e7a336d909caac.tar.gz opie-7d51872c86155fbbf27aeb8e49e7a336d909caac.tar.bz2 |
Merging changes from BRANCH_1_0 to HEAD
-rw-r--r-- | core/pim/todo/main.cpp | 3 | ||||
-rw-r--r-- | core/pim/todo/mainwindow.cpp | 136 | ||||
-rw-r--r-- | core/pim/todo/mainwindow.h | 4 | ||||
-rw-r--r-- | core/pim/todo/opie-todo.control | 6 | ||||
-rw-r--r-- | core/pim/todo/otaskeditor.cpp | 14 | ||||
-rw-r--r-- | core/pim/todo/otaskeditor.h | 3 | ||||
-rw-r--r-- | core/pim/todo/quickedit.cpp | 1 | ||||
-rw-r--r-- | core/pim/todo/quickeditimpl.cpp | 7 | ||||
-rw-r--r-- | core/pim/todo/smalltodo.cpp | 1 | ||||
-rw-r--r-- | core/pim/todo/tableview.cpp | 86 | ||||
-rw-r--r-- | core/pim/todo/tableview.h | 18 | ||||
-rw-r--r-- | core/pim/todo/taskeditoralarms.cpp | 5 | ||||
-rw-r--r-- | core/pim/todo/taskeditoroverview.cpp | 6 | ||||
-rw-r--r-- | core/pim/todo/taskeditorstatus.cpp | 5 | ||||
-rw-r--r-- | core/pim/todo/templatedialogimpl.cpp | 1 | ||||
-rw-r--r-- | core/pim/todo/textviewshow.cpp | 18 | ||||
-rw-r--r-- | core/pim/todo/todomanager.cpp | 1 | ||||
-rw-r--r-- | core/pim/todo/todoshow.cpp | 8 | ||||
-rw-r--r-- | core/pim/todo/todoshow.h | 2 | ||||
-rw-r--r-- | core/pim/todo/todoview.cpp | 3 | ||||
-rw-r--r-- | core/pim/todo/todoview.h | 12 |
21 files changed, 273 insertions, 67 deletions
diff --git a/core/pim/todo/main.cpp b/core/pim/todo/main.cpp index 58ed45c..7763169 100644 --- a/core/pim/todo/main.cpp +++ b/core/pim/todo/main.cpp @@ -23,3 +23,2 @@ -#include <qdatetime.h> @@ -41,3 +40,3 @@ int main( int argc, char **argv ) qWarning("QTime %d", t/1000 ); - mw.setCaption("Opie Todolist"); + mw.setCaption( QObject::tr("Opie Todolist")); QObject::connect( &a, SIGNAL( flush() ), &mw, SLOT( slotFlush() ) ); diff --git a/core/pim/todo/mainwindow.cpp b/core/pim/todo/mainwindow.cpp index 5119ae0..6725951 100644 --- a/core/pim/todo/mainwindow.cpp +++ b/core/pim/todo/mainwindow.cpp @@ -73,2 +73,3 @@ MainWindow::MainWindow( QWidget* parent, m_syncing = false; + m_showing = false; m_counter = 0; @@ -163,2 +164,3 @@ void MainWindow::initActions() { +#if 0 // Options menu @@ -170,3 +172,5 @@ void MainWindow::initActions() { + m_options->insertSeparator(); +#endif @@ -354,2 +358,3 @@ void MainWindow::closeEvent( QCloseEvent* e ) { if (m_stack->visibleWidget() == currentShow()->widget() ) { + m_showing = false; raiseCurrentView(); @@ -411,3 +416,3 @@ void MainWindow::populateTemplates() { * We use the edit widget to do - * the config but we setUid(-1) + * the config but we setUid(1) * to get a new uid @@ -427,5 +432,6 @@ void MainWindow::slotNewFromTemplate( int id ) { /* assign new todo */ - event.setUid( -1 ); - currentView()->addEvent( event ); + event.setUid( 1 ); + handleAlarms( OTodo(), event ); m_todoMgr.add( event ); + currentView()->addEvent( event ); @@ -433,2 +439,3 @@ void MainWindow::slotNewFromTemplate( int id ) { } + raiseCurrentView(); } @@ -440,3 +447,3 @@ void MainWindow::slotDuplicate() { QMessageBox::warning(this, QWidget::tr("Todo"), - QWidget::tr("Can not edit data, currently syncing")); + QWidget::tr("Data can not be edited, currently syncing")); return; @@ -445,3 +452,3 @@ void MainWindow::slotDuplicate() { /* let's generate a new uid */ - ev.setUid(-1); + ev.setUid(1); m_todoMgr.add( ev ); @@ -457,3 +464,3 @@ void MainWindow::slotDelete() { QMessageBox::warning(this, QWidget::tr("Todo"), - QWidget::tr("Can not edit data, currently syncing")); + QWidget::tr("Data can not be edited, currently syncing")); return; @@ -464,3 +471,3 @@ void MainWindow::slotDelete() { - handleAlarms( OTodo(), m_todoMgr.event( currentView()->current() ) ); + handleAlarms( m_todoMgr.event( currentView()->current() ), OTodo() ); m_todoMgr.remove( currentView()->current() ); @@ -469,2 +476,18 @@ void MainWindow::slotDelete() { } +void MainWindow::slotDelete(int uid ) { + if( uid == 0 ) return; + if(m_syncing) { + QMessageBox::warning(this, QWidget::tr("Todo"), + QWidget::tr("Data can not be edited, currently syncing")); + return; + } + OTodo to = m_todoMgr.event(uid); + if (!QPEMessageBox::confirmDelete(this, QWidget::tr("Todo"), to.toShortText() ) ) + return; + + handleAlarms(to, OTodo() ); + m_todoMgr.remove( to.uid() ); + currentView()->removeEvent( to.uid() ); + raiseCurrentView(); +} void MainWindow::slotDeleteAll() { @@ -472,3 +495,3 @@ void MainWindow::slotDeleteAll() { QMessageBox::warning(this, QWidget::tr("Todo"), - QWidget::tr("Can not edit data, currently syncing")); + QWidget::tr("Data can not be edited, currently syncing")); return; @@ -488,3 +511,3 @@ void MainWindow::slotDeleteCompleted() { QMessageBox::warning(this, QWidget::tr("Todo"), - QWidget::tr("Can not edit data, currently syncing")); + QWidget::tr("Data can not be edited, currently syncing")); return; @@ -568,2 +591,3 @@ void MainWindow::receiveFile( const QString& filename ) { OTodoAccessVCal* cal = new OTodoAccessVCal(filename ); + OTodoAccess acc( cal ); @@ -572,12 +596,15 @@ void MainWindow::receiveFile( const QString& filename ) { - QString message = QWidget::tr("<P>%1 new tasks arrived.<p>Would you like to add them to your Todolist?").arg(list.count() ); + if (list.count()){ - if ( QMessageBox::information(this, QWidget::tr("New Tasks"), - message, QMessageBox::Ok, - QMessageBox::Cancel ) == QMessageBox::Ok ) { - OTodoAccess::List::Iterator it; - for ( it = list.begin(); it != list.end(); ++it ) - m_todoMgr.add( (*it) ); + QString message = QWidget::tr("<P>%1 new tasks arrived.<p>Would you like to add them to your Todolist?").arg(list.count() ); - currentView()->updateView(); + if ( QMessageBox::information(this, QWidget::tr("New Tasks"), + message, QMessageBox::Ok, + QMessageBox::Cancel ) == QMessageBox::Ok ) { + OTodoAccess::List::Iterator it; + for ( it = list.begin(); it != list.end(); ++it ) + m_todoMgr.add( (*it) ); + + currentView()->updateView(); + } } @@ -636,2 +663,9 @@ ViewBase* MainWindow::currentView() { void MainWindow::raiseCurrentView() { + // due QPE/Application/todolist show(int) + // we might not have the populateCategories slot called once + // we would show the otodo but then imediately switch to the currentView + // if we're initially showing we shouldn't raise the table + // in returnFromView we fix up m_showing + if (m_showing ) return; + m_stack->raiseWidget( m_curView->widget() ); @@ -644,2 +678,3 @@ void MainWindow::slotShowDue(bool ov) { void MainWindow::slotShow( int uid ) { + if ( uid == 0 ) return; qWarning("slotShow"); @@ -648,7 +683,17 @@ void MainWindow::slotShow( int uid ) { } +void MainWindow::slotShowNext() { + int l = currentView()->next(); + if (l!=0) + slotShow(l); +} +void MainWindow::slotShowPrev() { + int l = currentView()->prev(); + if (l!=0) + slotShow(l); +} void MainWindow::slotEdit( int uid ) { - if (uid == 1 ) return; + if (uid == 0 ) return; if(m_syncing) { QMessageBox::warning(this, QWidget::tr("Todo"), - QWidget::tr("Can not edit data, currently syncing")); + QWidget::tr("Data can't be edited, currently syncing")); return; @@ -662,3 +707,2 @@ void MainWindow::slotEdit( int uid ) { if ( currentEditor()->accepted() ) { - qWarning("Replacing now" ); handleAlarms( old_todo, todo ); @@ -720,2 +764,6 @@ void MainWindow::slotComplete( const OTodo& todo ) { * the spinned off one will loose the + * recurrence. + * We calculate the difference between the old due date and the + * new one and add this diff to start, completed and alarm dates + * -zecke */ @@ -736,2 +784,4 @@ void MainWindow::slotComplete( const OTodo& todo ) { if ( to2.recurrence().nextOcurrence( to2.dueDate().addDays(1), date ) ) { + int dayDiff = to.dueDate().daysTo( date ); + qWarning("day diff is %d", dayDiff ); QDate inval; @@ -749,5 +799,26 @@ void MainWindow::slotComplete( const OTodo& todo ) { to2.setDueDate( date ); - to2.setStartDate( inval ); + rec.setStart( date ); + to2.setRecurrence( rec ); // could be Monday, TuesDay, Thursday every week + + /* move start date */ + if (to2.hasStartDate() ) + to2.setStartDate( to2.startDate().addDays( dayDiff ) ); + + /* now the alarms */ + if (to2.hasNotifiers() ) { + OPimNotifyManager::Alarms _als = to2.notifiers().alarms(); + OPimNotifyManager::Alarms als; + + /* for every alarm move the day */ + for ( OPimNotifyManager::Alarms::Iterator it = _als.begin(); it != _als.end(); ++it ) { + OPimAlarm al = (*it); + al.setDateTime( al.dateTime().addDays( dayDiff ) ); + als.append( al ); + } + to2.notifiers().setAlarms( als ); + handleAlarms( OTodo(), todo ); + } to2.setCompletedDate( inval ); to2.setCompleted( false ); + updateTodo( to2 ); @@ -771,5 +842,6 @@ int MainWindow::create() { QMessageBox::warning(this, QWidget::tr("Todo"), - QWidget::tr("Can not edit data, currently syncing")); + QWidget::tr("Data can not be edited, currently syncing")); return uid; } + m_todoMgr.load(); @@ -806,3 +878,7 @@ bool MainWindow::remove( int uid ) { void MainWindow::beam( int uid) { + if( uid == 0 ) return; + ::unlink( beamfile ); + m_todoMgr.load(); + OTodo todo = event( uid ); @@ -819,5 +895,10 @@ void MainWindow::beam( int uid) { void MainWindow::show( int uid ) { + m_todoMgr.load(); // might not be loaded yet + m_showing = true; slotShow( uid ); + raise(); + QPEApplication::setKeepRunning(); } void MainWindow::edit( int uid ) { + m_todoMgr.load(); slotEdit( uid ); @@ -826,2 +907,3 @@ void MainWindow::add( const OPimRecord& rec) { if ( rec.rtti() != OTodo::rtti() ) return; + m_todoMgr.load(); // might not be loaded @@ -839,2 +921,3 @@ void MainWindow::add( const OPimRecord& rec) { void MainWindow::slotReturnFromView() { + m_showing = false; raiseCurrentView(); @@ -934,3 +1017,3 @@ void MainWindow::doAlarm( const QDateTime& dt, int uid ) { - QString text = tr("<h1>Alarm at %0</h1><br>").arg( TimeString::dateString( dt ) ); + QString text = tr("<h1>Alarm at %1</h1><br>").arg( TimeString::dateString( dt ) ); text += todo.toRichText(); @@ -945,6 +1028,6 @@ void MainWindow::doAlarm( const QDateTime& dt, int uid ) { if (needToStay) { - showMaximized(); - raise(); +// showMaximized(); +// raise(); QPEApplication::setKeepRunning(); - setActiveWindow(); +// setActiveWindow(); } @@ -952 +1035,2 @@ void MainWindow::doAlarm( const QDateTime& dt, int uid ) { } + diff --git a/core/pim/todo/mainwindow.h b/core/pim/todo/mainwindow.h index 02e2449..b04a958 100644 --- a/core/pim/todo/mainwindow.h +++ b/core/pim/todo/mainwindow.h @@ -120,2 +120,3 @@ private slots: ViewBase* m_curView; + bool m_showing : 1; // used to see if we show a todo in the cases we shouldn't change the table QuickEditBase* m_curQuick; @@ -169,2 +170,3 @@ private slots: void slotDelete(); + void slotDelete(int uid ); void slotDeleteAll(); @@ -187,2 +189,4 @@ private slots: void slotShowDetails(); + void slotShowNext(); + void slotShowPrev(); void slotShowDue( bool ); diff --git a/core/pim/todo/opie-todo.control b/core/pim/todo/opie-todo.control index b579306..17a65a8 100644 --- a/core/pim/todo/opie-todo.control +++ b/core/pim/todo/opie-todo.control @@ -1,3 +1,3 @@ Package: opie-todo -Files: bin/todolist apps/1Pim/todo.desktop pics/todo +Files: bin/todolist apps/1Pim/todo.desktop Priority: optional @@ -6,5 +6,5 @@ Maintainer: Holger 'zecke' Freyther <zecke@handhelds.org> Architecture: arm -Version: $QPE_VERSION-$SUB_VERSION -Depends: task-opie-minimal, libopie1 +Depends: task-opie-minimal, libopie1, opie-pics Description: TODO-list manager A Todo-list manager for the Opie environment. +Version: $QPE_VERSION$EXTRAVERSION diff --git a/core/pim/todo/otaskeditor.cpp b/core/pim/todo/otaskeditor.cpp index 84f854f..1ed20b4 100644 --- a/core/pim/todo/otaskeditor.cpp +++ b/core/pim/todo/otaskeditor.cpp @@ -1,5 +1,2 @@ -#include <qdatetime.h> -#include <qlabel.h> #include <qlayout.h> -#include <qmultilineedit.h> @@ -28,2 +25,3 @@ void OTaskEditor::init( int cur ) { OTodo to; + to.setUid( 1 ); // generate a new uid if ( cur != 0 ) @@ -31,3 +29,2 @@ void OTaskEditor::init( int cur ) { load(to); - m_uid = 1; // generate a new one } @@ -35,3 +32,2 @@ void OTaskEditor::init( const OTodo& to ) { load( to ); - m_uid = to.uid(); } @@ -39,4 +35,3 @@ OTodo OTaskEditor::todo()const{ qWarning("saving!"); - OTodo to; - to.setUid(m_uid ); + OTodo to ( m_todo ); m_overView->save( to ); @@ -52,7 +47,8 @@ void OTaskEditor::load(const OTodo& to) { m_rec->setRecurrence( to.recurrence(), to.hasDueDate() ? to.dueDate() : QDate::currentDate() ); - m_alarm->setEnabled( !to.hasRecurrence() ); m_alarm->load( to ); + + m_todo = to; } void OTaskEditor::init() { - setCaption("Task Editor"); + setCaption(tr("Task Editor") ); diff --git a/core/pim/todo/otaskeditor.h b/core/pim/todo/otaskeditor.h index 795f333..2daae52 100644 --- a/core/pim/todo/otaskeditor.h +++ b/core/pim/todo/otaskeditor.h @@ -39,4 +39,3 @@ private: ORecurranceWidget *m_rec; - int m_uid; - + OTodo m_todo; }; diff --git a/core/pim/todo/quickedit.cpp b/core/pim/todo/quickedit.cpp index edcd48a..16fc53a 100644 --- a/core/pim/todo/quickedit.cpp +++ b/core/pim/todo/quickedit.cpp @@ -1,2 +1 @@ -#include "mainwindow.h" #include "quickedit.h" diff --git a/core/pim/todo/quickeditimpl.cpp b/core/pim/todo/quickeditimpl.cpp index f4c7c47..70e0582 100644 --- a/core/pim/todo/quickeditimpl.cpp +++ b/core/pim/todo/quickeditimpl.cpp @@ -33,2 +33,6 @@ QuickEditImpl::QuickEditImpl( QWidget* parent, bool visible ) + /* + * it's not implemented and won't be implemented for 1.0 + */ +#if 0 QAction *a = new QAction( QWidget::tr( "More" ), Resource::loadPixmap( "todo/more" ), QString::null, 0, this, 0 ); @@ -37,4 +41,5 @@ QuickEditImpl::QuickEditImpl( QWidget* parent, bool visible ) a->setWhatsThis( QWidget::tr( "Click here to enter additional information for new task.\n\nThis area is called the quick task bar.\n\nIt allows you to quickly add a new task to your list. This area can be shown or hidden by selecting Options->'Show quick task bar' from the menu above." ) ); +#endif - a = new QAction( QWidget::tr( "Enter" ), Resource::loadPixmap( "enter" ), QString::null, 0, this, 0 ); + QAction *a = new QAction( QWidget::tr( "Enter" ), Resource::loadPixmap( "enter" ), QString::null, 0, this, 0 ); connect( a, SIGNAL( activated() ), this, SLOT( slotEnter() ) ); diff --git a/core/pim/todo/smalltodo.cpp b/core/pim/todo/smalltodo.cpp index 412fe9e..504256d 100644 --- a/core/pim/todo/smalltodo.cpp +++ b/core/pim/todo/smalltodo.cpp @@ -27,3 +27,2 @@ */ -#include <qshared.h> diff --git a/core/pim/todo/tableview.cpp b/core/pim/todo/tableview.cpp index d9cda09..2e252d5 100644 --- a/core/pim/todo/tableview.cpp +++ b/core/pim/todo/tableview.cpp @@ -29,2 +29,3 @@ #include <cmath> +#include <cctype> @@ -33,3 +34,2 @@ #include <qtimer.h> -#include <qpoint.h> #include <qpopupmenu.h> @@ -52,2 +52,23 @@ namespace { +TableView::EditorWidget::EditorWidget() : m_wid(0l), m_row(-1), m_col(-1) { +} +void TableView::EditorWidget::setCellWidget(QWidget* wid, int row, int col ) { + m_wid = wid; + m_row = row; + m_col = col; +} +void TableView::EditorWidget::releaseCellWidget() { + m_wid = 0; + m_row = m_col = -1; +} +QWidget* TableView::EditorWidget::cellWidget()const { + return m_wid; +} +int TableView::EditorWidget::cellRow()const { + return m_row; +} +int TableView::EditorWidget::cellCol()const { + return m_col; +} + @@ -145,3 +166,3 @@ QString TableView::type() const { int TableView::current() { - if (numRows() == 0 ) return 1; + if (numRows() == 0 ) return 0; int uid = sorted().uidAt(currentRow() ); @@ -150,2 +171,15 @@ int TableView::current() { } +int TableView::next() { + if ( numRows() == 0 ) return 0; + if ( currentRow() + 1 >= numRows() ) return 0; + setCurrentCell( currentRow() +1, currentColumn() ); + return sorted().uidAt( currentRow() ); +} +int TableView::prev() { + if ( numRows() == 0 ) return 0; + if ( currentRow() - 1 < 0 ) return 0; + setCurrentCell( currentRow() -1, currentColumn() ); + return sorted().uidAt( currentRow() ); + +} QString TableView::currentRepresentation() { @@ -221,3 +255,3 @@ void TableView::removeEvent( int ) { void TableView::setShowCompleted( bool b) { - qWarning("Show Completed %d" + b ); + qWarning("Show Completed %d" , b ); updateView(); @@ -225,3 +259,3 @@ void TableView::setShowCompleted( bool b) { void TableView::setShowDeadline( bool b ) { - qWarning( "Show DeadLine %d" + b ); + qWarning( "Show DeadLine %d" , b ); if ( b ) @@ -261,2 +295,9 @@ void TableView::slotClicked(int row, int col, int, const QPoint& point) { + if ( m_editorWidget.cellWidget() ) { + //setCellContentFromEditor(m_editorWidget.cellRow(), m_editorWidget.cellCol() ); + endEdit(m_editorWidget.cellRow(), m_editorWidget.cellCol(), + true, true ); + m_editorWidget.releaseCellWidget(); + } + if ( !cellGeometry(row, col ).contains(point ) ) @@ -282,3 +323,7 @@ void TableView::slotClicked(int row, int col, int, - case 1: + // Priority emit a double click... + case 1:{ + QWidget* wid = beginEdit( row, col, FALSE ); + m_editorWidget.setCellWidget( wid, row, col ); + } break; @@ -448,2 +493,3 @@ QWidget* TableView::createEditor(int row, int col, bool )const { void TableView::setCellContentFromEditor(int row, int col ) { + qWarning("set cell content from editor"); if ( col == 1 ) { @@ -544,2 +590,18 @@ void TableView::contentsMouseMoveEvent( QMouseEvent* e ) { void TableView::keyPressEvent( QKeyEvent* event) { + if ( m_editorWidget.cellWidget() ) { +// setCellContentFromEditor(m_editorWidget.cellRow(), m_editorWidget.cellCol() ); + endEdit(m_editorWidget.cellRow(), m_editorWidget.cellCol(), + true, true ); + m_editorWidget.releaseCellWidget(); + setFocus(); + } + int row = currentRow(); + int col = currentColumn(); + + char key = ::toupper( event->ascii() ); + /* let QTable also handle the d later */ + if ( key == 'D' ) + removeQuery( sorted().uidAt( row ) ); + + switch( event->key() ) { @@ -548,3 +610,14 @@ void TableView::keyPressEvent( QKeyEvent* event) { case Qt::Key_Return: - showTodo( sorted().uidAt( currentRow() ) ); + case Qt::Key_Space: + if ( col == 0 ) { + TodoView::complete(sorted()[row]); + }else if ( col == 1 ) { + QWidget* wid = beginEdit(row, col, FALSE ); + m_editorWidget.setCellWidget( wid, row, col ); + }else if ( col == 2 ) { + showTodo( sorted().uidAt( currentRow() ) ); + }else if ( col == 3 ) { + TodoView::edit( sorted().uidAt(row) ); + } + break; @@ -554 +627,2 @@ void TableView::keyPressEvent( QKeyEvent* event) { } + diff --git a/core/pim/todo/tableview.h b/core/pim/todo/tableview.h index 689c496..528ddc9 100644 --- a/core/pim/todo/tableview.h +++ b/core/pim/todo/tableview.h @@ -52,2 +52,4 @@ namespace Todo { QString currentRepresentation(); + int next(); + int prev(); @@ -93,2 +95,18 @@ namespace Todo { void setCellContentFromEditor( int row, int col ); + /** + * for inline editing on single click and to work around some + * bug in qt2.3.5 + */ + struct EditorWidget { + EditorWidget(); + void setCellWidget(QWidget*, int row, int col ); + void releaseCellWidget(); + QWidget* cellWidget()const; + int cellRow()const; + int cellCol()const; + private: + QWidget* m_wid; + int m_row, m_col; + }; + EditorWidget m_editorWidget; diff --git a/core/pim/todo/taskeditoralarms.cpp b/core/pim/todo/taskeditoralarms.cpp index bff3338..bcc40fe 100644 --- a/core/pim/todo/taskeditoralarms.cpp +++ b/core/pim/todo/taskeditoralarms.cpp @@ -36,10 +36,5 @@ #include <qpe/resource.h> -#include <qpe/timestring.h> -#include <qdatetime.h> #include <qlistview.h> -#include <qpushbutton.h> -#include <qpopupmenu.h> #include <qlayout.h> -#include <qwhatsthis.h> diff --git a/core/pim/todo/taskeditoroverview.cpp b/core/pim/todo/taskeditoroverview.cpp index 9a8abea..415dcf2 100644 --- a/core/pim/todo/taskeditoroverview.cpp +++ b/core/pim/todo/taskeditoroverview.cpp @@ -35,6 +35,4 @@ #include <qpe/resource.h> -#include <qpe/timestring.h> #include <qcheckbox.h> -#include <qcombobox.h> #include <qlabel.h> @@ -70,3 +68,3 @@ TaskEditorOverView::TaskEditorOverView( QWidget* parent, const char* name, WFla // Description - QLabel *label = new QLabel( tr( "Description:" ), container ); + QLabel *label = new QLabel( tr( "Summary:" ), container ); layout->addWidget( label, 0, 0 ); @@ -118,3 +116,3 @@ TaskEditorOverView::TaskEditorOverView( QWidget* parent, const char* name, WFla // Notes - label = new QLabel( tr( "Notes:" ), container ); + label = new QLabel( tr( "Description:" ), container ); layout->addWidget( label, 5, 0 ); diff --git a/core/pim/todo/taskeditorstatus.cpp b/core/pim/todo/taskeditorstatus.cpp index 0ab4223..98e3cea 100644 --- a/core/pim/todo/taskeditorstatus.cpp +++ b/core/pim/todo/taskeditorstatus.cpp @@ -35,4 +35,2 @@ #include <qpe/datebookmonth.h> -#include <qpe/resource.h> -#include <qpe/timestring.h> @@ -42,4 +40,2 @@ #include <qlayout.h> -#include <qscrollview.h> -#include <qtoolbutton.h> #include <qwhatsthis.h> @@ -305,2 +301,3 @@ void TaskEditorStatus::slotDueChanged(int y, int m, int d) btnDue->setText( TimeString::longDateString( m_due ) ); + emit dueDateChanged( m_due ); } diff --git a/core/pim/todo/templatedialogimpl.cpp b/core/pim/todo/templatedialogimpl.cpp index fed92f0..c2306ac 100644 --- a/core/pim/todo/templatedialogimpl.cpp +++ b/core/pim/todo/templatedialogimpl.cpp @@ -1,2 +1 @@ -#include <qlistview.h> #include <qlineedit.h> diff --git a/core/pim/todo/textviewshow.cpp b/core/pim/todo/textviewshow.cpp index fe8a9c8..35ea74b 100644 --- a/core/pim/todo/textviewshow.cpp +++ b/core/pim/todo/textviewshow.cpp @@ -1,2 +1 @@ -#include "mainwindow.h" #include "textviewshow.h" @@ -22,2 +21,18 @@ void TextViewShow::keyPressEvent( QKeyEvent* event ) { switch( event->key() ) { + case Qt::Key_Up: + if ( ( visibleHeight() < contentsHeight() ) && + ( verticalScrollBar()->value() > verticalScrollBar()->minValue() ) ) + scrollBy( 0, -(visibleHeight()-20) ); + else + showPrev(); + break; + case Qt::Key_Down: + if ( ( visibleHeight() < contentsHeight() ) && + ( verticalScrollBar()->value() < verticalScrollBar()->maxValue() ) ) + scrollBy( 0, visibleHeight()-20 ); + else + showNext(); + break; + case Qt::Key_Left: + case Qt::Key_Right: case Qt::Key_F33: @@ -25,2 +40,3 @@ void TextViewShow::keyPressEvent( QKeyEvent* event ) { case Qt::Key_Return: + case Qt::Key_Space: escapeView(); diff --git a/core/pim/todo/todomanager.cpp b/core/pim/todo/todomanager.cpp index df2e711..501cca7 100644 --- a/core/pim/todo/todomanager.cpp +++ b/core/pim/todo/todomanager.cpp @@ -27,3 +27,2 @@ */ -#include <qdatetime.h> #include <qpe/categoryselect.h> diff --git a/core/pim/todo/todoshow.cpp b/core/pim/todo/todoshow.cpp index 4dbc9aa..5962028 100644 --- a/core/pim/todo/todoshow.cpp +++ b/core/pim/todo/todoshow.cpp @@ -16 +16,9 @@ void TodoShow::escapeView() { +void TodoShow::showNext() { + if (m_win) + m_win->slotShowNext(); +} +void TodoShow::showPrev() { + if (m_win) + m_win->slotShowPrev(); +} diff --git a/core/pim/todo/todoshow.h b/core/pim/todo/todoshow.h index 7267b13..2babe93 100644 --- a/core/pim/todo/todoshow.h +++ b/core/pim/todo/todoshow.h @@ -52,2 +52,4 @@ namespace Todo { void escapeView(); + void showNext(); + void showPrev(); private: diff --git a/core/pim/todo/todoview.cpp b/core/pim/todo/todoview.cpp index 3e808e7..31047cf 100644 --- a/core/pim/todo/todoview.cpp +++ b/core/pim/todo/todoview.cpp @@ -66 +66,4 @@ void TodoView::complete( const OTodo& ev ) { } +void TodoView::removeQuery( int uid ) { + m_main->slotDelete( uid ); +} diff --git a/core/pim/todo/todoview.h b/core/pim/todo/todoview.h index e73e808..e5ed66f 100644 --- a/core/pim/todo/todoview.h +++ b/core/pim/todo/todoview.h @@ -55,2 +55,12 @@ namespace Todo { + /** + * the next record in the view or 0 if none is there + */ + virtual int next() = 0; + + /** + * the previous record or 0 if none is there.. + */ + virtual int prev() = 0; + /* @@ -113,2 +123,4 @@ namespace Todo { void remove( int uid ); + /* will ask the user if the item should be deleted */ + void removeQuery(int uid ); void complete( int uid ); |