author | tille <tille> | 2003-05-15 13:55:07 (UTC) |
---|---|---|
committer | tille <tille> | 2003-05-15 13:55:07 (UTC) |
commit | 80e9fd1b08a3a7173ecf443b2830df4ca6e83ce6 (patch) (side-by-side diff) | |
tree | 4245ef4caf67784b452b908a9528ae03f988bf4c /core/pim/osearch/todosearch.cpp | |
parent | ded2a7a5715af1d1f6aab0b79ba90d8a815a9adc (diff) | |
download | opie-80e9fd1b08a3a7173ecf443b2830df4ca6e83ce6.zip opie-80e9fd1b08a3a7173ecf443b2830df4ca6e83ce6.tar.gz opie-80e9fd1b08a3a7173ecf443b2830df4ca6e83ce6.tar.bz2 |
owait and settings for search group:
- hide completed todos
- show only later events
- do not display hits in datebook dated
Diffstat (limited to 'core/pim/osearch/todosearch.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | core/pim/osearch/todosearch.cpp | 37 |
1 files changed, 31 insertions, 6 deletions
diff --git a/core/pim/osearch/todosearch.cpp b/core/pim/osearch/todosearch.cpp index c9fa61a..08bbe93 100644 --- a/core/pim/osearch/todosearch.cpp +++ b/core/pim/osearch/todosearch.cpp @@ -5,51 +5,76 @@ // Description: // // // Author: Patrick S. Vogt <tille@handhelds.org>, (C) 2003 // // Copyright: See COPYING file that comes with this distribution // // #include "todosearch.h" #include <opie/otodoaccess.h> #include <opie/otodo.h> -#include <qiconset.h> #include <qpe/resource.h> +#include <qpe/config.h> +#include <qiconset.h> +#include <qaction.h> +#include <qpopupmenu.h> #include "todoitem.h" TodoSearch::TodoSearch(QListView* parent, QString name) -: SearchGroup(parent, name) +: SearchGroup(parent, name), _todos(0), _popupMenu(0) { - _todos = 0; // AppLnkSet als(QPEApplication::qpeDir()); // setPixmap( 0, als.findExec("todolist")->pixmap() ); QIconSet is = Resource::loadIconSet( "todo/TodoList" ); setPixmap( 0, is.pixmap( QIconSet::Small, true ) ); + actionShowCompleted = new QAction( QObject::tr("show completed tasks"),QString::null, 0, 0, 0, true ); + Config cfg( "osearch", Config::User ); + cfg.setGroup( "todo_settings" ); + actionShowCompleted->setOn( cfg.readBoolEntry( "show_completed_tasks", false ) ); + } TodoSearch::~TodoSearch() { + Config cfg( "osearch", Config::User ); + cfg.setGroup( "todo_settings" ); + cfg.writeEntry( "show_completed_tasks", actionShowCompleted->isOn() ); + delete _popupMenu; + delete actionShowCompleted; delete _todos; } void TodoSearch::load() { _todos = new OTodoAccess(); _todos->load(); } int TodoSearch::search() { ORecordList<OTodo> results = _todos->matchRegexp(_search); for (uint i = 0; i < results.count(); i++) - new TodoItem( this, new OTodo( results[i] )); - return results.count(); + insertItem( new OTodo( results[i] )); + return _resultCount; } -void TodoSearch::insertItem( void* ) +void TodoSearch::insertItem( void *rec ) { + OTodo *todo = (OTodo*)rec; + if (!actionShowCompleted->isOn() && + todo->isCompleted() ) return; + new TodoItem( this, todo ); + _resultCount++; +} +QPopupMenu* TodoSearch::popupMenu() +{ + if (!_popupMenu){ + _popupMenu = new QPopupMenu( 0 ); + actionShowCompleted->addTo( _popupMenu ); + } + return _popupMenu; } |