Init wallet asynchronously

This commit is contained in:
Ilya Kitaev
2016-07-14 13:09:39 +03:00
parent 7df82af75d
commit 71da777375
3 changed files with 28 additions and 17 deletions

View File

@@ -28,6 +28,7 @@ public:
// TODO
Q_UNUSED(txId)
Q_UNUSED(amount)
qDebug() << __FUNCTION__;
}
virtual void moneyReceived(const std::string &txId, uint64_t amount)
@@ -35,16 +36,19 @@ public:
// TODO
Q_UNUSED(txId)
Q_UNUSED(amount)
qDebug() << __FUNCTION__;
}
virtual void updated()
{
qDebug() << __FUNCTION__;
emit m_wallet->updated();
}
// called when wallet refreshed by background thread or explicitly
virtual void refreshed()
{
qDebug() << __FUNCTION__;
emit m_wallet->refreshed();
}
@@ -74,6 +78,11 @@ Wallet::Status Wallet::status() const
return static_cast<Status>(m_walletImpl->status());
}
bool Wallet::connected() const
{
return m_walletImpl->connected();
}
QString Wallet::errorString() const
{
return QString::fromStdString(m_walletImpl->errorString());
@@ -99,6 +108,11 @@ bool Wallet::init(const QString &daemonAddress, quint64 upperTransactionLimit)
return m_walletImpl->init(daemonAddress.toStdString(), upperTransactionLimit);
}
void Wallet::initAsync(const QString &daemonAddress, quint64 upperTransactionLimit)
{
m_walletImpl->initAsync(daemonAddress.toStdString(), upperTransactionLimit);
}
bool Wallet::connectToDaemon()
{
return m_walletImpl->connectToDaemon();
@@ -183,7 +197,7 @@ void Wallet::setPaymentId(const QString &paymentId)
Wallet::Wallet(Bitmonero::Wallet *w, QObject *parent)
: QObject(parent), m_walletImpl(w), m_history(nullptr)
{
m_walletImpl->setListener(new WalletListenerImpl(this));
}
Wallet::~Wallet()

View File

@@ -20,6 +20,7 @@ class Wallet : public QObject
Q_PROPERTY(QString seed READ getSeed)
Q_PROPERTY(QString seedLanguage READ getSeedLanguage)
Q_PROPERTY(Status status READ status)
Q_PROPERTY(bool connected READ connected)
Q_PROPERTY(QString errorString READ errorString)
Q_PROPERTY(QString address READ address)
Q_PROPERTY(quint64 balance READ balance)
@@ -27,6 +28,7 @@ class Wallet : public QObject
Q_PROPERTY(TransactionHistory * history READ history)
Q_PROPERTY(QString paymentId READ paymentId WRITE setPaymentId)
public:
enum Status {
Status_Ok = Bitmonero::Wallet::Status_Ok,
@@ -47,6 +49,9 @@ public:
//! returns last operation's status
Status status() const;
//! returns of wallet connected
bool connected() const;
//! returns last operation's error message
QString errorString() const;
@@ -62,6 +67,9 @@ public:
//! initializes wallet
Q_INVOKABLE bool init(const QString &daemonAddress, quint64 upperTransactionLimit);
//! initializes wallet asynchronously
Q_INVOKABLE void initAsync(const QString &daemonAddress, quint64 upperTransactionLimit);
//! connects to daemon
Q_INVOKABLE bool connectToDaemon();
@@ -124,6 +132,7 @@ private:
// history lifetime managed by wallet;
TransactionHistory * m_history;
QString m_paymentId;
};
#endif // WALLET_H