File indexing completed on 2024-04-28 05:26:12

0001 /*
0002  *   SPDX-FileCopyrightText: 2010 Alejandro Fiestas Olivares <alex@eyeos.org>
0003  *   SPDX-FileCopyrightText: 2010 Eduardo Robles Elvira <edulix@gmail.com>
0004  *   SPDX-FileCopyrightText: 2010 UFO Coders <info@ufocoders.com>
0005  *   SPDX-FileCopyrightText: 2014-2015 David Rosca <nowrep@gmail.com>
0006  *
0007  *   SPDX-License-Identifier: GPL-2.0-or-later
0008  */
0009 
0010 #pragma once
0011 
0012 #include <QObject>
0013 
0014 #include <BluezQt/Device>
0015 
0016 namespace Ui
0017 {
0018 class DialogWidget;
0019 }
0020 
0021 class KNotification;
0022 
0023 class RequestPin : public QObject
0024 {
0025     Q_OBJECT
0026 
0027 public:
0028     explicit RequestPin(BluezQt::DevicePtr device, bool numeric = false, QObject *parent = nullptr);
0029 
0030 Q_SIGNALS:
0031     void done(const QString &result);
0032 
0033 private Q_SLOTS:
0034     void introducePin();
0035     void quit();
0036 
0037     void checkPin(const QString &pin);
0038     void dialogFinished(int result);
0039 
0040 private:
0041     Ui::DialogWidget *m_dialogWidget = nullptr;
0042     KNotification *m_notification = nullptr;
0043     BluezQt::DevicePtr m_device;
0044     bool m_numeric;
0045 };