summaryrefslogtreecommitdiff
authortille <tille>2003-05-10 17:58:10 (UTC)
committer tille <tille>2003-05-10 17:58:10 (UTC)
commitb7d34545193f39c146ab56b1127863279a3121ce (patch) (unidiff)
treebd0d550af05c14689c5b527da0c5e8ae0e11ce7a
parent797a10cb009d58366d8eb3e792e350f87be4d100 (diff)
downloadopie-b7d34545193f39c146ab56b1127863279a3121ce.zip
opie-b7d34545193f39c146ab56b1127863279a3121ce.tar.gz
opie-b7d34545193f39c146ab56b1127863279a3121ce.tar.bz2
and doclnk search
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/osearch/doclnkitem.cpp54
-rw-r--r--core/pim/osearch/doclnkitem.h37
-rw-r--r--core/pim/osearch/doclnksearch.cpp46
-rw-r--r--core/pim/osearch/doclnksearch.h35
-rw-r--r--core/pim/osearch/mainwindow.cpp3
-rw-r--r--core/pim/osearch/mainwindow.h2
-rw-r--r--core/pim/osearch/osearch.pro8
7 files changed, 183 insertions, 2 deletions
diff --git a/core/pim/osearch/doclnkitem.cpp b/core/pim/osearch/doclnkitem.cpp
new file mode 100644
index 0000000..fd19727
--- a/dev/null
+++ b/core/pim/osearch/doclnkitem.cpp
@@ -0,0 +1,54 @@
1//
2//
3// C++ Implementation: $MODULE$
4//
5// Description:
6//
7//
8// Author: Patrick S. Vogt <tille@handhelds.org>, (C) 2003
9//
10// Copyright: See COPYING file that comes with this distribution
11//
12//
13#include "doclnkitem.h"
14
15#include <qpe/applnk.h>
16
17DocLnkItem::DocLnkItem(OListViewItem* parent, DocLnk *app)
18 : ResultItem(parent)
19{
20 _doc = app;
21 setText(0, _doc->name() );
22}
23
24
25DocLnkItem::~DocLnkItem()
26{
27}
28
29
30QString DocLnkItem::toRichText()
31{
32 QString text;
33 text += "<b><h3>";
34 text += _doc->name();
35 text += "</b></h3><br>";
36 text += _doc->comment();
37 text += "<br><br>`";
38 text += _doc->exec();
39 text += "`";
40 return text;
41}
42
43void DocLnkItem::editItem()
44{
45 _doc->execute();
46}
47
48void DocLnkItem::showItem()
49{
50 /* QCopEnvelope e("QPE/Application/addressbook", "edit(int)");
51 e << _contact->uid();*/
52 ResultItem::showItem();
53}
54
diff --git a/core/pim/osearch/doclnkitem.h b/core/pim/osearch/doclnkitem.h
new file mode 100644
index 0000000..2718733
--- a/dev/null
+++ b/core/pim/osearch/doclnkitem.h
@@ -0,0 +1,37 @@
1//
2//
3// C++ Interface: $MODULE$
4//
5// Description:
6//
7//
8// Author: Patrick S. Vogt <tille@handhelds.org>, (C) 2003
9//
10// Copyright: See COPYING file that comes with this distribution
11//
12//
13#ifndef DOCLNKITEM_H
14#define DOCLNKITEM_H
15
16#include "resultitem.h"
17
18class DocLnk;
19
20/**
21@author Patrick S. Vogt
22*/
23class DocLnkItem : public ResultItem
24{
25public:
26 DocLnkItem(OListViewItem* parent, DocLnk *app);
27 ~DocLnkItem();
28
29 virtual QString toRichText();
30 virtual void editItem();
31 virtual void showItem();
32
33private:
34 DocLnk *_doc;
35};
36
37#endif
diff --git a/core/pim/osearch/doclnksearch.cpp b/core/pim/osearch/doclnksearch.cpp
new file mode 100644
index 0000000..e99a385
--- a/dev/null
+++ b/core/pim/osearch/doclnksearch.cpp
@@ -0,0 +1,46 @@
1//
2//
3// C++ Implementation: $MODULE$
4//
5// Description:
6//
7//
8// Author: Patrick S. Vogt <tille@handhelds.org>, (C) 2003
9//
10// Copyright: See COPYING file that comes with this distribution
11//
12//
13#include "doclnksearch.h"
14
15#include <qpe/applnk.h>
16#include <qpe/qpeapplication.h>
17
18#include "doclnkitem.h"
19
20DocLnkSearch::DocLnkSearch(QListView* parent, QString name): SearchGroup(parent, name)
21{
22 _docs = 0;
23}
24
25
26DocLnkSearch::~DocLnkSearch()
27{
28 delete _docs;
29}
30
31
32void DocLnkSearch::expand()
33{
34 SearchGroup::expand();
35 if (_search.isEmpty()) return;
36 if (!_docs) _docs = new DocLnkSet(QPEApplication::documentDir());
37 QList<DocLnk> appList = _docs->children();
38 for ( DocLnk *app = appList.first(); app != 0; app = appList.next() ){
39 // if (app->name().contains(_search) || app->comment().contains(_search))
40 if ( (_search.match( app->name() ) != -1)
41 || (_search.match(app->comment()) != -1)
42 || (_search.match(app->exec()) != -1) )
43 new DocLnkItem( this, app );
44 }
45}
46
diff --git a/core/pim/osearch/doclnksearch.h b/core/pim/osearch/doclnksearch.h
new file mode 100644
index 0000000..ec740de
--- a/dev/null
+++ b/core/pim/osearch/doclnksearch.h
@@ -0,0 +1,35 @@
1//
2//
3// C++ Interface: $MODULE$
4//
5// Description:
6//
7//
8// Author: Patrick S. Vogt <tille@handhelds.org>, (C) 2003
9//
10// Copyright: See COPYING file that comes with this distribution
11//
12//
13#ifndef DOCLNKSEARCH_H
14#define DOCLNKSEARCH_H
15
16#include "searchgroup.h"
17
18class DocLnkSet;
19
20/**
21@author Patrick S. Vogt
22*/
23class DocLnkSearch : public SearchGroup
24{
25public:
26 DocLnkSearch(QListView* parent, QString name);
27
28 ~DocLnkSearch();
29
30 virtual void expand();
31private:
32 DocLnkSet *_docs;
33};
34
35#endif
diff --git a/core/pim/osearch/mainwindow.cpp b/core/pim/osearch/mainwindow.cpp
index 41ce5b6..140d7bb 100644
--- a/core/pim/osearch/mainwindow.cpp
+++ b/core/pim/osearch/mainwindow.cpp
@@ -28,24 +28,25 @@
28#include <qpushbutton.h> 28#include <qpushbutton.h>
29#include <qlayout.h> 29#include <qlayout.h>
30#include <qlineedit.h> 30#include <qlineedit.h>
31#include <qtextbrowser.h> 31#include <qtextbrowser.h>
32 32
33#include "olistview.h" 33#include "olistview.h"
34#include "olistviewitem.h" 34#include "olistviewitem.h"
35#include "resultitem.h" 35#include "resultitem.h"
36#include "adresssearch.h" 36#include "adresssearch.h"
37#include "todosearch.h" 37#include "todosearch.h"
38#include "datebooksearch.h" 38#include "datebooksearch.h"
39#include "applnksearch.h" 39#include "applnksearch.h"
40#include "doclnksearch.h"
40 41
41MainWindow::MainWindow( QWidget *parent, const char *name, WFlags f ) : 42MainWindow::MainWindow( QWidget *parent, const char *name, WFlags f ) :
42 QMainWindow( parent, name, f ), _currentItem(0) 43 QMainWindow( parent, name, f ), _currentItem(0)
43{ 44{
44 setCaption( tr("OSearch") ); 45 setCaption( tr("OSearch") );
45 46
46 setSizePolicy( QSizePolicy( QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding)); 47 setSizePolicy( QSizePolicy( QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding));
47 48
48 QFrame *mainFrame = new QFrame( this, "mainFrame" ); 49 QFrame *mainFrame = new QFrame( this, "mainFrame" );
49 50
50 mainLayout = new QVBoxLayout( mainFrame ); 51 mainLayout = new QVBoxLayout( mainFrame );
51 mainLayout->setSpacing( 0 ); 52 mainLayout->setSpacing( 0 );
@@ -69,24 +70,25 @@ MainWindow::MainWindow( QWidget *parent, const char *name, WFlags f ) :
69 buttonEdit->setText( tr("edit") ); 70 buttonEdit->setText( tr("edit") );
70 // buttonEdit->setSizePolicy( QSizePolicy( QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding)); 71 // buttonEdit->setSizePolicy( QSizePolicy( QSizePolicy::MinimumExpanding, QSizePolicy::MinimumExpanding));
71 buttonLayout->addWidget( buttonShow, 0 ); 72 buttonLayout->addWidget( buttonShow, 0 );
72 buttonLayout->addWidget( buttonEdit, 0 ); 73 buttonLayout->addWidget( buttonEdit, 0 );
73 74
74 mainLayout->addWidget( detailsFrame, 0 ); 75 mainLayout->addWidget( detailsFrame, 0 );
75 detailsFrame->hide(); 76 detailsFrame->hide();
76 77
77 adrSearch = new AdressSearch( resultsList, tr("adressbook") ); 78 adrSearch = new AdressSearch( resultsList, tr("adressbook") );
78 todoSearch = new TodoSearch( resultsList, tr("todo") ); 79 todoSearch = new TodoSearch( resultsList, tr("todo") );
79 datebookSearch = new DatebookSearch( resultsList, tr("datebook") ); 80 datebookSearch = new DatebookSearch( resultsList, tr("datebook") );
80 applnkSearch = new AppLnkSearch( resultsList, tr("applications") ); 81 applnkSearch = new AppLnkSearch( resultsList, tr("applications") );
82 doclnkSearch = new DocLnkSearch( resultsList, tr("documents") );
81 83
82 makeMenu(); 84 makeMenu();
83 setCentralWidget( mainFrame ); 85 setCentralWidget( mainFrame );
84 86
85 popupTimer = new QTimer(); 87 popupTimer = new QTimer();
86 88
87 connect(popupTimer, SIGNAL(timeout()), SLOT(showPopup())); 89 connect(popupTimer, SIGNAL(timeout()), SLOT(showPopup()));
88 connect(resultsList, SIGNAL(pressed(QListViewItem*)), SLOT(setCurrent(QListViewItem*))); 90 connect(resultsList, SIGNAL(pressed(QListViewItem*)), SLOT(setCurrent(QListViewItem*)));
89 connect(resultsList, SIGNAL(clicked(QListViewItem*)), SLOT(stopTimer(QListViewItem*))); 91 connect(resultsList, SIGNAL(clicked(QListViewItem*)), SLOT(stopTimer(QListViewItem*)));
90 connect(buttonShow, SIGNAL(clicked()), SLOT( showItem() ) ); 92 connect(buttonShow, SIGNAL(clicked()), SLOT( showItem() ) );
91 connect(buttonEdit, SIGNAL(clicked()), SLOT( editItem() ) ); 93 connect(buttonEdit, SIGNAL(clicked()), SLOT( editItem() ) );
92 94
@@ -148,24 +150,25 @@ void MainWindow::stopTimer(QListViewItem*)
148void MainWindow::showPopup() 150void MainWindow::showPopup()
149{ 151{
150 qDebug("showPopup"); 152 qDebug("showPopup");
151 if (!_item) return; 153 if (!_item) return;
152} 154}
153 155
154void MainWindow::setSearch( const QString &key ) 156void MainWindow::setSearch( const QString &key )
155{ 157{
156 adrSearch->setSearch(key); 158 adrSearch->setSearch(key);
157 todoSearch->setSearch(key); 159 todoSearch->setSearch(key);
158 datebookSearch->setSearch(key); 160 datebookSearch->setSearch(key);
159 applnkSearch->setSearch(key); 161 applnkSearch->setSearch(key);
162 doclnkSearch->setSearch(key);
160} 163}
161 164
162 165
163void MainWindow::showItem() 166void MainWindow::showItem()
164{ 167{
165 if (_currentItem->rtti() == OListViewItem::Result){ 168 if (_currentItem->rtti() == OListViewItem::Result){
166 ResultItem *res = (ResultItem*)_currentItem; 169 ResultItem *res = (ResultItem*)_currentItem;
167 // ResultItem *res = dynamic_cast<ResultItem*>(item); 170 // ResultItem *res = dynamic_cast<ResultItem*>(item);
168 res->showItem(); 171 res->showItem();
169 } 172 }
170} 173}
171 174
diff --git a/core/pim/osearch/mainwindow.h b/core/pim/osearch/mainwindow.h
index f79504c..424b4ba 100644
--- a/core/pim/osearch/mainwindow.h
+++ b/core/pim/osearch/mainwindow.h
@@ -20,24 +20,25 @@
20 20
21class QPEToolBar; 21class QPEToolBar;
22class QVBoxLayout; 22class QVBoxLayout;
23class QTextView; 23class QTextView;
24class QFrame; 24class QFrame;
25class QListViewItem; 25class QListViewItem;
26class OListView; 26class OListView;
27class OListViewItem; 27class OListViewItem;
28class AdressSearch; 28class AdressSearch;
29class TodoSearch; 29class TodoSearch;
30class DatebookSearch; 30class DatebookSearch;
31class AppLnkSearch; 31class AppLnkSearch;
32class DocLnkSearch;
32 33
33class MainWindow : public QMainWindow 34class MainWindow : public QMainWindow
34{ 35{
35 Q_OBJECT 36 Q_OBJECT
36 37
37 38
38public: 39public:
39 MainWindow( QWidget *parent = 0, const char *name = 0, WFlags f = 0 ); 40 MainWindow( QWidget *parent = 0, const char *name = 0, WFlags f = 0 );
40 ~MainWindow(); 41 ~MainWindow();
41 42
42 43
43public slots: 44public slots:
@@ -54,18 +55,19 @@ private:
54 OListView *resultsList; 55 OListView *resultsList;
55 QTextView *richEdit; 56 QTextView *richEdit;
56 OListViewItem *_currentItem; 57 OListViewItem *_currentItem;
57 QVBoxLayout *mainLayout; 58 QVBoxLayout *mainLayout;
58 QFrame *detailsFrame; 59 QFrame *detailsFrame;
59 OListViewItem *_item; 60 OListViewItem *_item;
60 QTimer *popupTimer; 61 QTimer *popupTimer;
61 62
62 AdressSearch *adrSearch; 63 AdressSearch *adrSearch;
63 TodoSearch *todoSearch; 64 TodoSearch *todoSearch;
64 DatebookSearch *datebookSearch; 65 DatebookSearch *datebookSearch;
65 AppLnkSearch *applnkSearch; 66 AppLnkSearch *applnkSearch;
67 DocLnkSearch *doclnkSearch;
66 68
67 void makeMenu(); 69 void makeMenu();
68}; 70};
69 71
70#endif 72#endif
71 73
diff --git a/core/pim/osearch/osearch.pro b/core/pim/osearch/osearch.pro
index 75e90f2..f28b01e 100644
--- a/core/pim/osearch/osearch.pro
+++ b/core/pim/osearch/osearch.pro
@@ -11,26 +11,30 @@ SOURCES += main.cpp \
11 mainwindow.cpp \ 11 mainwindow.cpp \
12 olistview.cpp \ 12 olistview.cpp \
13 olistviewitem.cpp \ 13 olistviewitem.cpp \
14 adresssearch.cpp \ 14 adresssearch.cpp \
15 todosearch.cpp \ 15 todosearch.cpp \
16 datebooksearch.cpp \ 16 datebooksearch.cpp \
17 searchgroup.cpp \ 17 searchgroup.cpp \
18 resultitem.cpp \ 18 resultitem.cpp \
19 todoitem.cpp \ 19 todoitem.cpp \
20 contactitem.cpp \ 20 contactitem.cpp \
21 eventitem.cpp \ 21 eventitem.cpp \
22 applnksearch.cpp \ 22 applnksearch.cpp \
23 applnkitem.cpp 23 applnkitem.cpp \
24 doclnkitem.cpp \
25 doclnksearch.cpp
24HEADERS += mainwindow.h \ 26HEADERS += mainwindow.h \
25 olistview.h \ 27 olistview.h \
26 olistviewitem.h \ 28 olistviewitem.h \
27 adresssearch.h \ 29 adresssearch.h \
28 todosearch.h \ 30 todosearch.h \
29 datebooksearch.h \ 31 datebooksearch.h \
30 searchgroup.h \ 32 searchgroup.h \
31 resultitem.h \ 33 resultitem.h \
32 todoitem.h \ 34 todoitem.h \
33 contactitem.h \ 35 contactitem.h \
34 eventitem.h \ 36 eventitem.h \
35 applnksearch.h \ 37 applnksearch.h \
36 applnkitem.h 38 applnkitem.h \
39 doclnkitem.h \
40 doclnksearch.h