From bb282009a5d37c77c9239d0e78950290f026d7a8 Mon Sep 17 00:00:00 2001 From: tille Date: Sat, 10 May 2003 16:51:45 +0000 Subject: applnk search --- diff --git a/core/pim/osearch/applnkitem.cpp b/core/pim/osearch/applnkitem.cpp new file mode 100644 index 0000000..f45ed68 --- a/dev/null +++ b/core/pim/osearch/applnkitem.cpp @@ -0,0 +1,54 @@ +// +// +// C++ Implementation: $MODULE$ +// +// Description: +// +// +// Author: Patrick S. Vogt , (C) 2003 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "applnkitem.h" + +#include + +AppLnkItem::AppLnkItem(OListViewItem* parent, AppLnk *app) + : ResultItem(parent) +{ + _app = app; + setText(0, _app->name() ); +} + + +AppLnkItem::~AppLnkItem() +{ +} + + +QString AppLnkItem::toRichText() +{ + QString text; + text += "

"; + text += _app->name(); + text += "


"; + text += _app->comment(); + text += "

`"; + text += _app->exec(); + text += "`"; + return text; +} + +void AppLnkItem::editItem() +{ + _app->execute(); +} + +void AppLnkItem::showItem() +{ +/* QCopEnvelope e("QPE/Application/addressbook", "edit(int)"); + e << _contact->uid();*/ + ResultItem::showItem(); +} + diff --git a/core/pim/osearch/applnkitem.h b/core/pim/osearch/applnkitem.h new file mode 100644 index 0000000..b28631a --- a/dev/null +++ b/core/pim/osearch/applnkitem.h @@ -0,0 +1,37 @@ +// +// +// C++ Interface: $MODULE$ +// +// Description: +// +// +// Author: Patrick S. Vogt , (C) 2003 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef APPLNKITEM_H +#define APPLNKITEM_H + +#include "resultitem.h" + +class AppLnk; + +/** +@author Patrick S. Vogt +*/ +class AppLnkItem : public ResultItem +{ +public: + AppLnkItem(OListViewItem* parent, AppLnk *app); + ~AppLnkItem(); + + virtual QString toRichText(); + virtual void editItem(); + virtual void showItem(); + +private: + AppLnk *_app; +}; + +#endif diff --git a/core/pim/osearch/applnksearch.cpp b/core/pim/osearch/applnksearch.cpp new file mode 100644 index 0000000..7872ae3 --- a/dev/null +++ b/core/pim/osearch/applnksearch.cpp @@ -0,0 +1,46 @@ +// +// +// C++ Implementation: $MODULE$ +// +// Description: +// +// +// Author: Patrick S. Vogt , (C) 2003 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#include "applnksearch.h" + +#include +#include + +#include "applnkitem.h" + +AppLnkSearch::AppLnkSearch(QListView* parent, QString name): SearchGroup(parent, name) +{ + _apps = 0; +} + + +AppLnkSearch::~AppLnkSearch() +{ + delete _apps; +} + + +void AppLnkSearch::expand() +{ + SearchGroup::expand(); + if (_search.isEmpty()) return; + if (!_apps) _apps = new AppLnkSet(QPEApplication::qpeDir()); + QList appList = _apps->children(); + for ( AppLnk *app = appList.first(); app != 0; app = appList.next() ){ +// if (app->name().contains(_search) || app->comment().contains(_search)) + if ( (_search.match( app->name() ) != -1) + || (_search.match(app->comment()) != -1) + || (_search.match(app->exec()) != -1) ) + new AppLnkItem( this, app ); + } +} + diff --git a/core/pim/osearch/applnksearch.h b/core/pim/osearch/applnksearch.h new file mode 100644 index 0000000..e283cd3 --- a/dev/null +++ b/core/pim/osearch/applnksearch.h @@ -0,0 +1,35 @@ +// +// +// C++ Interface: $MODULE$ +// +// Description: +// +// +// Author: Patrick S. Vogt , (C) 2003 +// +// Copyright: See COPYING file that comes with this distribution +// +// +#ifndef APPLNKSEARCH_H +#define APPLNKSEARCH_H + +#include "searchgroup.h" + +class AppLnkSet; + +/** +@author Patrick S. Vogt +*/ +class AppLnkSearch : public SearchGroup +{ +public: + AppLnkSearch(QListView* parent, QString name); + + ~AppLnkSearch(); + + virtual void expand(); +private: + AppLnkSet *_apps; +}; + +#endif diff --git a/core/pim/osearch/mainwindow.cpp b/core/pim/osearch/mainwindow.cpp index 3dba3a9..41ce5b6 100644 --- a/core/pim/osearch/mainwindow.cpp +++ b/core/pim/osearch/mainwindow.cpp @@ -36,7 +36,7 @@ #include "adresssearch.h" #include "todosearch.h" #include "datebooksearch.h" - +#include "applnksearch.h" MainWindow::MainWindow( QWidget *parent, const char *name, WFlags f ) : QMainWindow( parent, name, f ), _currentItem(0) @@ -77,6 +77,7 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags f ) : adrSearch = new AdressSearch( resultsList, tr("adressbook") ); todoSearch = new TodoSearch( resultsList, tr("todo") ); datebookSearch = new DatebookSearch( resultsList, tr("datebook") ); + applnkSearch = new AppLnkSearch( resultsList, tr("applications") ); makeMenu(); setCentralWidget( mainFrame ); @@ -155,6 +156,7 @@ void MainWindow::setSearch( const QString &key ) adrSearch->setSearch(key); todoSearch->setSearch(key); datebookSearch->setSearch(key); + applnkSearch->setSearch(key); } diff --git a/core/pim/osearch/mainwindow.h b/core/pim/osearch/mainwindow.h index f7e8f8e..f79504c 100644 --- a/core/pim/osearch/mainwindow.h +++ b/core/pim/osearch/mainwindow.h @@ -28,6 +28,7 @@ class OListViewItem; class AdressSearch; class TodoSearch; class DatebookSearch; +class AppLnkSearch; class MainWindow : public QMainWindow { @@ -61,6 +62,7 @@ private: AdressSearch *adrSearch; TodoSearch *todoSearch; DatebookSearch *datebookSearch; + AppLnkSearch *applnkSearch; void makeMenu(); }; diff --git a/core/pim/osearch/osearch.pro b/core/pim/osearch/osearch.pro index 397bc83..75e90f2 100644 --- a/core/pim/osearch/osearch.pro +++ b/core/pim/osearch/osearch.pro @@ -18,7 +18,9 @@ SOURCES += main.cpp \ resultitem.cpp \ todoitem.cpp \ contactitem.cpp \ - eventitem.cpp + eventitem.cpp \ + applnksearch.cpp \ + applnkitem.cpp HEADERS += mainwindow.h \ olistview.h \ olistviewitem.h \ @@ -29,4 +31,6 @@ HEADERS += mainwindow.h \ resultitem.h \ todoitem.h \ contactitem.h \ - eventitem.h + eventitem.h \ + applnksearch.h \ + applnkitem.h -- cgit v0.9.0.2