Skip to content

Commit

Permalink
Save settings for each wizard page in "wizard.settings" object and
Browse files Browse the repository at this point in the history
diplay overview at the last page
  • Loading branch information
mbg033 committed Jan 26, 2016
1 parent 78b5565 commit 63e4d19
Show file tree
Hide file tree
Showing 5 changed files with 59 additions and 16 deletions.
7 changes: 7 additions & 0 deletions wizard/WizardCreateWallet.qml
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,12 @@ Item {

onOpacityChanged: visible = opacity !== 0

function saveSettings(settingsObject) {
settingsObject['account_name'] = accountName.text
settingsObject['words'] = wordsText.text
settingsObject['wallet_path'] = fileUrlInput.text
}

Row {
id: dotsRow
anchors.top: parent.top
Expand Down Expand Up @@ -106,6 +112,7 @@ Item {
height: 62

TextInput {
id: accountName
anchors.fill: parent
horizontalAlignment: TextInput.AlignHCenter
verticalAlignment: TextInput.AlignVCenter
Expand Down
9 changes: 9 additions & 0 deletions wizard/WizardDonation.qml
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,12 @@ Item {

onOpacityChanged: visible = opacity !== 0

function saveSettings(settingsObject) {
settingsObject['auto_donations_enabled'] = enableAutoDonationCheckBox.checked;
settingsObject['auto_donations_amount'] = autoDonationAmountText.text;
settingsObject['allow_background_mining'] = allowBackgroundMiningCheckBox.checked;
}

Row {
id: dotsRow
anchors.top: parent.top
Expand Down Expand Up @@ -94,6 +100,7 @@ Item {
spacing: 2

CheckBox {
id: enableAutoDonationCheckBox
anchors.verticalCenter: parent.verticalCenter
text: qsTr("Enable auto-donations of?")
background: "#F0EEEE"
Expand All @@ -110,6 +117,7 @@ Item {
width: 41

TextInput {
id: autoDonationAmountText
anchors.fill: parent
verticalAlignment: Text.AlignVCenter
horizontalAlignment: Text.AlignHCenter
Expand Down Expand Up @@ -155,6 +163,7 @@ Item {
spacing: 12

CheckBox {
id: allowBackgroundMiningCheckBox
text: qsTr("Allow background mining?")
anchors.left: parent.left
anchors.right: parent.right
Expand Down
19 changes: 18 additions & 1 deletion wizard/WizardFinish.qml
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,22 @@ Item {

onOpacityChanged: visible = opacity !== 0

function buildSettingsString() {
var str = "<br>" + qsTr("<b>Language:</b> ") + wizard.settings['language'] + "<br>"
+ qsTr("<b>Account name:</b> ") + wizard.settings['account_name'] + "<br>"
+ qsTr("<b>Words:</b> ") + wizard.settings['words'] + "<br>"
+ qsTr("<b>Wallet Path: </b>") + wizard.settings['wallet_path'] + "<br>"
+ qsTr("<b>Enable auto donation: </b>") + wizard.settings['auto_donations_enabled'] + "<br>"
+ qsTr("<b>Auto donation amount: </b>") + wizard.settings['auto_donations_amount'] + "<br>"
+ qsTr("<b>Allow background mining: </b>") + wizard.settings['allow_background_mining'] + "<br>"
return str;
}
function updateSettingsSummary() {
settingsText.text = qsTr("An overview of your Monero configuration is below:")
+ "<br>"
+ buildSettingsString();
}

Row {
id: dotsRow
anchors.top: parent.top
Expand Down Expand Up @@ -84,14 +100,15 @@ Item {
}

Text {
id: settingsText
anchors.left: parent.left
anchors.right: parent.right
font.family: "Arial"
font.pixelSize: 18
wrapMode: Text.Wrap
textFormat: Text.RichText
//renderType: Text.NativeRendering
color: "#4A4646"
text: qsTr("An overview of your Monero configuration is below:")
}
}
}
30 changes: 16 additions & 14 deletions wizard/WizardMain.qml
Original file line number Diff line number Diff line change
Expand Up @@ -32,14 +32,22 @@ import "../components"
Rectangle {
id: wizard
property alias nextButton : nextButton

property var settings : ({})
property int currentPage: 0
property var pages: [welcomePage, optionsPage, createWalletPage, passwordPage, /*configurePage,*/ donationPage, finishPage ]

signal useMoneroClicked()
border.color: "#DBDBDB"
border.width: 1
color: "#FFFFFF"

function switchPage(next) {

// save settings for current page;
if (typeof pages[currentPage].saveSettings !== 'undefined') {
pages[currentPage].saveSettings(settings);
}

if(next === false) {
if(currentPage > 0) {
pages[currentPage].opacity = 0
Expand All @@ -52,10 +60,15 @@ Rectangle {
}
}

// disallow "next" button until password matches
// disallow "next" button until passwords match
if (pages[currentPage] === passwordPage) {
nextButton.visible = passwordPage.passwordValid
}

// display settings summary
if (pages[currentPage] === finishPage) {
finishPage.updateSettingsSummary();
}
}


Expand Down Expand Up @@ -84,8 +97,7 @@ Rectangle {
}
}

property int currentPage: 0
property var pages: [welcomePage, optionsPage, createWalletPage, passwordPage, /*configurePage,*/ donationPage, finishPage ]



WizardWelcome {
Expand Down Expand Up @@ -129,16 +141,6 @@ Rectangle {
anchors.rightMargin: 50
}

// WizardConfigure {
// id: configurePage
// anchors.top: parent.top
// anchors.bottom: parent.bottom
// anchors.right: nextButton.left
// anchors.left: prevButton.right
// anchors.leftMargin: 50
// anchors.rightMargin: 50
// }

WizardDonation {
id: donationPage
anchors.top: parent.top
Expand Down
10 changes: 9 additions & 1 deletion wizard/WizardWelcome.qml
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,10 @@ Item {

onOpacityChanged: visible = opacity !== 0

function saveSettings(settingsObject) {
settingsObject['language'] = languagesModel.get(gridView.currentIndex).name
}

Column {
id: headerColumn
anchors.left: parent.left
Expand Down Expand Up @@ -76,6 +80,8 @@ Item {

XmlRole { name: "name"; query: "@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
XmlRole { name: "isCurrent"; query: "@enabled/string()" }
}

Expand Down Expand Up @@ -125,7 +131,9 @@ Item {
MouseArea {
id: delegateArea
anchors.fill: parent
onClicked: gridView.currentIndex = index
onClicked: {
gridView.currentIndex = index
}
}
}
}
Expand Down

0 comments on commit 63e4d19

Please sign in to comment.