2019-09-18 23:58:25 +03:00
|
|
|
import QtQuick 2.5
|
2019-10-06 12:08:13 +03:00
|
|
|
import QtQuick.Controls 2.1
|
2019-09-18 23:58:25 +03:00
|
|
|
import QtGraphicalEffects 1.0
|
|
|
|
import com.github.nheko 1.0
|
|
|
|
|
|
|
|
Rectangle {
|
|
|
|
id: indicator
|
|
|
|
property int state: 0
|
|
|
|
color: "transparent"
|
|
|
|
width: 16
|
|
|
|
height: 16
|
2019-09-19 22:47:16 +03:00
|
|
|
ToolTip.visible: ma.containsMouse && state != MtxEvent.Empty
|
2019-09-18 23:58:25 +03:00
|
|
|
ToolTip.text: switch (state) {
|
|
|
|
case MtxEvent.Failed: return qsTr("Failed")
|
|
|
|
case MtxEvent.Sent: return qsTr("Sent")
|
|
|
|
case MtxEvent.Received: return qsTr("Received")
|
|
|
|
case MtxEvent.Read: return qsTr("Read")
|
2019-09-19 22:47:16 +03:00
|
|
|
default: return ""
|
2019-09-18 23:58:25 +03:00
|
|
|
}
|
|
|
|
MouseArea{
|
|
|
|
id: ma
|
|
|
|
anchors.fill: parent
|
|
|
|
hoverEnabled: true
|
|
|
|
}
|
|
|
|
|
|
|
|
Image {
|
|
|
|
id: stateImg
|
|
|
|
// Workaround, can't get icon.source working for now...
|
|
|
|
anchors.fill: parent
|
|
|
|
source: switch (indicator.state) {
|
|
|
|
case MtxEvent.Failed: return "qrc:/icons/icons/ui/remove-symbol.png"
|
|
|
|
case MtxEvent.Sent: return "qrc:/icons/icons/ui/clock.png"
|
|
|
|
case MtxEvent.Received: return "qrc:/icons/icons/ui/checkmark.png"
|
|
|
|
case MtxEvent.Read: return "qrc:/icons/icons/ui/double-tick-indicator.png"
|
|
|
|
default: return ""
|
|
|
|
}
|
|
|
|
}
|
|
|
|
ColorOverlay {
|
|
|
|
anchors.fill: stateImg
|
|
|
|
source: stateImg
|
|
|
|
color: colors.buttonText
|
2019-10-06 16:26:02 +03:00
|
|
|
visible: stateImg.source != ""
|
2019-09-18 23:58:25 +03:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|