status-desktop/ui/app/AppLayouts/Profile/views/wallet/NetworksView.qml

113 lines
3.4 KiB
QML
Raw Normal View History

import QtQuick 2.13
import shared.status 1.0
import shared.popups 1.0
import shared.panels 1.0
2022-03-02 12:54:58 +00:00
import StatusQ.Controls 0.1
import StatusQ.Core 0.1
import StatusQ.Core.Theme 0.1
import StatusQ.Components 0.1
import StatusQ.Popups.Dialog 0.1
2022-03-02 12:54:58 +00:00
import utils 1.0
import SortFilterProxyModel 0.2
import "../../stores"
2022-03-02 12:54:58 +00:00
import "../../controls"
2022-03-02 12:54:58 +00:00
Item {
id: root
2022-03-02 12:54:58 +00:00
signal goBack
property WalletStore walletStore
signal editNetwork(var network)
2022-03-02 12:54:58 +00:00
Column {
id: column
anchors.top: parent.top
anchors.left: parent.left
width: parent.width
spacing: 0
2022-03-02 12:54:58 +00:00
Repeater {
id: layer1List
model: SortFilterProxyModel {
sourceModel: walletStore.combinedNetworks
filters: ValueFilter {
roleName: "layer"
value: 1
}
}
2022-03-02 12:54:58 +00:00
delegate: WalletNetworkDelegate {
objectName: "walletNetworkDelegate_" + network.chainName + '_' + network.chainId
network: areTestNetworksEnabled ? model.test: model.prod
areTestNetworksEnabled: walletStore.areTestNetworksEnabled
onClicked: editNetwork(walletStore.getNetworkData(model))
2022-03-02 12:54:58 +00:00
}
}
Separator {
height: Style.current.padding
}
2022-03-02 12:54:58 +00:00
StatusSectionHeadline {
leftPadding: Style.current.padding
rightPadding: Style.current.padding
2022-03-02 12:54:58 +00:00
text: qsTr("Layer 2")
topPadding: Style.current.smallPadding
bottomPadding: Style.current.smallPadding
2022-03-02 12:54:58 +00:00
}
Repeater {
id: layer2List
model: SortFilterProxyModel {
sourceModel: walletStore.combinedNetworks
filters: ValueFilter {
roleName: "layer"
value: 2
}
}
2022-03-02 12:54:58 +00:00
delegate: WalletNetworkDelegate {
objectName: "walletNetworkDelegate_" + network.chainName + '_' + network.chainId
network: areTestNetworksEnabled ? model.test: model.prod
areTestNetworksEnabled: walletStore.areTestNetworksEnabled
onClicked: editNetwork(walletStore.getNetworkData(model))
2022-03-02 12:54:58 +00:00
}
}
Separator {
height: Style.current.padding
}
StatusSectionHeadline {
leftPadding: Style.current.padding
rightPadding: Style.current.padding
text: qsTr("Advanced")
topPadding: Style.current.smallPadding
bottomPadding: Style.current.smallPadding
}
StatusListItem {
width: parent.width
asset.name: "settings"
asset.color: Theme.palette.warningColor1
asset.bgColor: Theme.palette.warningColor3
title: qsTr("Testnet mode")
subTitle: qsTr("Switch entire Status app to testnet only mode")
onClicked: testnetSwitch.onToggled()
components: [
StatusSwitch {
id: testnetSwitch
objectName: "testnetModeSwitch"
checked: walletStore.areTestNetworksEnabled
onToggled: {
checked = Qt.binding(() => walletStore.areTestNetworksEnabled)
Global.openTestnetPopup()
}
}
]
}
}
2022-03-15 13:38:20 +00:00
}