diff options
author | Alex Blasche <alexander.blasche@digia.com> | 2014-07-03 09:23:25 +0200 |
---|---|---|
committer | Alex Blasche <alexander.blasche@digia.com> | 2014-07-03 09:23:25 +0200 |
commit | f78b5f54d8c7536257629ad39bc300e233584949 (patch) | |
tree | e919f3f79a97e14fe927e840b2ad845d5ee92ee3 /examples | |
parent | d2c043d9bb1172f37b3d9051b0483c4a0f3a5d05 (diff) | |
parent | cb6bdcb3fb94a38613304b60724e0cd02962cd14 (diff) |
Merge branch 'dev' into btle
Conflicts:
src/bluetooth/qbluetoothservicediscoveryagent_bluez.cpp
Change-Id: Ib960b9e8d8800af84d2094bdf26c2652d4c81dba
Diffstat (limited to 'examples')
-rw-r--r-- | examples/bluetooth/btfiletransfer/remoteselector.cpp | 35 | ||||
-rw-r--r-- | examples/bluetooth/btfiletransfer/remoteselector.h | 2 |
2 files changed, 26 insertions, 11 deletions
diff --git a/examples/bluetooth/btfiletransfer/remoteselector.cpp b/examples/bluetooth/btfiletransfer/remoteselector.cpp index 84619a4e..08072d14 100644 --- a/examples/bluetooth/btfiletransfer/remoteselector.cpp +++ b/examples/bluetooth/btfiletransfer/remoteselector.cpp @@ -59,7 +59,8 @@ QT_USE_NAMESPACE RemoteSelector::RemoteSelector(QWidget *parent) : QDialog(parent), ui(new Ui::RemoteSelector), - m_localDevice(new QBluetoothLocalDevice), m_pindisplay(0) + m_localDevice(new QBluetoothLocalDevice), m_pindisplay(0), + m_pairingError(false) { ui->setupUi(this); @@ -85,9 +86,14 @@ RemoteSelector::RemoteSelector(QWidget *parent) ui->remoteDevices->setColumnWidth(3, 75); ui->remoteDevices->setColumnWidth(4, 100); - connect(m_localDevice, SIGNAL(pairingDisplayPinCode(QBluetoothAddress,QString)), this, SLOT(displayPin(QBluetoothAddress,QString))); - connect(m_localDevice, SIGNAL(pairingDisplayConfirmation(QBluetoothAddress,QString)), this, SLOT(displayConfirmation(QBluetoothAddress,QString))); - connect(m_localDevice, SIGNAL(pairingFinished(QBluetoothAddress,QBluetoothLocalDevice::Pairing)), this, SLOT(pairingFinished(QBluetoothAddress,QBluetoothLocalDevice::Pairing))); + connect(m_localDevice, SIGNAL(pairingDisplayPinCode(QBluetoothAddress,QString)), + this, SLOT(displayPin(QBluetoothAddress,QString))); + connect(m_localDevice, SIGNAL(pairingDisplayConfirmation(QBluetoothAddress,QString)), + this, SLOT(displayConfirmation(QBluetoothAddress,QString))); + connect(m_localDevice, SIGNAL(pairingFinished(QBluetoothAddress,QBluetoothLocalDevice::Pairing)), + this, SLOT(pairingFinished(QBluetoothAddress,QBluetoothLocalDevice::Pairing))); + connect(m_localDevice, SIGNAL(error(QBluetoothLocalDevice::Error)), + this, SLOT(pairingError(QBluetoothLocalDevice::Error))); ui->busyWidget->setMovie(new QMovie(":/icons/busy.gif")); ui->busyWidget->movie()->start(); @@ -97,8 +103,6 @@ RemoteSelector::RemoteSelector(QWidget *parent) ui->remoteDevices->clearContents(); ui->remoteDevices->setRowCount(0); - - } RemoteSelector::~RemoteSelector() @@ -324,12 +328,13 @@ void RemoteSelector::pairingFinished(const QBluetoothAddress &address, QBluetoot delete m_pindisplay; QMessageBox msgBox; - if (status == QBluetoothLocalDevice::Paired || - status == QBluetoothLocalDevice::AuthorizedPaired){ - msgBox.setText("Paired successfully with" + address.toString()); - } - else { + if (m_pairingError) { msgBox.setText("Pairing failed with " + address.toString()); + } else if (status == QBluetoothLocalDevice::Paired + || status == QBluetoothLocalDevice::AuthorizedPaired) { + msgBox.setText("Paired successfully with " + address.toString()); + } else { + msgBox.setText("Pairing released with " + address.toString()); } if (service.isValid()){ @@ -347,11 +352,19 @@ void RemoteSelector::pairingFinished(const QBluetoothAddress &address, QBluetoot } } + m_pairingError = false; msgBox.exec(); ui->remoteDevices->blockSignals(false); +} +void RemoteSelector::pairingError(QBluetoothLocalDevice::Error error) +{ + if (error != QBluetoothLocalDevice::PairingError) + return; + m_pairingError = true; + pairingFinished(m_service.device().address(), QBluetoothLocalDevice::Unpaired); } void RemoteSelector::on_remoteDevices_cellClicked(int row, int column) diff --git a/examples/bluetooth/btfiletransfer/remoteselector.h b/examples/bluetooth/btfiletransfer/remoteselector.h index fe1d3966..ec2e4fd5 100644 --- a/examples/bluetooth/btfiletransfer/remoteselector.h +++ b/examples/bluetooth/btfiletransfer/remoteselector.h @@ -83,6 +83,7 @@ private: QFile *m_file; QBluetoothLocalDevice *m_localDevice; QPointer<pinDisplay> m_pindisplay; + bool m_pairingError; QString addressToName(const QBluetoothAddress &address); @@ -98,6 +99,7 @@ private slots: void on_stopButton_clicked(); void pairingFinished(const QBluetoothAddress &address,QBluetoothLocalDevice::Pairing pairing); + void pairingError(QBluetoothLocalDevice::Error error); void displayPin(const QBluetoothAddress &address, QString pin); void displayConfirmation(const QBluetoothAddress &address, QString pin); void displayConfReject(); |