aboutsummaryrefslogtreecommitdiff
path: root/src/libwalletqt
diff options
context:
space:
mode:
Diffstat (limited to 'src/libwalletqt')
-rw-r--r--src/libwalletqt/AddressBook.cpp7
-rw-r--r--src/libwalletqt/AddressBook.h1
-rw-r--r--src/libwalletqt/Wallet.cpp23
-rw-r--r--src/libwalletqt/WalletManager.cpp10
-rw-r--r--src/libwalletqt/WalletManager.h6
5 files changed, 13 insertions, 34 deletions
diff --git a/src/libwalletqt/AddressBook.cpp b/src/libwalletqt/AddressBook.cpp
index fbcbc4ab..6fb5e93f 100644
--- a/src/libwalletqt/AddressBook.cpp
+++ b/src/libwalletqt/AddressBook.cpp
@@ -121,13 +121,6 @@ quint64 AddressBook::count() const
return m_rows.size();
}
-int AddressBook::lookupPaymentID(const QString &payment_id) const
-{
- QReadLocker locker(&m_lock);
-
- return m_addressBookImpl->lookupPaymentID(payment_id.toStdString());
-}
-
QString AddressBook::getDescription(const QString &address) const
{
QReadLocker locker(&m_lock);
diff --git a/src/libwalletqt/AddressBook.h b/src/libwalletqt/AddressBook.h
index 39551e66..d74f05d4 100644
--- a/src/libwalletqt/AddressBook.h
+++ b/src/libwalletqt/AddressBook.h
@@ -51,7 +51,6 @@ public:
quint64 count() const;
Q_INVOKABLE QString errorString() const;
Q_INVOKABLE int errorCode() const;
- Q_INVOKABLE int lookupPaymentID(const QString &payment_id) const;
Q_INVOKABLE QString getDescription(const QString &address) const;
enum ErrorCode {
diff --git a/src/libwalletqt/Wallet.cpp b/src/libwalletqt/Wallet.cpp
index 36d09c02..f7cc1965 100644
--- a/src/libwalletqt/Wallet.cpp
+++ b/src/libwalletqt/Wallet.cpp
@@ -1080,9 +1080,9 @@ void Wallet::onPassphraseEntered(const QString &passphrase, bool enter_on_device
Wallet::Wallet(Monero::Wallet *w, QObject *parent)
: QObject(parent)
, m_walletImpl(w)
- , m_history(nullptr)
+ , m_history(new TransactionHistory(m_walletImpl->history(), this))
, m_historyModel(nullptr)
- , m_addressBook(nullptr)
+ , m_addressBook(new AddressBook(m_walletImpl->addressBook(), this))
, m_addressBookModel(nullptr)
, m_daemonBlockChainHeight(0)
, m_daemonBlockChainHeightTtl(DAEMON_BLOCKCHAIN_HEIGHT_CACHE_TTL_SECONDS)
@@ -1093,18 +1093,14 @@ Wallet::Wallet(Monero::Wallet *w, QObject *parent)
, m_disconnected(true)
, m_initialized(false)
, m_currentSubaddressAccount(0)
- , m_subaddress(nullptr)
+ , m_subaddress(new Subaddress(m_walletImpl->subaddress(), this))
, m_subaddressModel(nullptr)
- , m_subaddressAccount(nullptr)
+ , m_subaddressAccount(new SubaddressAccount(m_walletImpl->subaddressAccount(), this))
, m_subaddressAccountModel(nullptr)
, m_refreshEnabled(false)
, m_refreshing(false)
, m_scheduler(this)
{
- m_history = new TransactionHistory(m_walletImpl->history(), this);
- m_addressBook = new AddressBook(m_walletImpl->addressBook(), this);
- m_subaddress = new Subaddress(m_walletImpl->subaddress(), this);
- m_subaddressAccount = new SubaddressAccount(m_walletImpl->subaddressAccount(), this);
m_walletListener = new WalletListenerImpl(this);
m_walletImpl->setListener(m_walletListener);
m_currentSubaddressAccount = getCacheAttribute(ATTRIBUTE_SUBADDRESS_ACCOUNT).toUInt();
@@ -1127,17 +1123,6 @@ Wallet::~Wallet()
m_walletImpl->stop();
m_scheduler.shutdownWaitForFinished();
- delete m_addressBook;
- m_addressBook = NULL;
-
- delete m_history;
- m_history = NULL;
- delete m_addressBook;
- m_addressBook = NULL;
- delete m_subaddress;
- m_subaddress = NULL;
- delete m_subaddressAccount;
- m_subaddressAccount = NULL;
//Monero::WalletManagerFactory::getWalletManager()->closeWallet(m_walletImpl);
if(status() == Status_Critical)
qDebug("Not storing wallet cache");
diff --git a/src/libwalletqt/WalletManager.cpp b/src/libwalletqt/WalletManager.cpp
index 9876e1f3..0c87c8e2 100644
--- a/src/libwalletqt/WalletManager.cpp
+++ b/src/libwalletqt/WalletManager.cpp
@@ -169,7 +169,7 @@ Wallet *WalletManager::createWalletFromKeys(const QString &path, const QString &
}
Wallet *WalletManager::createWalletFromDevice(const QString &path, const QString &password, NetworkType::Type nettype,
- const QString &deviceName, quint64 restoreHeight, const QString &subaddressLookahead)
+ const QString &deviceName, quint64 restoreHeight, const QString &subaddressLookahead, quint64 kdfRounds)
{
QMutexLocker locker(&m_mutex);
WalletPassphraseListenerImpl tmpListener(this);
@@ -187,7 +187,7 @@ Wallet *WalletManager::createWalletFromDevice(const QString &path, const QString
m_currentWallet = NULL;
}
Monero::Wallet * w = m_pimpl->createWalletFromDevice(path.toStdString(), password.toStdString(), static_cast<Monero::NetworkType>(nettype),
- deviceName.toStdString(), restoreHeight, subaddressLookahead.toStdString(), 1, &tmpListener);
+ deviceName.toStdString(), restoreHeight, subaddressLookahead.toStdString(), kdfRounds, &tmpListener);
w->setListener(nullptr);
m_currentWallet = new Wallet(w);
@@ -202,10 +202,10 @@ Wallet *WalletManager::createWalletFromDevice(const QString &path, const QString
void WalletManager::createWalletFromDeviceAsync(const QString &path, const QString &password, NetworkType::Type nettype,
- const QString &deviceName, quint64 restoreHeight, const QString &subaddressLookahead)
+ const QString &deviceName, quint64 restoreHeight, const QString &subaddressLookahead, quint64 kdfRounds)
{
- m_scheduler.run([this, path, password, nettype, deviceName, restoreHeight, subaddressLookahead] {
- Wallet *wallet = createWalletFromDevice(path, password, nettype, deviceName, restoreHeight, subaddressLookahead);
+ m_scheduler.run([this, path, password, nettype, deviceName, restoreHeight, subaddressLookahead, kdfRounds] {
+ Wallet *wallet = createWalletFromDevice(path, password, nettype, deviceName, restoreHeight, subaddressLookahead, kdfRounds);
emit walletCreated(wallet);
});
}
diff --git a/src/libwalletqt/WalletManager.h b/src/libwalletqt/WalletManager.h
index 25c62faf..210004a9 100644
--- a/src/libwalletqt/WalletManager.h
+++ b/src/libwalletqt/WalletManager.h
@@ -103,14 +103,16 @@ public:
NetworkType::Type nettype,
const QString &deviceName,
quint64 restoreHeight = 0,
- const QString &subaddressLookahead = "");
+ const QString &subaddressLookahead = "",
+ quint64 kdfRounds = 1);
Q_INVOKABLE void createWalletFromDeviceAsync(const QString &path,
const QString &password,
NetworkType::Type nettype,
const QString &deviceName,
quint64 restoreHeight = 0,
- const QString &subaddressLookahead = "");
+ const QString &subaddressLookahead = "",
+ quint64 kdfRounds = 1);
/*!
* \brief closeWallet - closes current open wallet and frees memory
* \return wallet address