author | zecke <zecke> | 2002-10-07 14:39:07 (UTC) |
---|---|---|
committer | zecke <zecke> | 2002-10-07 14:39:07 (UTC) |
commit | a7b03f9c31f515747663f07b6665744369e57ba8 (patch) (side-by-side diff) | |
tree | 3799a9001d60eac5d8212596c6ce012082d42cf6 /core/pim/todo/mainwindow.cpp | |
parent | add436706a938a71a487db019dcd6ff236207bfc (diff) | |
download | opie-a7b03f9c31f515747663f07b6665744369e57ba8.zip opie-a7b03f9c31f515747663f07b6665744369e57ba8.tar.gz opie-a7b03f9c31f515747663f07b6665744369e57ba8.tar.bz2 |
TodoView is a mess because I tried hard to make
it work with templates... I've to clean this up
Then I made the way free to use sorted
my next step is to make the paint hack work
Diffstat (limited to 'core/pim/todo/mainwindow.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/pim/todo/mainwindow.cpp | 32 |
1 files changed, 24 insertions, 8 deletions
diff --git a/core/pim/todo/mainwindow.cpp b/core/pim/todo/mainwindow.cpp index a8f4c9c..47c0160 100644 --- a/core/pim/todo/mainwindow.cpp +++ b/core/pim/todo/mainwindow.cpp @@ -216,26 +216,24 @@ void MainWindow::initUI() { connect(m_catMenu, SIGNAL(activated(int) ), this, SLOT(setCategory(int) ) ); connect(m_template, SIGNAL(activated(int) ), this, SLOT(slotNewFromTemplate(int) ) ); } void MainWindow::initViews() { TableView* tableView = new TableView( this, this ); m_stack->addWidget( tableView, m_counter++ ); m_views.append( tableView ); m_curView = tableView; connectBase( tableView ); -// tableView->setTodos( begin(), end() ); we call populateCategories - /* add QString type + QString configname to * the View menu * and subdirs for multiple views */ } void MainWindow::initEditor() { m_curEdit = new Editor(); } void MainWindow::initShow() { m_curShow = new TextViewShow(this); m_stack->addWidget( m_curShow->widget() , m_counter++ ); } @@ -267,48 +265,66 @@ QPopupMenu* MainWindow::options() { qWarning("Options"); return m_options; } QPopupMenu* MainWindow::edit() { return m_edit; } QPopupMenu* MainWindow::view() { return m_view; } QToolBar* MainWindow::toolbar() { return m_tool; } -OTodoAccess::List::Iterator MainWindow::begin() { - return m_todoMgr.begin(); +OTodoAccess::List MainWindow::list()const { + return m_todoMgr.list(); +} +OTodoAccess::List MainWindow::sorted( bool asc, int sortOrder ) { + int cat = 0; + if ( m_curCat == tr("All Categories") ) + cat = currentCatId(); + + int filter = 1; + + if (!m_completed ) + filter |= 4; + if (m_overdue) + filter |= 2; + + return m_todoMgr.sorted( asc, sortOrder, filter, cat ); } -OTodoAccess::List::Iterator MainWindow::end() { - return m_todoMgr.end(); +OTodoAccess::List MainWindow::sorted( bool asc, int sortOrder, int addFilter) { + int cat = 0; + if ( m_curCat == tr("All Categories") ) + cat = currentCatId(); + + return m_todoMgr.sorted(asc, sortOrder, addFilter, cat ); } OTodo MainWindow::event( int uid ) { return m_todoMgr.event( uid ); } bool MainWindow::isSyncing()const { return m_syncing; } TemplateManager* MainWindow::templateManager() { return m_tempManager; } Editor* MainWindow::currentEditor() { return m_curEdit; } TodoShow* MainWindow::currentShow() { return m_curShow; } void MainWindow::slotReload() { m_todoMgr.reload(); - currentView()->setTodos( begin(), end() ); + currentView()->updateView( ); raiseCurrentView(); } void MainWindow::closeEvent( QCloseEvent* e ) { if (m_stack->visibleWidget() == currentShow()->widget() ) { raiseCurrentView(); e->ignore(); return; } /* * we should have flushed and now we're still saving * so there is no need to flush */ @@ -457,25 +473,25 @@ void MainWindow::slotDeleteAll() { } void MainWindow::slotDeleteCompleted() { if(m_syncing) { QMessageBox::warning(this, tr("Todo"), tr("Can not edit data, currently syncing")); return; } if ( !QPEMessageBox::confirmDelete( this, tr( "Todo" ), tr("all completed tasks?") ) ) return; m_todoMgr.remove( currentView()->completed() ); - currentView()->setTodos( begin(), end() ); + currentView()->updateView( ); } void MainWindow::slotFind() { } void MainWindow::slotEdit() { slotEdit( currentView()->current() ); } /* * set the category */ void MainWindow::setCategory( int c) { if ( c <= 0 ) return; |