summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--core/pim/osearch/applnkitem.cpp11
-rw-r--r--core/pim/osearch/doclnkitem.cpp11
2 files changed, 22 insertions, 0 deletions
diff --git a/core/pim/osearch/applnkitem.cpp b/core/pim/osearch/applnkitem.cpp
index 2152da4..1e7b1fb 100644
--- a/core/pim/osearch/applnkitem.cpp
+++ b/core/pim/osearch/applnkitem.cpp
@@ -10,12 +10,14 @@
// Copyright: See COPYING file that comes with this distribution
//
//
#include "applnkitem.h"
#include <qpe/applnk.h>
+#include <qfileinfo.h>
+#include <qpe/qcopenvelope_qws.h>
AppLnkItem::AppLnkItem(OListViewItem* parent, AppLnk *app)
: ResultItem(parent)
{
_app = app;
setText(0, _app->name() );
@@ -37,14 +39,23 @@ QString AppLnkItem::toRichText()
}
void AppLnkItem::action( int act )
{
if (!_app->isValid()) qDebug("INVALID");
if (act == 0) _app->execute();
+ else if (act == 1){
+ QFileInfo file( _app->file() );
+ qDebug("opening %s in filemanager", file.dirPath().latin1());
+ QCopEnvelope e("QPE/Application/advancedfm", "setDocument(QString)");
+ e << file.dirPath();
+// QCopEnvelope e("QPE/Application/advancedfm", "setDocument(QString)");
+ // e << _app->file();
+ }
}
QIntDict<QString> AppLnkItem::actions()
{
QIntDict<QString> result;
result.insert( 0, new QString( QObject::tr("execute") ) );
+ result.insert( 1, new QString( QObject::tr("open in filemanager") ) );
return result;
}
diff --git a/core/pim/osearch/doclnkitem.cpp b/core/pim/osearch/doclnkitem.cpp
index 75dee58..04d08ca 100644
--- a/core/pim/osearch/doclnkitem.cpp
+++ b/core/pim/osearch/doclnkitem.cpp
@@ -12,12 +12,14 @@
//
#include "doclnkitem.h"
#include <qpe/applnk.h>
#include <qfile.h>
#include <qtextstream.h>
+#include <qfileinfo.h>
+#include <qpe/qcopenvelope_qws.h>
DocLnkItem::DocLnkItem(OListViewItem* parent, DocLnk *app)
: ResultItem(parent)
{
_doc = app;
setText(0, _doc->name() );
@@ -57,14 +59,23 @@ QString DocLnkItem::toRichText()
void DocLnkItem::action( int act )
{
qDebug("action %i",act);
if (!_doc->isValid()) qDebug("INVALID");
if (act == 0) _doc->execute();
+ else if (act == 1){
+ QFileInfo file( _doc->file() );
+ qDebug("opening %s in filemanager", file.dirPath().latin1());
+ QCopEnvelope e("QPE/Application/advancedfm", "setDocument(QString)");
+ e << file.dirPath();
+// QCopEnvelope e("QPE/Application/advancedfm", "setDocument(QString)");
+ // e << _doc->file();
+ }
}
QIntDict<QString> DocLnkItem::actions()
{
QIntDict<QString> result;
result.insert( 0, new QString( QObject::tr("open with ") + _doc->exec() ) );
+ result.insert( 1, new QString( QObject::tr("open in filemanager") ) );
return result;
}