300 lines
9.8 KiB
QML
300 lines
9.8 KiB
QML
import QtQuick 2.13
|
|
import QtQuick.Controls 2.13
|
|
import QtQuick.Layouts 1.13
|
|
import QtGraphicalEffects 1.13
|
|
import "../../../../imports"
|
|
import "../../../../shared"
|
|
import "../../../../shared/status"
|
|
|
|
Item {
|
|
id: advancedContainer
|
|
Layout.fillHeight: true
|
|
Layout.fillWidth: true
|
|
clip: true
|
|
|
|
Column {
|
|
id: generalColumn
|
|
anchors.top: parent.top
|
|
anchors.topMargin: topMargin
|
|
width: profileContainer.profileContentWidth
|
|
|
|
anchors.horizontalCenter: parent.horizontalCenter
|
|
|
|
StatusSettingsLineButton {
|
|
//% "Network"
|
|
text: qsTrId("network")
|
|
currentValue: utilsModel.getNetworkName()
|
|
onClicked: networksModal.open()
|
|
}
|
|
|
|
StatusSettingsLineButton {
|
|
//% "Fleet"
|
|
text: qsTrId("fleet")
|
|
currentValue: profileModel.fleets.fleet
|
|
onClicked: fleetModal.open()
|
|
}
|
|
|
|
StatusSettingsLineButton {
|
|
//% "Minimize on close"
|
|
text: qsTrId("minimize-on-close")
|
|
isSwitch: true
|
|
switchChecked: !appSettings.quitOnClose
|
|
onClicked: function (checked) {
|
|
appSettings.quitOnClose = !checked
|
|
}
|
|
}
|
|
|
|
Item {
|
|
id: spacer1
|
|
height: Style.current.bigPadding
|
|
width: parent.width
|
|
}
|
|
|
|
Separator {
|
|
anchors.topMargin: Style.current.bigPadding
|
|
anchors.left: parent.left
|
|
anchors.leftMargin: -Style.current.padding
|
|
anchors.right: parent.right
|
|
anchors.rightMargin: -Style.current.padding
|
|
}
|
|
|
|
StatusSectionHeadline {
|
|
//% "Experimental features"
|
|
text: qsTrId("experimental-features")
|
|
topPadding: Style.current.bigPadding
|
|
bottomPadding: Style.current.padding
|
|
}
|
|
|
|
StatusSettingsLineButton {
|
|
//% "Wallet"
|
|
text: qsTrId("wallet")
|
|
isSwitch: true
|
|
switchChecked: appSettings.isWalletEnabled
|
|
onClicked: {
|
|
if (!appSettings.isWalletEnabled) {
|
|
confirmationPopup.settingsProp = "isWalletEnabled"
|
|
confirmationPopup.open()
|
|
} else {
|
|
appSettings.isWalletEnabled = false
|
|
}
|
|
}
|
|
}
|
|
|
|
StatusSettingsLineButton {
|
|
//% "Dapp Browser"
|
|
text: qsTrId("dapp-browser")
|
|
isSwitch: true
|
|
switchChecked: appSettings.isBrowserEnabled
|
|
onClicked: {
|
|
if (!appSettings.isBrowserEnabled) {
|
|
confirmationPopup.settingsProp = "isBrowserEnabled"
|
|
confirmationPopup.open()
|
|
} else {
|
|
appSettings.isBrowserEnabled = false
|
|
}
|
|
}
|
|
}
|
|
|
|
StatusSettingsLineButton {
|
|
//% "Communities"
|
|
text: qsTrId("communities")
|
|
isSwitch: true
|
|
switchChecked: appSettings.communitiesEnabled
|
|
onClicked: {
|
|
if (!appSettings.communitiesEnabled) {
|
|
confirmationPopup.settingsProp = "communitiesEnabled"
|
|
confirmationPopup.open()
|
|
} else {
|
|
appSettings.communitiesEnabled = false
|
|
}
|
|
}
|
|
}
|
|
|
|
StatusSettingsLineButton {
|
|
//% "Activity Center"
|
|
text: qsTrId("activity-center")
|
|
isSwitch: true
|
|
switchChecked: appSettings.isActivityCenterEnabled
|
|
onClicked: {
|
|
if (!appSettings.isActivityCenterEnabled) {
|
|
confirmationPopup.settingsProp = "isActivityCenterEnabled"
|
|
confirmationPopup.open()
|
|
} else {
|
|
appSettings.isActivityCenterEnabled = false
|
|
}
|
|
}
|
|
}
|
|
|
|
StatusSettingsLineButton {
|
|
id: onlineUsers
|
|
//% "Online users"
|
|
text: qsTrId("online-users")
|
|
isSwitch: true
|
|
switchChecked: appSettings.showOnlineUsers
|
|
onClicked: {
|
|
appSettings.showOnlineUsers = !appSettings.showOnlineUsers
|
|
}
|
|
}
|
|
|
|
Loader {
|
|
active: onlineUsers.switchChecked
|
|
anchors.left: parent.left
|
|
anchors.right: parent.right
|
|
sourceComponent: StatusSettingsLineButton {
|
|
//% "Broadcast user status"
|
|
text: qsTrId("broadcast-user-status")
|
|
isSwitch: true
|
|
switchChecked: profileModel.profile.sendUserStatus
|
|
onClicked: function (checked) {
|
|
if (profileModel.profile.sendUserStatus !== checked) {
|
|
profileModel.setSendUserStatus(checked)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
StatusSectionHeadline {
|
|
//% "Bloom filter level"
|
|
text: qsTrId("bloom-filter-level")
|
|
topPadding: Style.current.bigPadding
|
|
bottomPadding: Style.current.padding
|
|
}
|
|
|
|
Row {
|
|
spacing: 11
|
|
|
|
Component {
|
|
id: bloomConfirmationDialogComponent
|
|
ConfirmationDialog {
|
|
property string mode: "normal"
|
|
|
|
id: confirmDialog
|
|
//% "Warning!"
|
|
title: qsTrId("close-app-title")
|
|
//% "The account will be logged out. When you login again, the selected mode will be enabled"
|
|
confirmationText: qsTrId("the-account-will-be-logged-out--when-you-login-again--the-selected-mode-will-be-enabled")
|
|
onConfirmButtonClicked: {
|
|
nodeModel.setBloomLevel(mode)
|
|
}
|
|
onClosed: {
|
|
switch(nodeModel.bloomLevel){
|
|
case "light": btnBloomLight.click(); break;
|
|
case "normal": btnBloomNormal.click(); break;
|
|
case "full": btnBloomFull.click(); break;
|
|
}
|
|
destroy()
|
|
}
|
|
}
|
|
}
|
|
|
|
ButtonGroup {
|
|
id: bloomGroup
|
|
}
|
|
|
|
BloomSelectorButton {
|
|
id: btnBloomLight
|
|
buttonGroup: bloomGroup
|
|
checkedByDefault: nodeModel.bloomLevel == "light"
|
|
//% "Light Node"
|
|
btnText: qsTrId("light-node")
|
|
onToggled: {
|
|
if (nodeModel.bloomLevel != "light") {
|
|
openPopup(bloomConfirmationDialogComponent, {mode: "light"})
|
|
} else {
|
|
btnBloomLight.click()
|
|
}
|
|
}
|
|
}
|
|
|
|
BloomSelectorButton {
|
|
id: btnBloomNormal
|
|
buttonGroup: bloomGroup
|
|
checkedByDefault: nodeModel.bloomLevel == "normal"
|
|
//% "Normal"
|
|
btnText: qsTrId("normal")
|
|
onToggled: {
|
|
if (nodeModel.bloomLevel != "normal") {
|
|
openPopup(bloomConfirmationDialogComponent, {mode: "normal"})
|
|
} else {
|
|
btnBloomNormal.click()
|
|
}
|
|
}
|
|
}
|
|
|
|
BloomSelectorButton {
|
|
id: btnBloomFull
|
|
buttonGroup: bloomGroup
|
|
checkedByDefault: nodeModel.bloomLevel == "full"
|
|
//% "Full Node"
|
|
btnText: qsTrId("full-node")
|
|
onToggled: {
|
|
if (nodeModel.bloomLevel != "full") {
|
|
openPopup(bloomConfirmationDialogComponent, {mode: "full"})
|
|
} else {
|
|
btnBloomFull.click()
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
StatusSettingsLineButton {
|
|
//% "GIF Widget"
|
|
text: qsTrId("gif-widget")
|
|
isSwitch: true
|
|
switchChecked: appSettings.isGifWidgetEnabled
|
|
onClicked: {
|
|
appSettings.isGifWidgetEnabled = !appSettings.isGifWidgetEnabled
|
|
}
|
|
}
|
|
|
|
// StatusSettingsLineButton {
|
|
// //% "Node Management"
|
|
// text: qsTrId("node-management")
|
|
// isSwitch: true
|
|
// switchChecked: appSettings.nodeManagementEnabled
|
|
// onClicked: {
|
|
// if (!appSettings.nodeManagementEnabled) {
|
|
// confirmationPopup.settingsProp = "nodeManagementEnabled"
|
|
// confirmationPopup.open()
|
|
// } else {
|
|
// appSettings.nodeManagementEnabled = false
|
|
// }
|
|
// }
|
|
// }
|
|
}
|
|
|
|
NetworksModal {
|
|
id: networksModal
|
|
}
|
|
|
|
FleetsModal {
|
|
id: fleetModal
|
|
}
|
|
|
|
ConfirmationDialog {
|
|
id: confirmationPopup
|
|
property string settingsProp: ""
|
|
height: 310
|
|
showCancelButton: true
|
|
//% "This feature is experimental and is meant for testing purposes by core contributors and the community. It's not meant for real use and makes no claims of security or integrity of funds or data. Use at your own risk."
|
|
confirmationText: qsTrId("this-feature-is-experimental-and-is-meant-for-testing-purposes-by-core-contributors-and-the-community--it-s-not-meant-for-real-use-and-makes-no-claims-of-security-or-integrity-of-funds-or-data--use-at-your-own-risk-")
|
|
//% "I understand"
|
|
confirmButtonLabel: qsTrId("i-understand")
|
|
onConfirmButtonClicked: {
|
|
appSettings[settingsProp] = true
|
|
settingsProp = ""
|
|
close()
|
|
}
|
|
|
|
onCancelButtonClicked: {
|
|
close()
|
|
}
|
|
}
|
|
}
|
|
|
|
/*##^##
|
|
Designer {
|
|
D{i:0;height:400;width:700}
|
|
}
|
|
##^##*/
|