aboutsummaryrefslogtreecommitdiff
path: root/wizard
diff options
context:
space:
mode:
authorIlya Kitaev <mbg033@gmail.com>2016-06-10 16:41:13 +0300
committerIlya Kitaev <mbg033@gmail.com>2016-06-10 16:41:13 +0300
commitfd50e6f9a3bc445cb3c0d21b7a0f584e95b44450 (patch)
treee942ec37af313d0e51a2f7f7eca8f45ff834b679 /wizard
parent5c10be325103d668884fc5e463aaa59c726d4f8e (diff)
downloadmonzero-gui-fd50e6f9a3bc445cb3c0d21b7a0f584e95b44450.tar.gz
monzero-gui-fd50e6f9a3bc445cb3c0d21b7a0f584e95b44450.tar.xz
monzero-gui-fd50e6f9a3bc445cb3c0d21b7a0f584e95b44450.zip
new wallet wizard: wallet created in temporary directory and moved to
the destination at the final step
Diffstat (limited to 'wizard')
-rw-r--r--wizard/WizardCreateWallet.qml25
-rw-r--r--wizard/WizardDonation.qml2
-rw-r--r--wizard/WizardMain.qml7
-rw-r--r--wizard/WizardManageWalletUI.qml2
-rw-r--r--wizard/WizardPassword.qml2
-rw-r--r--wizard/WizardRecoveryWallet.qml2
-rw-r--r--wizard/WizardWelcome.qml13
7 files changed, 36 insertions, 17 deletions
diff --git a/wizard/WizardCreateWallet.qml b/wizard/WizardCreateWallet.qml
index 346627dc..653db251 100644
--- a/wizard/WizardCreateWallet.qml
+++ b/wizard/WizardCreateWallet.qml
@@ -40,18 +40,23 @@ Item {
onOpacityChanged: visible = opacity !== 0
- function saveSettings(settingsObject) {
+ //! function called each time we display this page
+
+ function onPageClosed(settingsObject) {
settingsObject['account_name'] = uiItem.accountNameText
settingsObject['words'] = uiItem.wordsTexttext
settingsObject['wallet_path'] = uiItem.walletPath
+ // put wallet files to the subdirectory with the same name as
+ // wallet name
var new_wallet_filename = settingsObject.wallet_path + "/"
+ + settingsObject.account_name + "/"
+ settingsObject.account_name;
// moving wallet files to the new destination, if user changed it
if (new_wallet_filename !== settingsObject.wallet_filename) {
// using previously saved wallet;
- settingsObject.wallet.rename(new_wallet_filename);
+ settingsObject.wallet.store(new_wallet_filename);
//walletManager.moveWallet(settingsObject.wallet_filename, new_wallet_filename);
}
@@ -59,10 +64,18 @@ Item {
settingsObject['wallet_filename'] = new_wallet_filename;
}
+ //! function called each time we hide this page
+ //
+
+
function createWallet(settingsObject) {
- var wallet_filename = uiItem.walletPath + "/" + uiItem.accountNameText
+ // TODO: create wallet in temporary filename and a) move it to the path specified by user after the final
+ // page submitted or b) delete it when program closed before reaching final page
+
+ var wallet_filename = oshelper.temporaryFilename();
if (typeof settingsObject.wallet === 'undefined') {
- var wallet = walletManager.createWallet(wallet_filename, "", settingsObject.locale)
+ //var wallet = walletManager.createWallet(wallet_filename, "", settingsObject.language)
+ var wallet = walletManager.createWallet(wallet_filename, "", settingsObject.wallet_language)
uiItem.wordsTextItem.memoText = wallet.seed
// saving wallet in "global" settings object
// TODO: wallet should have a property pointing to the file where it stored or loaded from
@@ -70,10 +83,12 @@ Item {
} else {
print("wallet already created. we just stepping back");
}
-
settingsObject.wallet_filename = wallet_filename
}
+
+
+
WizardManageWalletUI {
id: uiItem
titleText: qsTr("A new wallet has been created for you")
diff --git a/wizard/WizardDonation.qml b/wizard/WizardDonation.qml
index d42c266e..51a28029 100644
--- a/wizard/WizardDonation.qml
+++ b/wizard/WizardDonation.qml
@@ -38,7 +38,7 @@ Item {
onOpacityChanged: visible = opacity !== 0
- function saveSettings(settingsObject) {
+ function onPageClosed(settingsObject) {
settingsObject['auto_donations_enabled'] = enableAutoDonationCheckBox.checked;
settingsObject['auto_donations_amount'] = autoDonationAmountText.text;
settingsObject['allow_background_mining'] = allowBackgroundMiningCheckBox.checked;
diff --git a/wizard/WizardMain.qml b/wizard/WizardMain.qml
index 51e0baf3..a19c622c 100644
--- a/wizard/WizardMain.qml
+++ b/wizard/WizardMain.qml
@@ -49,8 +49,8 @@ Rectangle {
function switchPage(next) {
// save settings for current page;
- if (typeof pages[currentPage].saveSettings !== 'undefined') {
- pages[currentPage].saveSettings(settings);
+ if (typeof pages[currentPage].onPageClosed !== 'undefined') {
+ pages[currentPage].onPageClosed(settings);
}
print ("switchpage: start: currentPage: ", currentPage);
@@ -61,7 +61,6 @@ Rectangle {
pages[currentPage].opacity = 1;
handlePageChanged();
}
-
}
function handlePageChanged() {
@@ -91,9 +90,9 @@ Rectangle {
nextButton.enabled = true
}
-
}
+
function openCreateWalletPage() {
print ("show create wallet page");
pages[currentPage].opacity = 0;
diff --git a/wizard/WizardManageWalletUI.qml b/wizard/WizardManageWalletUI.qml
index ce035f0a..58f4e59a 100644
--- a/wizard/WizardManageWalletUI.qml
+++ b/wizard/WizardManageWalletUI.qml
@@ -206,7 +206,7 @@ Item {
verticalAlignment: Text.AlignVCenter
selectByMouse: true
- text: moneroAccountsDir + "/My Wallet"
+ text: moneroAccountsDir + "/"
onFocusChanged: {
if(focus) {
fileDialog.folder = text
diff --git a/wizard/WizardPassword.qml b/wizard/WizardPassword.qml
index 1bcc6213..aca45d4d 100644
--- a/wizard/WizardPassword.qml
+++ b/wizard/WizardPassword.qml
@@ -43,7 +43,7 @@ Item {
onOpacityChanged: visible = opacity !== 0
- function saveSettings(settingsObject) {
+ function onPageClosed(settingsObject) {
settingsObject.wallet.setPassword(passwordItem.password)
}
diff --git a/wizard/WizardRecoveryWallet.qml b/wizard/WizardRecoveryWallet.qml
index 572d776b..e7fd6c0d 100644
--- a/wizard/WizardRecoveryWallet.qml
+++ b/wizard/WizardRecoveryWallet.qml
@@ -40,7 +40,7 @@ Item {
onOpacityChanged: visible = opacity !== 0
- function saveSettings(settingsObject) {
+ function onPageClosed(settingsObject) {
settingsObject['account_name'] = uiItem.accountNameText
settingsObject['words'] = uiItem.wordsTexttext
settingsObject['wallet_path'] = uiItem.walletPath
diff --git a/wizard/WizardWelcome.qml b/wizard/WizardWelcome.qml
index 208a7994..bdd88b70 100644
--- a/wizard/WizardWelcome.qml
+++ b/wizard/WizardWelcome.qml
@@ -36,8 +36,11 @@ Item {
onOpacityChanged: visible = opacity !== 0
- function saveSettings(settingsObject) {
- settingsObject['language'] = languagesModel.get(gridView.currentIndex).name
+ function onPageClosed(settingsObject) {
+ var lang = languagesModel.get(gridView.currentIndex);
+ settingsObject['language'] = lang.display_name;
+ settingsObject['wallet_language'] = lang.wallet_name;
+ settingsObject['locale'] = lang.locale;
}
Column {
@@ -78,7 +81,9 @@ Item {
source: "/lang/languages.xml"
query: "/languages/language"
- XmlRole { name: "name"; query: "@name/string()" }
+ XmlRole { name: "display_name"; query: "@display_name/string()" }
+ XmlRole { name: "locale"; query: "@locale/string()" }
+ XmlRole { name: "wallet_name"; query: "@wallet_name/string()" }
XmlRole { name: "flag"; query: "@flag/string()" }
// TODO: XmlListModel is read only, we should store current language somewhere else
// and set current language accordingly
@@ -126,7 +131,7 @@ Item {
font.bold: gridView.currentIndex === index
elide: Text.ElideRight
color: "#3F3F3F"
- text: name
+ text: display_name
}
MouseArea {
id: delegateArea