diff --git a/main.cpp b/main.cpp index e356659c..387c4b13 100644 --- a/main.cpp +++ b/main.cpp @@ -114,7 +114,7 @@ int main(int argc, char *argv[]) QObject::connect(eventFilter, SIGNAL(mousePressed(QVariant,QVariant,QVariant)), rootObject, SLOT(mousePressed(QVariant,QVariant,QVariant))); QObject::connect(eventFilter, SIGNAL(mouseReleased(QVariant,QVariant,QVariant)), rootObject, SLOT(mouseReleased(QVariant,QVariant,QVariant))); - WalletManager::instance()->setLogLevel(WalletManager::LogLevel_Silent); + WalletManager::instance()->setLogLevel(WalletManager::LogLevel_Max); return app.exec(); } diff --git a/main.qml b/main.qml index e03aec5c..4597e65c 100644 --- a/main.qml +++ b/main.qml @@ -143,7 +143,8 @@ ApplicationWindow { connectWallet(wizard.settings['wallet']) } else { var wallet_path = walletPath(); - console.log("opening wallet at: ", wallet_path, "with password: ", appWindow.password); + // console.log("opening wallet at: ", wallet_path, "with password: ", appWindow.password); + console.log("opening wallet at: ", wallet_path); walletManager.openWalletAsync(wallet_path, appWindow.password, persistentSettings.testnet); } diff --git a/wizard/WizardCreateWallet.qml b/wizard/WizardCreateWallet.qml index 43b8158f..f0344a94 100644 --- a/wizard/WizardCreateWallet.qml +++ b/wizard/WizardCreateWallet.qml @@ -39,6 +39,7 @@ Item { NumberAnimation { duration: 100; easing.type: Easing.InQuad } } + onOpacityChanged: visible = opacity !== 0 //! function called each time we display this page diff --git a/wizard/WizardFinish.qml b/wizard/WizardFinish.qml index 431b5a89..48b4ae61 100644 --- a/wizard/WizardFinish.qml +++ b/wizard/WizardFinish.qml @@ -45,6 +45,8 @@ Item { + qsTr("Enable auto donation: ") + wizard.settings['auto_donations_enabled'] + "
" + qsTr("Auto donation amount: ") + wizard.settings['auto_donations_amount'] + "
" + qsTr("Allow background mining: ") + wizard.settings['allow_background_mining'] + "
" + + qsTr("Daemon address: ") + wizard.settings['daemon_address'] + "
" + + qsTr("testnet: ") + wizard.settings['testnet'] + "
" + translationManager.emptyString return str; } diff --git a/wizard/WizardMain.qml b/wizard/WizardMain.qml index 488bd959..7466cdf8 100644 --- a/wizard/WizardMain.qml +++ b/wizard/WizardMain.qml @@ -122,7 +122,6 @@ Rectangle { } // protecting wallet with password - console.log("Protecting wallet with password: " + settings.wallet_password) settings.wallet.setPassword(settings.wallet_password); // saving wallet_filename; @@ -136,6 +135,9 @@ Rectangle { appWindow.persistentSettings.allow_background_mining = settings.allow_background_mining appWindow.persistentSettings.auto_donations_enabled = settings.auto_donations_enabled appWindow.persistentSettings.auto_donations_amount = settings.auto_donations_amount + appWindow.persistentSettings.daemon_address = settings.daemon_address + appWindow.persistentSettings.testnet = settings.testnet + } // reading settings from persistent storage diff --git a/wizard/WizardOptions.qml b/wizard/WizardOptions.qml index b35dbee4..8f9a2753 100644 --- a/wizard/WizardOptions.qml +++ b/wizard/WizardOptions.qml @@ -27,6 +27,9 @@ // THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. import QtQuick 2.2 +import QtQml 2.2 +import QtQuick.Layouts 1.1 +import "../components" Item { id: page @@ -34,6 +37,18 @@ Item { signal recoveryWalletClicked() opacity: 0 visible: false + + function saveDaemonAddress() { + wizard.settings["daemon_address"] = daemonAddress.text + wizard.settings["testnet"] = testNet.checked + } + + QtObject { + id: d + readonly property string daemonAddressTestnet : "localhost:38081" + readonly property string daemonAddressMainnet : "localhost:18081" + } + Behavior on opacity { NumberAnimation { duration: 100; easing.type: Easing.InQuad } } @@ -76,6 +91,7 @@ Item { } Row { + id: selectPath anchors.verticalCenterOffset: 35 anchors.centerIn: parent spacing: 40 @@ -98,7 +114,10 @@ Item { id: createWalletArea anchors.fill: parent hoverEnabled: true - onClicked: page.createWalletClicked() + onClicked: { + page.saveDaemonAddress() + page.createWalletClicked() + } } } @@ -129,7 +148,10 @@ Item { id: recoverWalletArea anchors.fill: parent hoverEnabled: true - onClicked: page.recoveryWalletClicked() + onClicked: { + page.saveDaemonAddress() + page.recoveryWalletClicked() + } } } @@ -142,4 +164,62 @@ Item { } } } + + + + ColumnLayout { + anchors.top: selectPath.bottom + anchors.left: parent.left + anchors.right: parent.right + anchors.topMargin: 35 + + spacing: 5 + Layout.fillWidth: true + + Rectangle { + Layout.alignment: Qt.AlignCenter + width: 200 + height: 1 + color: "gray" + } + + Text { + Layout.alignment: Qt.AlignCenter + font.family: "Arial" + font.pixelSize: 16 + + color: "#4A4646" + wrapMode: Text.Wrap + text: qsTr("Please setup daemon address below.") + + translationManager.emptyString + } + + RowLayout { + spacing: 20 + Layout.alignment: Qt.AlignCenter + + LineEdit { + id: daemonAddress + Layout.alignment: Qt.AlignCenter + width: 200 + fontSize: 14 + text: testNet.checked ? d.daemonAddressTestnet : d.daemonAddressMainnet + } + + CheckBox { + id: testNet + Layout.alignment: Qt.AlignCenter + anchors.verticalCenter: parent.verticalCenter + text: qsTr("Testnet") + translationManager.emptyString + background: "#F0EEEE" + fontColor: "#4A4646" + fontSize: 16 + checkedIcon: "../images/checkedVioletIcon.png" + uncheckedIcon: "../images/uncheckedIcon.png" + checked: false + } + } + } + } + diff --git a/wizard/WizardWelcome.qml b/wizard/WizardWelcome.qml index bc4c5a1b..46448e2c 100644 --- a/wizard/WizardWelcome.qml +++ b/wizard/WizardWelcome.qml @@ -28,14 +28,25 @@ import QtQuick 2.2 import QtQuick.XmlListModel 2.0 +import QtQuick.Layouts 1.1 +import QtQml 2.2 + Item { Behavior on opacity { NumberAnimation { duration: 100; easing.type: Easing.InQuad } } + QtObject { + id: d + readonly property string daemonAddressTestnet : "localhost:38018"; + readonly property string daemonAddressMainnet : "localhost:18018"; + } + onOpacityChanged: visible = opacity !== 0 + + function onPageClosed(settingsObject) { var lang = languagesModel.get(gridView.currentIndex); settingsObject['language'] = lang.display_name; @@ -44,7 +55,7 @@ Item { return true } - + // Welcome text Column { id: headerColumn anchors.left: parent.left @@ -66,8 +77,8 @@ Item { wrapMode: Text.Wrap // hack to implement dynamic translation // https://wiki.qt.io/How_to_do_dynamic_translation_in_QML - text: qsTr("Welcome") + - translationManager.emptyString + text: qsTr("Welcome") /*+ + translationManager.emptyString*/ } Text { @@ -80,10 +91,10 @@ Item { color: "#4A4646" wrapMode: Text.Wrap text: qsTr("Please choose a language and regional format.") - + translationManager.emptyString +// + translationManager.emptyString } } - + // Flags model XmlListModel { id: languagesModel source: "/lang/languages.xml" @@ -100,6 +111,7 @@ Item { } + // Flags view GridView { id: gridView cellWidth: 140 @@ -158,4 +170,6 @@ Item { } + + }