QtDataSync  4.2.0
A simple offline-first synchronisation framework, to synchronize data of Qt applications between devices
qqmluserexchangemanager.h
1 #ifndef QQMLUSEREXCHANGEMANAGER_H
2 #define QQMLUSEREXCHANGEMANAGER_H
3 
4 #include <QtCore/QObject>
5 
6 #include <QtQml/QQmlParserStatus>
7 
8 #include <QtDataSync/userexchangemanager.h>
9 
10 #include "qqmlaccountmanager.h"
11 
12 #ifdef DOXYGEN_RUN
14 
22 #else
23 namespace QtDataSync {
24 
25 class QQmlUserExchangeManager : public UserExchangeManager, public QQmlParserStatus
26 #endif
27 {
28  Q_OBJECT
29  Q_DISABLE_COPY(QQmlUserExchangeManager)
30  Q_INTERFACES(QQmlParserStatus)
31 
32 
43  Q_PROPERTY(quint16 DataExchangePort READ DataExchangePort CONSTANT)
61  Q_PROPERTY(QString setupName READ setupName WRITE setSetupName NOTIFY setupNameChanged)
78  Q_PROPERTY(QQmlAccountManager* manager READ manager WRITE setManager NOTIFY managerChanged)
94  Q_PROPERTY(bool valid READ valid NOTIFY validChanged)
95 
96 public:
98  explicit QQmlUserExchangeManager(QObject *parent = nullptr);
99 
101  void classBegin() override;
103  void componentComplete() override;
104 
106  quint16 DataExchangePort() const;
107 
109  QString setupName() const;
111  QQmlAccountManager* manager() const;
113  bool valid() const;
114 
116  Q_INVOKABLE void importFrom(const QtDataSync::UserInfo &userInfo,
117  const QJSValue &completedFn,
118  bool keepData = false);
120  Q_INVOKABLE void importTrustedFrom(const QtDataSync::UserInfo &userInfo,
121  const QString &password,
122  const QJSValue &completedFn,
123  bool keepData = false);
124 
125 public Q_SLOTS:
127  void setSetupName(QString setupName);
129  void setManager(QQmlAccountManager* manager);
130 
131 Q_SIGNALS:
133  void setupNameChanged(QString setupName);
135  void managerChanged(QQmlAccountManager* manager);
137  void validChanged(bool valid);
138 
139 private:
140  QString _setupName;
141  QQmlAccountManager* _manager;
142 };
143 
144 }
145 
146 #endif // QQMLUSEREXCHANGEMANAGER_H
The QML import for the QtDataSync QML module.
The QML binding of QtDataSync::UserExchangeManager.
Q_INVOKABLE void importTrustedFrom(const QtDataSync::UserInfo &userInfo, const QString &password, const QJSValue &completedFn, bool keepData=false)
Imports the trusted user data previously received by the given user.
The primary namespace of the QtDataSync library.
Q_INVOKABLE void importFrom(const QtDataSync::UserInfo &userInfo, const QJSValue &completedFn, bool keepData=false)
Imports the untrusted user data previously received by the given user.
void managerChanged(QQmlAccountManager *manager)
NOTIFY accessor for AccountManager::manager.
void setupNameChanged(QString setupName)
NOTIFY accessor for AccountManager::setupName.
void validChanged(bool valid)
NOTIFY accessor for AccountManager::valid.
QObject * parent() const const