summaryrefslogtreecommitdiff
path: root/core/applets/obex/obeximpl.cc
Side-by-side diff
Diffstat (limited to 'core/applets/obex/obeximpl.cc') (more/less context) (show whitespace changes)
-rw-r--r--core/applets/obex/obeximpl.cc50
1 files changed, 50 insertions, 0 deletions
diff --git a/core/applets/obex/obeximpl.cc b/core/applets/obex/obeximpl.cc
new file mode 100644
index 0000000..a3004ab
--- a/dev/null
+++ b/core/applets/obex/obeximpl.cc
@@ -0,0 +1,50 @@
+
+
+#include "obex.h"
+#include "obeximpl.h"
+
+using namespace OpieObex;
+
+ObexImpl::ObexImpl( )
+ : QObject {
+ // register to a channel
+ m_obex = new Obex(this, "obex");
+ m_chan = new QCopChannel("QPE/Obex" );
+ cconnect(m_chan, SIGNAL(received(const QCString&, const QByteArray& ) ),
+ this, SLOT(slotMessage(const QCString&, const QByteArray&) ) );
+}
+ObexImpl::~ObexImpl() {
+ delete m_obex;
+ delete m_chan;
+}
+QRESULT ObexImpl::queryInterface( const QUuid &uuid, QUnknownInterface **iface ) {
+ *iface = 0;
+ if( uuid == IID_QUknown )
+ *iface = this;
+ else if( uuid == IID_ObexInterface )
+ *iface = this;
+
+ if(*iface )
+ (*iface)->addRef();
+ return QS_OK;
+
+}
+void ObexImpl::slotMessage( const QCString& msg, const QByteArray&data ) {
+ QDataStrean stream( data, IO_ReadOnly );
+ if(msg == "send(QString,QString,QString)" ) {
+ QString desc;
+ stream >> desc;
+ QString filename;
+ stream >> filename;
+ m_obex->send(filename );
+ QCopEnvelope e ("QPE/Obex", "done(QString)" ):
+ e << filename;
+ }else if( ) {
+
+ }
+}
+
+Q_EXPORT_INTERFACE()
+{
+ Q_CREATE_INSTANCE( IrdaAppletImpl )
+}