mirror of
https://github.com/monero-project/monero-gui.git
synced 2025-01-09 19:32:03 +02:00
Merge pull request #2057
bd2687c
flickable for wizardController (xmrdsc)
This commit is contained in:
commit
221a49a823
@ -26,13 +26,15 @@
|
|||||||
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
|
// STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
|
||||||
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
// THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
|
||||||
|
import QtQml 2.0
|
||||||
import QtQuick 2.7
|
import QtQuick 2.7
|
||||||
|
import QtQuick.Controls 2.0
|
||||||
import QtQuick.Controls 1.4
|
import QtQuick.Controls 1.4
|
||||||
import QtQuick.Controls.Styles 1.4
|
import QtQuick.Layouts 1.1
|
||||||
import QtQuick.Layouts 1.2
|
|
||||||
import QtQuick.Dialogs 1.2
|
import QtQuick.Dialogs 1.2
|
||||||
|
import QtGraphicalEffects 1.0
|
||||||
import moneroComponents.Wallet 1.0
|
import moneroComponents.Wallet 1.0
|
||||||
|
|
||||||
import "../js/Wizard.js" as Wizard
|
import "../js/Wizard.js" as Wizard
|
||||||
import "../js/Windows.js" as Windows
|
import "../js/Windows.js" as Windows
|
||||||
import "../js/Utils.js" as Utils
|
import "../js/Utils.js" as Utils
|
||||||
@ -104,6 +106,9 @@ Rectangle {
|
|||||||
// recovery made (restore wallet)
|
// recovery made (restore wallet)
|
||||||
property string walletRestoreMode: 'seed' // seed, keys, qr
|
property string walletRestoreMode: 'seed' // seed, keys, qr
|
||||||
|
|
||||||
|
// flickable margin
|
||||||
|
property int flickableHeightMargin
|
||||||
|
|
||||||
property int layoutScale: {
|
property int layoutScale: {
|
||||||
if(isMobile){
|
if(isMobile){
|
||||||
return 0;
|
return 0;
|
||||||
@ -182,75 +187,109 @@ Rectangle {
|
|||||||
State {
|
State {
|
||||||
name: "wizardLanguage"
|
name: "wizardLanguage"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardLanguageView }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardLanguageView }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardLanguageView.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardHome"
|
name: "wizardHome"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardHomeView }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardHomeView }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardHomeView.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardCreateWallet1"
|
name: "wizardCreateWallet1"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardCreateWallet1View }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardCreateWallet1View }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardCreateWallet1View.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardCreateWallet2"
|
name: "wizardCreateWallet2"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardCreateWallet2View }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardCreateWallet2View }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardCreateWallet2View.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardCreateWallet3"
|
name: "wizardCreateWallet3"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardCreateWallet3View }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardCreateWallet3View }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardCreateWallet3View.height + wizardController.flickableHeightMargin + 400 }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardCreateWallet4"
|
name: "wizardCreateWallet4"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardCreateWallet4View }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardCreateWallet4View }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardCreateWallet4View.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardRestoreWallet1"
|
name: "wizardRestoreWallet1"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardRestoreWallet1View }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardRestoreWallet1View }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardRestoreWallet1View.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardRestoreWallet2"
|
name: "wizardRestoreWallet2"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardRestoreWallet2View }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardRestoreWallet2View }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardRestoreWallet2View.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardRestoreWallet3"
|
name: "wizardRestoreWallet3"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardRestoreWallet3View }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardRestoreWallet3View }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardRestoreWallet3View.childrenRect.height + wizardController.flickableHeightMargin + 400 }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardRestoreWallet4"
|
name: "wizardRestoreWallet4"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardRestoreWallet4View }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardRestoreWallet4View }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardRestoreWallet4View.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardCreateDevice1"
|
name: "wizardCreateDevice1"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardCreateDevice1View }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardCreateDevice1View }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardCreateDevice1View.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardOpenWallet1"
|
name: "wizardOpenWallet1"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardOpenWallet1View }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardOpenWallet1View }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardOpenWallet1View.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardModeSelection"
|
name: "wizardModeSelection"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardModeSelectionView }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardModeSelectionView }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardModeSelectionView.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardModeRemoteNodeWarning"
|
name: "wizardModeRemoteNodeWarning"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardModeRemoteNodeWarningView }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardModeRemoteNodeWarningView }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardModeRemoteNodeWarningView.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}, State {
|
}, State {
|
||||||
name: "wizardModeBootstrap"
|
name: "wizardModeBootstrap"
|
||||||
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardModeBootstrapView }
|
PropertyChanges { target: wizardStateView; currentView: wizardStateView.wizardModeBootstrapView }
|
||||||
|
PropertyChanges { target: wizardFlickable; contentHeight: wizardStateView.wizardModeBootstrapView.childrenRect.height + wizardController.flickableHeightMargin }
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
StackView {
|
Flickable {
|
||||||
id: stackView
|
id: wizardFlickable
|
||||||
initialItem: wizardStateView.wizardLanguageView
|
|
||||||
anchors.fill: parent
|
anchors.fill: parent
|
||||||
clip: false
|
clip: true
|
||||||
|
|
||||||
delegate: StackViewDelegate {
|
ScrollBar.vertical: ScrollBar {
|
||||||
pushTransition: StackViewTransition {
|
parent: wizardFlickable.parent
|
||||||
PropertyAnimation {
|
anchors.left: parent.right
|
||||||
target: enterItem
|
anchors.leftMargin: 3
|
||||||
property: "x"
|
anchors.top: parent.top
|
||||||
from: target.width
|
anchors.topMargin: 4
|
||||||
to: 0
|
anchors.bottom: parent.bottom
|
||||||
duration: 300
|
}
|
||||||
easing.type: Easing.OutCubic
|
|
||||||
}
|
onFlickingChanged: {
|
||||||
PropertyAnimation {
|
releaseFocus();
|
||||||
target: exitItem
|
}
|
||||||
property: "x"
|
|
||||||
from: 0
|
StackView {
|
||||||
to: 0 - target.width
|
id: stackView
|
||||||
duration: 300
|
initialItem: wizardStateView.wizardLanguageView
|
||||||
easing.type: Easing.OutCubic
|
anchors.fill: parent
|
||||||
}
|
clip: true
|
||||||
|
|
||||||
|
delegate: StackViewDelegate {
|
||||||
|
pushTransition: StackViewTransition {
|
||||||
|
PropertyAnimation {
|
||||||
|
target: enterItem
|
||||||
|
property: "x"
|
||||||
|
from: target.width
|
||||||
|
to: 0
|
||||||
|
duration: 300
|
||||||
|
easing.type: Easing.OutCubic
|
||||||
|
}
|
||||||
|
PropertyAnimation {
|
||||||
|
target: exitItem
|
||||||
|
property: "x"
|
||||||
|
from: 0
|
||||||
|
to: 0 - target.width
|
||||||
|
duration: 300
|
||||||
|
easing.type: Easing.OutCubic
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -48,6 +48,7 @@ ColumnLayout {
|
|||||||
|
|
||||||
MoneroComponents.RadioButton {
|
MoneroComponents.RadioButton {
|
||||||
id: localNode
|
id: localNode
|
||||||
|
Layout.fillWidth: true
|
||||||
text: qsTr("Start a node automatically in background (recommended)") + translationManager.emptyString
|
text: qsTr("Start a node automatically in background (recommended)") + translationManager.emptyString
|
||||||
fontSize: 16 * scaleRatio
|
fontSize: 16 * scaleRatio
|
||||||
checked: !appWindow.persistentSettings.useRemoteNode && !isAndroid && !isIOS
|
checked: !appWindow.persistentSettings.useRemoteNode && !isAndroid && !isIOS
|
||||||
@ -59,8 +60,8 @@ ColumnLayout {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
visible: localNode.checked
|
|
||||||
id: blockchainFolderRow
|
id: blockchainFolderRow
|
||||||
|
visible: localNode.checked
|
||||||
spacing: 20 * scaleRatio
|
spacing: 20 * scaleRatio
|
||||||
|
|
||||||
Layout.topMargin: 8 * scaleRatio
|
Layout.topMargin: 8 * scaleRatio
|
||||||
@ -148,7 +149,6 @@ ColumnLayout {
|
|||||||
ColumnLayout {
|
ColumnLayout {
|
||||||
spacing: 8
|
spacing: 8
|
||||||
Layout.fillWidth: true
|
Layout.fillWidth: true
|
||||||
Layout.bottomMargin: 12 * scaleRatio
|
|
||||||
|
|
||||||
MoneroComponents.RemoteNodeEdit {
|
MoneroComponents.RemoteNodeEdit {
|
||||||
id: bootstrapNodeEdit
|
id: bootstrapNodeEdit
|
||||||
@ -176,25 +176,30 @@ ColumnLayout {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
MoneroComponents.RadioButton {
|
||||||
RowLayout {
|
id: remoteNode
|
||||||
MoneroComponents.RadioButton {
|
Layout.fillWidth: true
|
||||||
id: remoteNode
|
Layout.topMargin: 8 * scaleRatio
|
||||||
text: qsTr("Connect to a remote node") + translationManager.emptyString
|
text: qsTr("Connect to a remote node") + translationManager.emptyString
|
||||||
fontSize: 16 * scaleRatio
|
fontSize: 16 * scaleRatio
|
||||||
checked: appWindow.persistentSettings.useRemoteNode
|
checked: appWindow.persistentSettings.useRemoteNode
|
||||||
onClicked: {
|
onClicked: {
|
||||||
checked = true
|
checked = true
|
||||||
localNode.checked = false
|
localNode.checked = false
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
RowLayout {
|
ColumnLayout {
|
||||||
|
visible: remoteNode.checked
|
||||||
|
spacing: 0 * scaleRatio
|
||||||
|
|
||||||
|
Layout.topMargin: 8 * scaleRatio
|
||||||
|
Layout.fillWidth: true
|
||||||
|
|
||||||
MoneroComponents.RemoteNodeEdit {
|
MoneroComponents.RemoteNodeEdit {
|
||||||
Layout.minimumWidth: 300 * scaleRatio
|
|
||||||
opacity: remoteNode.checked
|
|
||||||
id: remoteNodeEdit
|
id: remoteNodeEdit
|
||||||
|
Layout.fillWidth: true
|
||||||
|
|
||||||
property var rna: persistentSettings.remoteNodeAddress
|
property var rna: persistentSettings.remoteNodeAddress
|
||||||
daemonAddrText: rna.search(":") != -1 ? rna.split(":")[0].trim() : ""
|
daemonAddrText: rna.search(":") != -1 ? rna.split(":")[0].trim() : ""
|
||||||
daemonPortText: rna.search(":") != -1 ? (rna.split(":")[1].trim() == "") ? appWindow.getDefaultDaemonRpcPort(persistentSettings.nettype) : persistentSettings.remoteNodeAddress.split(":")[1] : ""
|
daemonPortText: rna.search(":") != -1 ? (rna.split(":")[1].trim() == "") ? appWindow.getDefaultDaemonRpcPort(persistentSettings.nettype) : persistentSettings.remoteNodeAddress.split(":")[1] : ""
|
||||||
|
Loading…
Reference in New Issue
Block a user