mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Add a dialog for remote Bluetooth devices selection
Implement a dialog which can be used for remote Bluetooth devices selection and to control the local Bluetooth device. Functionalities of the widget: - expose information about the local BT device - scan for remote BT devices - pair/unpair with a remote BT device - turn on/off the local BT device - logging - save the selected BT device The selection dialog is created when the bluetoothMode checkbox is enabled. Signed-off-by: Claudiu Olteanu <olteanu.claudiu@ymail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
b4c4d95ea4
commit
dff4e5f33e
7 changed files with 553 additions and 4 deletions
46
qt-ui/btdeviceselectiondialog.h
Normal file
46
qt-ui/btdeviceselectiondialog.h
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
#ifndef BTDEVICESELECTIONDIALOG_H
|
||||
#define BTDEVICESELECTIONDIALOG_H
|
||||
|
||||
#include <QDialog>
|
||||
#include <QListWidgetItem>
|
||||
#include <QPointer>
|
||||
#include <QtBluetooth/QBluetoothLocalDevice>
|
||||
#include <QtBluetooth/qbluetoothglobal.h>
|
||||
#include <QtBluetooth/QBluetoothDeviceDiscoveryAgent>
|
||||
|
||||
Q_DECLARE_METATYPE(QBluetoothDeviceInfo)
|
||||
|
||||
namespace Ui {
|
||||
class BtDeviceSelectionDialog;
|
||||
}
|
||||
|
||||
class BtDeviceSelectionDialog : public QDialog {
|
||||
Q_OBJECT
|
||||
|
||||
public:
|
||||
explicit BtDeviceSelectionDialog(QWidget *parent = 0);
|
||||
~BtDeviceSelectionDialog();
|
||||
QString getSelectedDeviceAddress();
|
||||
QString getSelectedDeviceName();
|
||||
|
||||
private slots:
|
||||
void on_changeDeviceState_clicked();
|
||||
void on_save_clicked();
|
||||
void on_clear_clicked();
|
||||
void on_scan_clicked();
|
||||
void remoteDeviceScanFinished();
|
||||
void hostModeStateChanged(QBluetoothLocalDevice::HostMode mode);
|
||||
void addRemoteDevice(const QBluetoothDeviceInfo &remoteDeviceInfo);
|
||||
void itemActivated(QListWidgetItem *item);
|
||||
void displayPairingMenu(const QPoint &pos);
|
||||
void pairingFinished(const QBluetoothAddress &address,QBluetoothLocalDevice::Pairing pairing);
|
||||
void error(QBluetoothLocalDevice::Error error);
|
||||
|
||||
private:
|
||||
Ui::BtDeviceSelectionDialog *ui;
|
||||
QBluetoothLocalDevice *localDevice;
|
||||
QBluetoothDeviceDiscoveryAgent *remoteDeviceDiscoveryAgent;
|
||||
QSharedPointer<QBluetoothDeviceInfo> selectedRemoteDeviceInfo;
|
||||
};
|
||||
|
||||
#endif // BTDEVICESELECTIONDIALOG_H
|
||||
Loading…
Add table
Add a link
Reference in a new issue