summaryrefslogtreecommitdiff
path: root/core/obex/obexhandler.cpp
Unidiff
Diffstat (limited to 'core/obex/obexhandler.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/obex/obexhandler.cpp44
1 files changed, 28 insertions, 16 deletions
diff --git a/core/obex/obexhandler.cpp b/core/obex/obexhandler.cpp
index 28f9b5b..5d98ded 100644
--- a/core/obex/obexhandler.cpp
+++ b/core/obex/obexhandler.cpp
@@ -13,5 +13,8 @@ using namespace OpieObex;
13ObexHandler::ObexHandler() { 13ObexHandler::ObexHandler() {
14 m_wasRec = false; 14 m_wasRec[REC_IRDA] = false;
15 m_receiver[REC_IRDA] = 0l;
16 m_wasRec[REC_BLUETOOTH] = false;
17 m_receiver[REC_BLUETOOTH] = 0l;
15 m_sender = 0l; 18 m_sender = 0l;
16 m_receiver = 0l; 19 m_type = REC_IRDA; //FIXME: Just to init to something
17 QCopChannel* chan = new QCopChannel("QPE/Obex"); 20 QCopChannel* chan = new QCopChannel("QPE/Obex");
@@ -22,3 +25,4 @@ ObexHandler::~ObexHandler() {
22 delete m_sender; 25 delete m_sender;
23 delete m_receiver; 26 delete m_receiver[REC_IRDA];
27 delete m_receiver[REC_BLUETOOTH];
24} 28}
@@ -33,10 +37,10 @@ void ObexHandler::doSend(const QString& str, const QString& desc) {
33} 37}
34void ObexHandler::doReceive(bool b) { 38void ObexHandler::doReceive(RecType type, bool b) {
35 if (m_receiver && b ) return; // we should enable receiver and it is on 39 if (m_receiver[type] && b ) return; // we should enable receiver and it is on
36 else if (!m_receiver && !b ) return; // we should disbale receiver and it is off 40 else if (!m_receiver[type] && !b ) return; // we should disbale receiver and it is off
37 else if (m_receiver && !b ) { 41 else if (m_receiver[type] && !b ) {
38 delete m_receiver; 42 delete m_receiver[type];
39 m_receiver=0; 43 m_receiver[type] = 0;
40 }else if (!m_receiver && b ) { 44 }else if (!m_receiver[type] && b ) {
41 m_receiver= new Receiver; 45 m_receiver[type] = new Receiver(type);
42 } 46 }
@@ -49,4 +53,6 @@ void ObexHandler::slotSent() {
49 e << file; 53 e << file;
50 doReceive(m_wasRec ); 54 doReceive(REC_IRDA, m_wasRec[REC_IRDA]);
51 m_wasRec = false; 55 doReceive(REC_BLUETOOTH, m_wasRec[REC_BLUETOOTH]);
56 m_wasRec[REC_IRDA] = false;
57 m_wasRec[REC_BLUETOOTH] = false;
52} 58}
@@ -58,4 +64,6 @@ void ObexHandler::irdaMessage( const QCString& msg, const QByteArray& data) {
58 stream >> name; 64 stream >> name;
59 m_wasRec = (m_receiver != 0 ); 65 m_wasRec[REC_IRDA] = (m_receiver[REC_IRDA] != 0 );
60 doReceive( false ); 66 m_wasRec[REC_BLUETOOTH] = (m_receiver[REC_BLUETOOTH] != 0 );
67 doReceive(REC_IRDA, false);
68 doReceive(REC_BLUETOOTH, false);
61 doSend(name, desc); 69 doSend(name, desc);
@@ -64,3 +72,7 @@ void ObexHandler::irdaMessage( const QCString& msg, const QByteArray& data) {
64 stream >> rec; 72 stream >> rec;
65 doReceive(rec); 73 doReceive(REC_IRDA, rec);
74 }else if (msg == "btreceive(int)") {
75 int rec;
76 stream >> rec;
77 doReceive(REC_BLUETOOTH, rec);
66 } 78 }