-rw-r--r-- | core/obex/obexsend.cpp | 53 | ||||
-rw-r--r-- | core/obex/obexsend.h | 3 |
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 | |||
@@ -2,22 +2,25 @@ | |||
2 | // generated via QT2 Designer. The new form supports | 2 | // generated via QT2 Designer. The new form supports |
3 | // selection of target devices, as opposed to sending to | 3 | // selection of target devices, as opposed to sending to |
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" |
9 | using namespace OpieObex; | 9 | using namespace OpieObex; |
10 | using 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 | ||
17 | using namespace Opie::Core; | 20 | using 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> |
22 | #include <qpixmap.h> | 25 | #include <qpixmap.h> |
23 | #include <qlistview.h> | 26 | #include <qlistview.h> |
@@ -68,23 +71,23 @@ void SendWidget::initUI() { | |||
68 | * and then wait for a list of devices. | 71 | * and then wait for a list of devices. |
69 | */ | 72 | */ |
70 | void SendWidget::send( const QString& file, const QString& desc ) { | 73 | void 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 | ||
79 | int SendWidget::addReceiver(const char *r, const char *icon) | 82 | int 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 | } |
89 | 92 | ||
90 | bool SendWidget::receiverSelected(int id) | 93 | bool SendWidget::receiverSelected(int id) |
@@ -189,16 +192,60 @@ void SendWidget::slotStartBt() { | |||
189 | m_btobex->send( m_file, m_btIt.data().second() ); | 192 | m_btobex->send( m_file, m_btIt.data().second() ); |
190 | } | 193 | } |
191 | 194 | ||
192 | void SendWidget::send_to_receivers() { | 195 | void 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 | */ | ||
203 | void 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 | |||
197 | void SendWidget::scan_for_receivers() | 244 | void 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 | ||
203 | if ( !QCopChannel::isRegistered("QPE/IrDaApplet") ) | 250 | if ( !QCopChannel::isRegistered("QPE/IrDaApplet") ) |
204 | { | 251 | { |
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 | |||
@@ -39,16 +39,17 @@ namespace OpieObex { | |||
39 | public: | 39 | public: |
40 | SendWidget( QWidget* parent = 0, const char* name = 0); | 40 | SendWidget( QWidget* parent = 0, const char* name = 0); |
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(); |
53 | 54 | ||
54 | protected slots: | 55 | protected slots: |
@@ -74,17 +75,17 @@ namespace OpieObex { | |||
74 | void dispatchBt( const QCString& str, const QByteArray& ar ); | 75 | void dispatchBt( const QCString& str, const QByteArray& ar ); |
75 | void slotBtError( int ); | 76 | void slotBtError( int ); |
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; |
89 | QMap<int, Pair > m_bt; | 90 | QMap<int, Pair > m_bt; |
90 | QMap<int, Pair>::Iterator m_btIt; | 91 | QMap<int, Pair>::Iterator m_btIt; |