summaryrefslogtreecommitdiff
path: root/core/applets/obex/obeximpl.cc
Unidiff
Diffstat (limited to 'core/applets/obex/obeximpl.cc') (more/less context) (show whitespace changes)
-rw-r--r--core/applets/obex/obeximpl.cc150
1 files changed, 0 insertions, 150 deletions
diff --git a/core/applets/obex/obeximpl.cc b/core/applets/obex/obeximpl.cc
deleted file mode 100644
index 88f2d44..0000000
--- a/core/applets/obex/obeximpl.cc
+++ b/dev/null
@@ -1,150 +0,0 @@
1
2#include <qdatastream.h>
3#include <qmessagebox.h>
4
5
6#include <qpe/qcom.h>
7#include <qpe/applnk.h>
8
9#include <qlabel.h>
10
11#include "obex.h"
12#include "obeximpl.h"
13
14
15
16using namespace OpieObex;
17
18ObexImpl::ObexImpl( )
19 : QObject() {
20 // register to a channel
21 qWarning( "c'tor" );
22 m_obex = new Obex(this, "obex");
23 m_sendgui = new ObexDlg();
24 m_recvgui = new ObexInc();
25 m_chan = new QCopChannel("QPE/Obex" );
26 connect(m_chan, SIGNAL(received(const QCString&, const QByteArray& ) ),
27 this, SLOT(slotMessage(const QCString&, const QByteArray&) ) );
28 connect(m_obex, SIGNAL(receivedFile(const QString& ) ),
29 this, SLOT(slotReceivedFile(const QString& ) ) );
30 connect((QObject*) m_recvgui->InsertButton, SIGNAL(clicked()),
31 m_recvgui, SLOT( accept() ));
32 connect((QObject*) m_recvgui->RejectButton, SIGNAL(clicked()),
33 m_recvgui, SLOT( reject() ));
34}
35
36ObexImpl::~ObexImpl() {
37 delete m_obex;
38 delete m_chan;
39 delete m_sendgui;
40 delete m_recvgui;
41}
42
43QRESULT ObexImpl::queryInterface( const QUuid &uuid, QUnknownInterface **iface ) {
44 *iface = 0;
45 if( uuid == IID_QUnknown )
46 *iface = this;
47 else if( uuid == IID_ObexInterface )
48 *iface = this;
49
50 qWarning("query" );
51 if(*iface )
52 (*iface)->addRef();
53 return QS_OK;
54}
55
56void ObexImpl::slotMessage( const QCString& msg, const QByteArray&data ) {
57 QDataStream stream( data, IO_ReadOnly );
58 qWarning("Message %s", msg.data() );
59 if(msg == "send(QString,QString,QString)" ) {
60 QString desc;
61 stream >> desc;
62 stream >> m_name;
63 m_sendgui->raise(); // should be on top
64 m_sendgui->showMaximized();
65 m_sendgui->lblPath->setText(m_name);
66 connect( (QObject*)m_sendgui->PushButton2, SIGNAL(clicked()),
67 this, SLOT(slotCancelSend()));
68 m_obex->send(m_name );
69 connect( (QObject*)m_obex, SIGNAL( sent() ), this,
70 SLOT( slotSent() ) );
71 connect( (QObject*)m_obex, SIGNAL( error(int) ), this,
72 SLOT( slotSent() ) );
73 }else if(msg == "receive(int)" ) { // open a GUI
74 //m_recvgui->showMaximized();
75 int receiveD = 0;
76 stream >> receiveD;
77 if ( receiveD == 1)
78 m_obex->receive();
79 else
80 m_obex->setReceiveEnabled( false );
81
82 } else if (msg =="done(QString)") {
83 QString text;
84 stream >> text;
85 m_sendgui->lblPath->setText(tr("Done transfering " + text));
86
87 }
88}
89
90void ObexImpl::slotCancelSend() {
91 // cancel sync process too
92 //m_obex->cancel(); // not ready yet
93 m_sendgui->hide();
94}
95
96void ObexImpl::slotDone(bool) {
97 QCopEnvelope e ("QPE/Obex", "done(QString)" ); //but this into a slot
98 e << m_name;
99}
100
101void ObexImpl::slotSent() {
102 m_sendgui->lblPath->setText("Done!");
103 m_sendgui->hide();
104}
105
106void ObexImpl::slotError( int errorCode) {
107
108 QString errorString = "";
109 if (errorCode == -1) {
110 errorString = "test";
111 }
112 qDebug("Error: " + errorString);
113 m_sendgui->hide();
114}
115
116// Received a file via beam
117// check for mime type and then either
118// add to App via setDocument
119void ObexImpl::slotReceivedFile( const QString &fileName ) {
120 qWarning("filename %s", fileName.latin1() );
121 DocLnk lnk( fileName );
122 QString exec = lnk.exec();
123 qWarning("executing %s", exec.latin1() );
124 if ( exec.isEmpty() || exec == "" ) {
125 qWarning("empty");
126 if ( fileName.right(4) == ".vcf" )
127 exec = "addressbook";
128 else if ( fileName.right(4) == ".vcs" ) {
129 exec = "datebook";
130 }
131 } // now prompt and then add it
132
133 m_recvgui->PixmapLabel->setPixmap( lnk.pixmap() );
134 m_recvgui->AppLabel->setText( "<b>" + exec + "<b>" );
135 m_recvgui->FileLabel->setText( lnk.name() );
136 // m_recvgui->showMaximized();
137 // if( m_recvgui->exec() == 0 ) {
138 QCString str= "QPE/Application/";
139 str += exec.latin1();
140 qWarning("channel %s", str.data() );
141 QCopEnvelope e(str , "setDocument(QString)" );
142 e << fileName;
143 //}
144}
145
146
147
148Q_EXPORT_INTERFACE() {
149 Q_CREATE_INSTANCE( ObexImpl )
150}