mirror of
https://github.com/monero-project/monero-gui.git
synced 2024-11-16 15:58:11 +00:00
Replaced Loader with StackView; Fixed payment id generation
This commit is contained in:
parent
0ff3fd3212
commit
56c3579501
2 changed files with 72 additions and 52 deletions
115
MiddlePanel.qml
115
MiddlePanel.qml
|
@ -30,37 +30,74 @@ import QtQuick 2.2
|
|||
import QtQml 2.0
|
||||
import QtQuick.Controls 2.0
|
||||
import QtGraphicalEffects 1.0
|
||||
import "pages"
|
||||
|
||||
Rectangle {
|
||||
id: root
|
||||
property Transfer transferView: Transfer { }
|
||||
property Receive receiveView: Receive { }
|
||||
property History historyView: History { }
|
||||
property Item currentView
|
||||
|
||||
onCurrentViewChanged: {
|
||||
if (currentView) {
|
||||
stackView.replace(currentView)
|
||||
}
|
||||
}
|
||||
|
||||
color: "#F0EEEE"
|
||||
signal paymentClicked(string address, string paymentId, double amount, int mixinCount, int priority)
|
||||
signal generatePaymentIdInvoked()
|
||||
|
||||
states: [
|
||||
State {
|
||||
name: "Dashboard"
|
||||
PropertyChanges { target: loader; source: "pages/Dashboard.qml" }
|
||||
}, State {
|
||||
name: "History"
|
||||
PropertyChanges { target: loader; source: "pages/History.qml" }
|
||||
}, State {
|
||||
name: "Transfer"
|
||||
PropertyChanges { target: loader; source: "pages/Transfer.qml" }
|
||||
}, State {
|
||||
name: "Receive"
|
||||
PropertyChanges { target: loader; source: "pages/Receive.qml" }
|
||||
}, State {
|
||||
name: "AddressBook"
|
||||
PropertyChanges { target: loader; source: "pages/AddressBook.qml" }
|
||||
}, State {
|
||||
name: "Settings"
|
||||
PropertyChanges { target: loader; source: "pages/Settings.qml" }
|
||||
}, State {
|
||||
name: "Mining"
|
||||
PropertyChanges { target: loader; source: "pages/Mining.qml" }
|
||||
}
|
||||
]
|
||||
// states: [
|
||||
// State {
|
||||
// name: "Dashboard"
|
||||
// PropertyChanges { target: loader; source: "pages/Dashboard.qml" }
|
||||
// }, State {
|
||||
// name: "History"
|
||||
// PropertyChanges { target: loader; source: "pages/History.qml" }
|
||||
// }, State {
|
||||
// name: "Transfer"
|
||||
// PropertyChanges { target: loader; source: "pages/Transfer.qml" }
|
||||
// }, State {
|
||||
// name: "Receive"
|
||||
// PropertyChanges { target: loader; source: "pages/Receive.qml" }
|
||||
// }, State {
|
||||
// name: "AddressBook"
|
||||
// PropertyChanges { target: loader; source: "pages/AddressBook.qml" }
|
||||
// }, State {
|
||||
// name: "Settings"
|
||||
// PropertyChanges { target: loader; source: "pages/Settings.qml" }
|
||||
// }, State {
|
||||
// name: "Mining"
|
||||
// PropertyChanges { target: loader; source: "pages/Mining.qml" }
|
||||
// }
|
||||
// ]
|
||||
|
||||
states: [
|
||||
State {
|
||||
name: "Dashboard"
|
||||
PropertyChanges { }
|
||||
}, State {
|
||||
name: "History"
|
||||
PropertyChanges { target: root; currentView: historyView }
|
||||
}, State {
|
||||
name: "Transfer"
|
||||
PropertyChanges { target: root; currentView: transferView }
|
||||
}, State {
|
||||
name: "Receive"
|
||||
PropertyChanges { target: root; currentView: receiveView }
|
||||
}, State {
|
||||
name: "AddressBook"
|
||||
PropertyChanges { /*TODO*/ }
|
||||
}, State {
|
||||
name: "Settings"
|
||||
PropertyChanges { /*TODO*/ }
|
||||
}, State {
|
||||
name: "Mining"
|
||||
PropertyChanges { /*TODO*/ }
|
||||
}
|
||||
]
|
||||
|
||||
Row {
|
||||
id: styledRow
|
||||
|
@ -75,34 +112,18 @@ Rectangle {
|
|||
Rectangle { height: 4; width: parent.width / 5; color: "#FF4F41" }
|
||||
}
|
||||
|
||||
|
||||
|
||||
// TODO: replace loader with StackView
|
||||
|
||||
// StackView {
|
||||
// id: stackView
|
||||
// anchors.left: parent.left
|
||||
// anchors.right: parent.right
|
||||
// anchors.top: styledRow.bottom
|
||||
// anchors.bottom: parent.bottom
|
||||
// }
|
||||
|
||||
Loader {
|
||||
id: loader
|
||||
anchors.left: parent.left
|
||||
anchors.right: parent.right
|
||||
anchors.top: styledRow.bottom
|
||||
anchors.bottom: parent.bottom
|
||||
onLoaded: {
|
||||
console.log("Loaded " + item);
|
||||
}
|
||||
|
||||
StackView {
|
||||
id: stackView
|
||||
initialItem: transferView
|
||||
anchors.fill: parent
|
||||
anchors.margins: 4
|
||||
clip: true // otherwise animation will affect left panel
|
||||
}
|
||||
|
||||
/* connect "payment" click */
|
||||
Connections {
|
||||
ignoreUnknownSignals: false
|
||||
target: loader.item
|
||||
target: transferView
|
||||
onPaymentClicked : {
|
||||
console.log("MiddlePanel: paymentClicked")
|
||||
paymentClicked(address, paymentId, amount, mixinCount, priority)
|
||||
|
|
|
@ -43,14 +43,13 @@ Rectangle {
|
|||
|
||||
function updatePaymentId() {
|
||||
var payment_id = appWindow.persistentSettings.payment_id
|
||||
if (payment_id.length === 0) {
|
||||
payment_id = appWindow.wallet.generatePaymentId()
|
||||
if (typeof appWindow.currentWallet !== 'undefined') {
|
||||
payment_id = appWindow.currentWallet.generatePaymentId()
|
||||
appWindow.persistentSettings.payment_id = payment_id
|
||||
appWindow.currentWallet.payment_id = payment_id
|
||||
addressLine.text = appWindow.currentWallet.address
|
||||
integratedAddressLine.text = appWindow.currentWallet.integratedAddress(payment_id)
|
||||
}
|
||||
paymentIdLine.text = payment_id
|
||||
addressLine.text = appWindow.currentWallet.address
|
||||
integratedAddressLine.text = appWindow.currentWallet.integratedAddress(payment_id)
|
||||
}
|
||||
|
||||
Clipboard { id: clipboard }
|
||||
|
|
Loading…
Reference in a new issue