summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/obex/obexsend.cpp53
-rw-r--r--core/obex/obexsend.h3
2 files changed, 52 insertions, 4 deletions
diff --git a/core/obex/obexsend.cpp b/core/obex/obexsend.cpp
index 5c177e3..bca6784 100644
--- a/core/obex/obexsend.cpp
+++ b/core/obex/obexsend.cpp
@@ -4,18 +4,21 @@
4// all. 4// all.
5 5
6#include "obex.h" 6#include "obex.h"
7#include "btobex.h" 7#include "btobex.h"
8#include "obexsend.h" 8#include "obexsend.h"
9using namespace OpieObex; 9using namespace OpieObex;
10using namespace OpieTooth;
10 11
11/* OPIE */ 12/* OPIE */
12#include <opie2/odebug.h> 13#include <opie2/odebug.h>
13#include <qpe/qcopenvelope_qws.h> 14#include <qpe/qcopenvelope_qws.h>
14#include <opie2/oresource.h> 15#include <opie2/oresource.h>
15#include <qpe/version.h> 16#include <qpe/version.h>
17#include <devicehandler.h>
18#include "remotedevice.h"
16 19
17using namespace Opie::Core; 20using namespace Opie::Core;
18 21
19/* QT */ 22/* QT */
20#include <qlabel.h> 23#include <qlabel.h>
21#include <qpushbutton.h> 24#include <qpushbutton.h>
@@ -70,19 +73,19 @@ void SendWidget::initUI() {
70void SendWidget::send( const QString& file, const QString& desc ) { 73void SendWidget::send( const QString& file, const QString& desc ) {
71 m_file = file; 74 m_file = file;
72 m_irDa.clear(); 75 m_irDa.clear();
73 m_start = 0; 76 m_start = 0;
74 77
75 fileToSend->setText(desc.isEmpty() ? file : desc ); 78 fileToSend->setText(desc.isEmpty() ? file : desc );
76 scan_for_receivers(); 79 read_receivers();
77} 80}
78 81
79int SendWidget::addReceiver(const char *r, const char *icon) 82int SendWidget::addReceiver(const QString& str, const char *icon)
80{ 83{
81 QListViewItem * item = new QListViewItem( receiverList, 0 ); 84 QListViewItem * item = new QListViewItem( receiverList, 0 );
82 item->setText( 0, r); 85 item->setText( 0, str );
83 item->setPixmap( 1, OResource::loadPixmap( icon ) ); 86 item->setPixmap( 1, OResource::loadPixmap( icon ) );
84 87
85 int id=receivers.count(); 88 int id=receivers.count();
86 receivers[id]=item; 89 receivers[id]=item;
87 return id; 90 return id;
88} 91}
@@ -191,12 +194,56 @@ void SendWidget::slotStartBt() {
191 194
192void SendWidget::send_to_receivers() { 195void SendWidget::send_to_receivers() {
193 slotStartIrda(); 196 slotStartIrda();
194 slotStartBt(); 197 slotStartBt();
195} 198}
196 199
200/**
201 * Read receivers saved by bluetooth manager
202 */
203void SendWidget::read_receivers()
204{
205 QValueList<RemoteDevice> devices;
206 DeviceHandler handler;
207 QValueList<RemoteDevice>::ConstIterator it;
208
209 receiverList->clear();
210 receivers.clear();
211 sendButton->setDisabled( true );
212
213 if ( !QCopChannel::isRegistered("QPE/IrDaApplet") )
214 {
215 irdaStatus->setText(tr("not enabled."));
216 }
217 else
218 {
219 QCopEnvelope e1("QPE/IrDaApplet", "enableIrda()");
220 irdaStatus->setText(tr("ready"));
221 sendButton->setEnabled( true );
222 }
223 if ( !QCopChannel::isRegistered("QPE/Bluetooth") )
224 {
225 btStatus->setText(tr("not enabled."));
226 }
227 else
228 {
229 QCopEnvelope e1("QPE/Bluetooth", "enableBluetooth()");
230
231 devices = handler.load();
232 for( it = devices.begin(); it != devices.end() ; ++it )
233 {
234 int id = addReceiver((*it).name(), "obex/bt.png");
235 m_bt.insert(id, Pair((*it).name(), (*it).mac()));
236 }
237 btStatus->setText(tr("ready."));
238 m_btIt = m_bt.begin();
239 sendButton->setEnabled( true );
240 }
241}
242
243
197void SendWidget::scan_for_receivers() 244void SendWidget::scan_for_receivers()
198{ 245{
199 receiverList->clear(); 246 receiverList->clear();
200 receivers.clear(); 247 receivers.clear();
201 sendButton->setDisabled( true ); 248 sendButton->setDisabled( true );
202 249
diff --git a/core/obex/obexsend.h b/core/obex/obexsend.h
index 030e180..f9ba340 100644
--- a/core/obex/obexsend.h
+++ b/core/obex/obexsend.h
@@ -41,12 +41,13 @@ namespace OpieObex {
41 ~SendWidget(); 41 ~SendWidget();
42 42
43 QString file()const; 43 QString file()const;
44 44
45 protected: 45 protected:
46 void closeEvent( QCloseEvent* ); 46 void closeEvent( QCloseEvent* );
47 void read_receivers();
47 48
48 public slots: 49 public slots:
49 void send( const QString& file, const QString& desc ); 50 void send( const QString& file, const QString& desc );
50 51
51 signals: 52 signals:
52 void done(); 53 void done();
@@ -76,13 +77,13 @@ namespace OpieObex {
76 void slotBtSent(bool); 77 void slotBtSent(bool);
77 void slotBtTry(unsigned int ); 78 void slotBtTry(unsigned int );
78 void slotStartBt(); 79 void slotStartBt();
79 80
80 private: 81 private:
81 void initUI(); 82 void initUI();
82 int addReceiver(const char *r, const char *icon); 83 int addReceiver(const QString& str, const char *icon);
83 void setReceiverStatus( int id, const QString& status ); 84 void setReceiverStatus( int id, const QString& status );
84 bool receiverSelected(int id); 85 bool receiverSelected(int id);
85 86
86 int m_start; 87 int m_start;
87 QMap<int, QString> m_irDa; 88 QMap<int, QString> m_irDa;
88 QMap<int, QString>::Iterator m_irDaIt; 89 QMap<int, QString>::Iterator m_irDaIt;