bluetooth: add bluetooth integration

Missing support for things that require an agent, but has most basics.

Closes #17
This commit is contained in:
outfoxxed 2025-07-01 00:07:20 -07:00
parent 1d02292fbf
commit f681e2016f
Signed by untrusted user: outfoxxed
GPG key ID: 4C88A185FB89301E
22 changed files with 1623 additions and 14 deletions

View file

@ -20,6 +20,7 @@
#include <qstringview.h>
#include <qtclasshelpermacros.h>
#include <qtmetamacros.h>
#include <qtversionchecks.h>
#include <qvariant.h>
#include "../core/util.hpp"
@ -234,6 +235,7 @@ public:
void attachProperty(DBusPropertyCore* property);
void updateAllDirect();
void updateAllViaGetAll();
void updatePropertySet(const QVariantMap& properties, bool complainMissing = true);
[[nodiscard]] QString toString() const;
[[nodiscard]] bool isConnected() const { return this->interface; }
@ -252,7 +254,6 @@ private slots:
);
private:
void updatePropertySet(const QVariantMap& properties, bool complainMissing);
void tryUpdateProperty(DBusPropertyCore* property, const QVariant& variant) const;
[[nodiscard]] QString propertyString(const DBusPropertyCore* property) const;
@ -265,6 +266,10 @@ private:
} // namespace qs::dbus
#if QT_VERSION < QT_VERSION_CHECK(6, 8, 0)
QDebug operator<<(QDebug debug, const QDBusObjectPath& path);
#endif
// NOLINTBEGIN
#define QS_DBUS_BINDABLE_PROPERTY_GROUP(Class, name) qs::dbus::DBusPropertyGroup name {this};