status-desktop/ui/app/AppLayouts/Profile/LeftTab/components/MenuButton.qml

92 lines
2.3 KiB
QML
Raw Normal View History

import QtQuick 2.13
import QtGraphicalEffects 1.13
import "../../../../../imports"
import "../../../../../shared"
2020-10-26 20:20:31 +00:00
import "../constants.js" as ProfileConstants
Rectangle {
2020-10-26 20:20:31 +00:00
property int menuItemId: -1
property bool hovered: false
property bool active: false
property url source: "../../../../img/add_watch_only.svg"
property string text: "My Profile"
property var onClicked: function () {}
id: menuButton
color: hovered || active ? Style.current.secondaryBackground : Style.current.transparent
border.width: 0
height: 48
width: parent.width
radius: Style.current.radius
Item {
id: iconImage
2020-08-28 19:09:00 +00:00
height: 24
width: 24
anchors.left: parent.left
anchors.leftMargin: Style.current.padding
anchors.verticalCenter: parent.verticalCenter
Image {
id: iconSrc
source: menuButton.source
sourceSize: Qt.size(parent.width, parent.height)
fillMode: Image.PreserveAspectFit
smooth: true
visible: false
}
ColorOverlay {
anchors.fill: iconSrc
source: iconSrc
color: Style.current.blue
}
}
StyledText {
text: menuButton.text
anchors.left: iconImage.right
anchors.leftMargin: Style.current.padding
anchors.verticalCenter: parent.verticalCenter
}
2020-10-26 20:20:31 +00:00
Rectangle {
2020-12-06 22:15:51 +00:00
visible: !profileModel.mnemonic.isBackedUp && !active && ProfileConstants.PRIVACY_AND_SECURITY === menuItemId
2020-10-26 20:20:31 +00:00
anchors.verticalCenter: parent.verticalCenter
anchors.right: menuButton.right
anchors.rightMargin: 10
radius: 9
color: Style.current.blue
width: 18
height: 18
Text {
font.pixelSize: 12
color: Style.current.white
anchors.centerIn: parent
text: "1"
}
}
MouseArea {
cursorShape: Qt.PointingHandCursor
anchors.fill: parent
hoverEnabled: true
onEntered: {
menuButton.hovered = true
}
onExited: {
menuButton.hovered = false
}
onClicked: function () {
menuButton.onClicked()
}
}
}
/*##^##
Designer {
D{i:0;formeditorColor:"#ffffff";height:48;width:300}
}
##^##*/