summaryrefslogtreecommitdiff
authormickeyl <mickeyl>2005-08-23 20:37:03 (UTC)
committer mickeyl <mickeyl>2005-08-23 20:37:03 (UTC)
commit68c01ad5f6e7dc12192c9ce77f0a2ee48b813831 (patch) (side-by-side diff)
tree054dd974156c8e49400979eb9b226bb7bd32fd31
parent95210ac41729a4c264e830963cdae3a4cdd218fb (diff)
downloadopie-68c01ad5f6e7dc12192c9ce77f0a2ee48b813831.zip
opie-68c01ad5f6e7dc12192c9ce77f0a2ee48b813831.tar.gz
opie-68c01ad5f6e7dc12192c9ce77f0a2ee48b813831.tar.bz2
- fix SIGSEGV when trying to send but IrDA is not enabled
- rename 'scan' button to 'rescan' - disable 'send' button if IrDA and BT is both disabled
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--core/obex/obexsend.cpp41
-rw-r--r--core/obex/obexsendbase.ui8
2 files changed, 27 insertions, 22 deletions
diff --git a/core/obex/obexsend.cpp b/core/obex/obexsend.cpp
index a80a48b..9cd9972 100644
--- a/core/obex/obexsend.cpp
+++ b/core/obex/obexsend.cpp
@@ -14,12 +14,13 @@ using namespace OpieObex;
#include <qpe/resource.h>
using namespace Opie::Core;
/* QT */
#include <qlabel.h>
+#include <qpushbutton.h>
#include <qpixmap.h>
#include <qlistview.h>
#include <qtimer.h>
/* TRANSLATOR OpieObex::SendWidget */
@@ -135,12 +136,13 @@ void SendWidget::slotIrSent( bool b) {
slotStartIrda();
}
void SendWidget::slotIrTry(unsigned int trI) {
setReceiverStatus(m_irDaIt.key(), tr("Try %1").arg( QString::number( trI ) ));
}
void SendWidget::slotStartIrda() {
+ if ( !m_irDa.count() ) return;
if (m_irDaIt == m_irDa.end() ) {
irdaStatus->setText(tr("complete."));
return;
}
setReceiverStatus( m_irDaIt.key(), tr("Start sending") );
m_obex->send( m_file );
@@ -180,37 +182,40 @@ void SendWidget::slotStartBt() {
void SendWidget::send_to_receivers() {
slotStartIrda();
slotStartBt();
}
-void SendWidget::scan_for_receivers() {
-
- bool enable_irda=false;
- bool enable_bt=false;
+void SendWidget::scan_for_receivers()
+{
+ //FIXME: Clean ListBox prior to (re)scan
+ sendButton->setDisabled( true );
- if ( !QCopChannel::isRegistered("QPE/IrDaApplet") ) {
+ if ( !QCopChannel::isRegistered("QPE/IrDaApplet") )
+ {
irdaStatus->setText(tr("not enabled."));
- enable_irda=true;
- } else
+ }
+ else
+ {
+ QCopEnvelope e1("QPE/IrDaApplet", "enableIrda()");
irdaStatus->setText(tr("searching..."));
+ sendButton->setEnabled( true );
+ QCopEnvelope e2("QPE/IrDaApplet", "listDevices()");
+ }
- if ( !QCopChannel::isRegistered("QPE/Bluetooth") ) {
+ if ( !QCopChannel::isRegistered("QPE/Bluetooth") )
+ {
btStatus->setText(tr("not enabled."));
- enable_bt=true;
- } else
- btStatus->setText(tr("searching..."));
-
- if (enable_irda)
- QCopEnvelope e0("QPE/IrDaApplet", "enableIrda()");
- if (enable_bt)
+ }
+ else
+ {
QCopEnvelope e1("QPE/Bluetooth", "enableBluetooth()");
-
- QCopEnvelope e2("QPE/IrDaApplet", "listDevices()");
+ btStatus->setText(tr("searching..."));
+ sendButton->setEnabled( true );
QCopEnvelope e3("QPE/Bluetooth", "listDevices()");
-
+ }
}
void SendWidget::toggle_receiver(QListViewItem* item)
{
// toggle the state of an individual receiver.
if(item->pixmap(2))
diff --git a/core/obex/obexsendbase.ui b/core/obex/obexsendbase.ui
index a192dd3..4619842 100644
--- a/core/obex/obexsendbase.ui
+++ b/core/obex/obexsendbase.ui
@@ -13,13 +13,13 @@ for selecting destination hosts.</comment>
</property>
<property stdset="1">
<name>geometry</name>
<rect>
<x>0</x>
<y>0</y>
- <width>363</width>
+ <width>359</width>
<height>221</height>
</rect>
</property>
<property stdset="1">
<name>caption</name>
<string>Send via OBEX</string>
@@ -294,35 +294,35 @@ for selecting destination hosts.</comment>
<property stdset="1">
<name>name</name>
<cstring>scanButton</cstring>
</property>
<property stdset="1">
<name>text</name>
- <string>Scan</string>
+ <string>&amp;Rescan</string>
</property>
</widget>
<widget>
<class>QPushButton</class>
<property stdset="1">
<name>name</name>
<cstring>sendButton</cstring>
</property>
<property stdset="1">
<name>text</name>
- <string>Send</string>
+ <string>&amp;Send</string>
</property>
</widget>
<widget>
<class>QPushButton</class>
<property stdset="1">
<name>name</name>
<cstring>doneButton</cstring>
</property>
<property stdset="1">
<name>text</name>
- <string>Done</string>
+ <string>&amp;Close</string>
</property>
</widget>
</hbox>
</widget>
</vbox>
</widget>