aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJaquee <jaquee.monero@gmail.com>2017-05-02 17:29:35 +0200
committerJaquee <jaquee.monero@gmail.com>2017-05-03 11:14:57 +0200
commitf31b27d3fd02c4d87c4cfdea87ae84685d04f430 (patch)
tree0bc0c29f5694b20a790caf536d5a2274e0a56c18
parent4ca35af11ac8b41192bdb373216513e524ee4cb0 (diff)
downloadmonzero-gui-f31b27d3fd02c4d87c4cfdea87ae84685d04f430.tar.gz
monzero-gui-f31b27d3fd02c4d87c4cfdea87ae84685d04f430.tar.xz
monzero-gui-f31b27d3fd02c4d87c4cfdea87ae84685d04f430.zip
add wallet view/spend keys to seed dialog
requires #2012
-rw-r--r--pages/Settings.qml33
-rw-r--r--src/libwalletqt/Wallet.h10
2 files changed, 37 insertions, 6 deletions
diff --git a/pages/Settings.qml b/pages/Settings.qml
index 9301a92e..d4f0ce23 100644
--- a/pages/Settings.qml
+++ b/pages/Settings.qml
@@ -116,7 +116,7 @@ Rectangle {
shadowPressedColor: "#B32D00"
releasedColor: "#FF6C3C"
pressedColor: "#FF4304"
- text: qsTr("Show seed") + translationManager.emptyString
+ text: qsTr("Show seed & keys") + translationManager.emptyString
onClicked: {
settingsPasswordDialog.open();
}
@@ -413,11 +413,17 @@ Rectangle {
onAccepted: {
if(appWindow.password === settingsPasswordDialog.password){
- informationPopup.title = qsTr("Wallet mnemonic seed") + translationManager.emptyString;
- informationPopup.text = currentWallet.seed
- informationPopup.open()
- informationPopup.onCloseCallback = function() {
- informationPopup.text = ""
+ seedPopup.title = qsTr("Wallet seed & keys") + translationManager.emptyString;
+ seedPopup.text = "<b>Wallet Mnemonic seed</b> <br>" + currentWallet.seed
+ + "<br><br> <b>" + qsTr("Secret view key") + ":</b> " + currentWallet.secretViewKey
+ + "<br><b>" + qsTr("Public view key") + ":</b> " + currentWallet.publicViewKey
+ + "<br><b>" + qsTr("Secret spend key") + ":</b> " + currentWallet.secretSpendKey
+ + "<br><b>" + qsTr("Public spend key") + ":</b> " + currentWallet.publicSpendKey
+ seedPopup.open()
+ seedPopup.width = 600
+ seedPopup.height = 300
+ seedPopup.onCloseCallback = function() {
+ seedPopup.text = ""
}
} else {
@@ -437,6 +443,21 @@ Rectangle {
}
+ StandardDialog {
+ id: seedPopup
+ cancelVisible: false
+ okVisible: true
+ width:600
+ height:400
+
+ property var onCloseCallback
+ onAccepted: {
+ if (onCloseCallback) {
+ onCloseCallback()
+ }
+ }
+ }
+
// fires on every page load
function onPageCompleted() {
console.log("Settings page loaded");
diff --git a/src/libwalletqt/Wallet.h b/src/libwalletqt/Wallet.h
index 9477f896..1224b24d 100644
--- a/src/libwalletqt/Wallet.h
+++ b/src/libwalletqt/Wallet.h
@@ -41,6 +41,10 @@ class Wallet : public QObject
Q_PROPERTY(AddressBookModel * addressBookModel READ addressBookModel)
Q_PROPERTY(AddressBook * addressBook READ addressBook)
Q_PROPERTY(bool viewOnly READ viewOnly)
+ Q_PROPERTY(QString secretViewKey READ getSecretViewKey)
+ Q_PROPERTY(QString publicViewKey READ getPublicViewKey)
+ Q_PROPERTY(QString secretSpendKey READ getSecretSpendKey)
+ Q_PROPERTY(QString publicSpendKey READ getPublicSpendKey)
public:
@@ -231,6 +235,12 @@ public:
// check if fork rules should be used
Q_INVOKABLE bool useForkRules(quint8 version, quint64 earlyBlocks = 0) const;
+ //! Get wallet keys
+ QString getSecretViewKey() const {return QString::fromStdString(m_walletImpl->secretViewKey());}
+ QString getPublicViewKey() const {return QString::fromStdString(m_walletImpl->publicViewKey());}
+ QString getSecretSpendKey() const {return QString::fromStdString(m_walletImpl->secretSpendKey());}
+ QString getPublicSpendKey() const {return QString::fromStdString(m_walletImpl->publicSpendKey());}
+
// TODO: setListenter() when it implemented in API
signals:
// emitted on every event happened with wallet