2023-03-27 12:49:32 +00:00
|
|
|
import QtQuick 2.15
|
|
|
|
import QtQuick.Controls 2.15
|
|
|
|
|
|
|
|
import StatusQ.Popups 0.1
|
|
|
|
|
|
|
|
import "../stores"
|
|
|
|
|
|
|
|
StatusMenu {
|
|
|
|
id: root
|
|
|
|
|
2023-04-13 10:27:56 +00:00
|
|
|
required property string uniqueIdentifier // unique idetifier added as postfix to options' objectName (used for ui tests)
|
2023-03-27 12:49:32 +00:00
|
|
|
property var account
|
|
|
|
|
|
|
|
signal editAccountClicked()
|
|
|
|
signal deleteAccountClicked()
|
|
|
|
signal addNewAccountClicked()
|
|
|
|
signal addWatchOnlyAccountClicked()
|
|
|
|
|
|
|
|
width: 204
|
|
|
|
|
2023-06-28 06:27:18 +00:00
|
|
|
StatusSuccessAction {
|
2023-03-27 12:49:32 +00:00
|
|
|
id: copyAddressAction
|
2023-04-13 10:27:56 +00:00
|
|
|
objectName: "AccountMenu-CopyAddressAction-%1".arg(root.uniqueIdentifier)
|
2023-06-28 06:27:18 +00:00
|
|
|
successText: qsTr("Address copied")
|
2023-03-27 12:49:32 +00:00
|
|
|
text: qsTr("Copy address")
|
2023-06-28 06:27:18 +00:00
|
|
|
icon.name: "copy"
|
|
|
|
timeout: 1500
|
|
|
|
enabled: !!root.account
|
|
|
|
onTriggered: RootStore.copyToClipboard(root.account.address?? "")
|
2023-03-27 12:49:32 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
StatusMenuSeparator {
|
|
|
|
visible: !!root.account
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusAction {
|
2023-04-13 10:27:56 +00:00
|
|
|
objectName: "AccountMenu-EditAction-%1".arg(root.uniqueIdentifier)
|
2023-03-27 12:49:32 +00:00
|
|
|
enabled: !!root.account
|
|
|
|
text: qsTr("Edit")
|
|
|
|
icon.name: "pencil-outline"
|
|
|
|
onTriggered: {
|
|
|
|
root.editAccountClicked()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusAction {
|
2023-04-13 10:27:56 +00:00
|
|
|
objectName: "AccountMenu-DeleteAction-%1".arg(root.uniqueIdentifier)
|
2023-07-04 12:17:42 +00:00
|
|
|
enabled: !!root.account && !root.account.isWallet
|
2023-03-27 12:49:32 +00:00
|
|
|
text: qsTr("Delete")
|
|
|
|
icon.name: "info"
|
|
|
|
type: StatusAction.Type.Danger
|
|
|
|
onTriggered: {
|
|
|
|
root.deleteAccountClicked()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusMenuSeparator {
|
|
|
|
visible: !!root.account
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusAction {
|
2023-04-13 10:27:56 +00:00
|
|
|
objectName: "AccountMenu-AddNewAccountAction-%1".arg(root.uniqueIdentifier)
|
2023-03-27 12:49:32 +00:00
|
|
|
text: qsTr("Add new account")
|
|
|
|
icon.name: "add"
|
|
|
|
onTriggered: {
|
|
|
|
root.addNewAccountClicked()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
StatusAction {
|
2023-04-13 10:27:56 +00:00
|
|
|
objectName: "AccountMenu-AddWatchOnlyAccountAction-%1".arg(root.uniqueIdentifier)
|
2023-03-27 12:49:32 +00:00
|
|
|
text: qsTr("Add watch-only account")
|
|
|
|
icon.name: "show"
|
|
|
|
onTriggered: {
|
|
|
|
root.addWatchOnlyAccountClicked()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|