import QtQuick 2.14
import QtQuick.Layouts 1.14

import StatusQ.Core 0.1
import StatusQ.Core.Theme 0.1

import utils 1.0

RowLayout {
    id: root

    property string text

    implicitHeight: 32

    Canvas {
        readonly property int cornerRadius: 9
        readonly property int lineWidth: 2
        readonly property int verticalLine: 12
        readonly property int horizontalLine: 19

        Layout.preferredWidth: horizontalLine + cornerRadius
        Layout.preferredHeight: verticalLine + lineWidth + cornerRadius
        Layout.alignment: Qt.AlignTop
        Layout.topMargin: 12
        contextType: "2d"
        onPaint: {
            context.reset();
            context.beginPath()
            context.moveTo(width, lineWidth)
            context.arc(cornerRadius + lineWidth, cornerRadius + lineWidth, cornerRadius, 3 * Math.PI / 2, Math.PI, true/*anticlockwise*/)
            context.lineTo(lineWidth, cornerRadius + verticalLine + lineWidth)
            context.strokeStyle = Style.current.separator
            context.lineWidth = 2
            context.stroke()
        }
    }
    StatusBaseText {
        Layout.alignment: Qt.AlignTop
        Layout.topMargin: 2
        text: root.text
        color: Theme.palette.directColor1
        font.pixelSize: 17
    }
}