Center CheckIndicator

pull/3/head
cutefishd 5 years ago
parent 00a46f5553
commit 01fd5ebc27

@ -31,7 +31,7 @@ T.Button
text: control.text
font: control.font
icon: control.icon
color: !control.enabled ? control.Meui.Theme.disabledTextColor : control.flat ? Meui.Theme.highlightedTextColor : Meui.Theme.textColor
color: !control.enabled ? control.Meui.Theme.disabledTextColor : control.flat ? Meui.Theme.highlightColor : Meui.Theme.textColor
spacing: control.spacing
mirrored: control.mirrored
display: control.display
@ -45,25 +45,29 @@ T.Button
Rectangle {
id: _border
anchors.fill: parent
visible: control.activeFocus
color: "transparent"
border.color: Qt.rgba(Meui.Theme.highlightColor.r,
Meui.Theme.highlightColor.g,
Meui.Theme.highlightColor.b, 0.3)
border.color: control.activeFocus ? Qt.rgba(Meui.Theme.highlightColor.r,
Meui.Theme.highlightColor.g,
Meui.Theme.highlightColor.b, 0.3) : "transparent"
border.width: Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius
radius: Meui.Theme.smallRadius + Meui.Units.extendBorderWidth
Behavior on border.color {
ColorAnimation {
duration: 50
}
}
}
Rectangle {
anchors.fill: parent
anchors.margins: Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius - Meui.Units.extendBorderWidth
border.color: control.flat && control.enabled ? Meui.Theme.highlightColor : control.activeFocus || control.pressed ? Meui.Theme.highlightColor :
radius: Meui.Theme.smallRadius
border.color: control.activeFocus || control.pressed ? Meui.Theme.highlightColor :
Qt.tint(Meui.Theme.textColor, Qt.rgba(Meui.Theme.backgroundColor.r, Meui.Theme.backgroundColor.g, Meui.Theme.backgroundColor.b, 0.7))
border.width: 1
color: control.flat && control.enabled ? control.pressed ? control.flatPressedColor : control.hovered ? control.flatHoveredColor : Meui.Theme.highlightColor
: control.pressed ? control.pressedColor : control.hovered ? control.hoveredColor : Meui.Theme.backgroundColor
color: control.pressed ? control.pressedColor : control.hovered ? control.hoveredColor : Meui.Theme.backgroundColor
}
}
}

@ -40,11 +40,19 @@ T.CheckBox {
hoverEnabled: true
indicator: CheckIndicator {
control: controlRoot
indicator: Item {
width: controlRoot.height
height: controlRoot.height
CheckIndicator {
anchors.centerIn: parent
width: parent.height * 0.8
height: parent.height * 0.8
control: controlRoot
}
}
contentItem: Label {
contentItem: Label {
leftPadding: controlRoot.indicator && !controlRoot.mirrored ? controlRoot.indicator.width + controlRoot.spacing : 0
rightPadding: controlRoot.indicator && controlRoot.mirrored ? controlRoot.indicator.width + controlRoot.spacing : 0
opacity: controlRoot.enabled ? 1 : 0.6

@ -44,11 +44,12 @@ Rectangle {
id: indicatorItem
implicitWidth: 18
implicitHeight: 18
color: !control.enabled ? control.Meui.Theme.backgroundColor
: checked ? Qt.rgba(control.Meui.Theme.highlightColor.r, control.Meui.Theme.highlightColor.g, control.Meui.Theme.highlightColor.b, 0.6) : control.Meui.Theme.backgroundColor
border.color: !control.enabled ? control.Meui.Theme.disabledTextColor
: checked ? control.Meui.Theme.highlightColor: control.Meui.Theme.textColor
border.width: 2
border.width: 1
radius: control.autoExclusive ? Math.min(height, width) : 2
property Item control
@ -69,22 +70,21 @@ Rectangle {
}
Image {
id: checkImage
x: (parent.width - width) / 2
y: (parent.height - height) / 2
width: 14
height: 14
source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Material/images/check.png"
fillMode: Image.PreserveAspectFit
id: checkImage
width: parent.height * 0.6
height: parent.height * 0.6
anchors.centerIn: parent
source: "qrc:/qt-project.org/imports/QtQuick/Controls.2/Material/images/check.png"
fillMode: Image.PreserveAspectFit
scale: checked ? 1 : 0
Behavior on scale {
NumberAnimation {
duration: 100
easing.type: Easing.InOutCubic
}
scale: checked ? 1 : 0
Behavior on scale {
NumberAnimation {
duration: 100
easing.type: Easing.InOutCubic
}
}
}
}
transitions: Transition {
SequentialAnimation {

@ -98,8 +98,8 @@ T.ComboBox {
}
background: Rectangle {
implicitWidth: (Meui.Units.iconSizes.medium * 3) + Meui.Units.largeSpacing
implicitHeight: Meui.Units.iconSizes.medium + Meui.Units.smallSpacing
implicitWidth: (Meui.Units.iconSizes.medium * 3) + Meui.Units.largeSpacing + Meui.Units.extendBorderWidth
implicitHeight: Meui.Units.iconSizes.medium + Meui.Units.smallSpacing + Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius
@ -108,19 +108,24 @@ T.ComboBox {
Rectangle {
id: _border
anchors.fill: parent
visible: control.activeFocus
color: "transparent"
border.color: Qt.rgba(Meui.Theme.highlightColor.r,
Meui.Theme.highlightColor.g,
Meui.Theme.highlightColor.b, 0.3)
border.color: control.activeFocus ? Qt.rgba(Meui.Theme.highlightColor.r,
Meui.Theme.highlightColor.g,
Meui.Theme.highlightColor.b, 0.3) : "transparent"
border.width: Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius
radius: Meui.Theme.smallRadius + Meui.Units.extendBorderWidth
Behavior on border.color {
ColorAnimation {
duration: 50
}
}
}
Rectangle {
anchors.fill: parent
anchors.margins: Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius - Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius
color: "transparent"
border.color: control.activeFocus ? Meui.Theme.highlightColor : Qt.tint(Meui.Theme.textColor, Qt.rgba(Meui.Theme.backgroundColor.r, Meui.Theme.backgroundColor.g, Meui.Theme.backgroundColor.b, 0.7))
border.width: 1

@ -82,19 +82,24 @@ T.TextField {
Rectangle {
id: _border
anchors.fill: parent
visible: control.activeFocus
color: "transparent"
border.color: Qt.rgba(Meui.Theme.highlightColor.r,
Meui.Theme.highlightColor.g,
Meui.Theme.highlightColor.b, 0.3)
border.color: control.activeFocus ? Qt.rgba(Meui.Theme.highlightColor.r,
Meui.Theme.highlightColor.g,
Meui.Theme.highlightColor.b, 0.3) : "transparent"
border.width: Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius
radius: Meui.Theme.smallRadius + Meui.Units.extendBorderWidth
Behavior on border.color {
ColorAnimation {
duration: 50
}
}
}
Rectangle {
anchors.fill: parent
anchors.margins: Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius - Meui.Units.extendBorderWidth
radius: Meui.Theme.smallRadius
color: "transparent"
border.color: control.activeFocus ? Meui.Theme.highlightColor : Qt.tint(Meui.Theme.textColor, Qt.rgba(Meui.Theme.backgroundColor.r, Meui.Theme.backgroundColor.g, Meui.Theme.backgroundColor.b, 0.7))
border.width: 1

Loading…
Cancel
Save