1/*
2    SPDX-FileCopyrightText: 2020 Volker Krause <vkrause@kde.org>
3
4    SPDX-License-Identifier: LGPL-2.0-or-later
5*/
6
7import QtQuick 2.12
8import QtQuick.Controls 2.1 as QQC2
9import org.kde.kirigami 2.17 as Kirigami
10import org.kde.kpublictransport 1.0
11
12Item {
13    property var loadInformation
14    implicitWidth: loadIcon.visible ? loadIcon.width : fullMarker.visible ? fullMarker.implicitWidth : 0
15    implicitHeight: childrenRect.height
16
17    // TODO specify filter criteria like class
18
19    readonly property var maxLoad: {
20        var load = Load.Unknown;
21        for (var i = 0; loadInformation != undefined && i < loadInformation.length; ++i) {
22            load = Math.max(load, loadInformation[i].load);
23        }
24        return load;
25    }
26
27    QQC2.Label {
28        id: fullMarker
29        text: i18n("FULL")
30        color: Kirigami.Theme.negativeTextColor
31        visible: maxLoad == Load.Full
32    }
33
34    Kirigami.Icon {
35        id: loadIcon
36        visible: maxLoad != Load.Full && maxLoad != Load.Unknown
37        source: "qrc:///images/seat.svg"
38        isMask: true
39        height: Kirigami.Units.iconSizes.small
40        width: height
41        color: {
42            switch (maxLoad) {
43                case Load.Low: return Kirigami.Theme.positiveTextColor;
44                case Load.Medium: return Kirigami.Theme.neutralTextColor;
45                case Load.High: return Kirigami.Theme.negativeTextColor;
46            }
47            return Kirigami.Theme.textColor;
48        }
49    }
50}
51