Warning, /plasma/drkonqi/src/qml/RatingItem.qml is written in an unsupported language. File is not indexed.

0001 // SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0002 // SPDX-FileCopyrightText: 2021-2022 Harald Sitter <sitter@kde.org>
0003 
0004 import QtQuick 2.15
0005 import QtQuick.Layouts 1.15
0006 import QtQuick.Controls 2.15 as QQC2
0007 import org.kde.kirigami 2.19 as Kirigami
0008 
0009 import org.kde.drkonqi 1.0
0010 
0011 RowLayout {
0012     required property bool loading
0013     required property bool failed
0014     property int usefulness: BacktraceParser.InvalidUsefulness
0015     property int stars: {
0016         switch (usefulness) {
0017         case BacktraceParser.ReallyUseful:
0018             return 3
0019         case BacktraceParser.MayBeUseful:
0020             return 2
0021         case BacktraceParser.ProbablyUseless:
0022             return 1
0023         case BacktraceParser.Useless:
0024         case BacktraceParser.InvalidUsefulness:
0025             return 0
0026         }
0027     }
0028 
0029     QQC2.Label {
0030         Layout.fillWidth: true
0031         wrapMode: Text.Wrap
0032         text: {
0033             const loadingMessage = i18nc("@info", "Waiting for data…")
0034 
0035             if (loading) {
0036                 return loadingMessage
0037             }
0038 
0039             switch (usefulness) {
0040             case BacktraceParser.InvalidUsefulness:
0041                 return loadingMessage
0042             case BacktraceParser.ReallyUseful:
0043                 return i18nc("@info", "The generated crash information is useful");
0044             case BacktraceParser.MayBeUseful:
0045                 return i18nc("@info", "The generated crash information may be useful");
0046             case BacktraceParser.ProbablyUseless:
0047                 return i18nc("@info", "The generated crash information is probably not useful");
0048             case BacktraceParser.Useless:
0049                 return i18nc("@info", "The generated crash information is not useful");
0050             }
0051         }
0052     }
0053 
0054     Kirigami.Icon {
0055         implicitWidth: Kirigami.Units.iconSizes.small
0056         implicitHeight: implicitWidth
0057         source: "data-error"
0058         visible: failed || stars <= 0
0059     }
0060 
0061     Kirigami.Icon {
0062         implicitWidth: Kirigami.Units.iconSizes.small
0063         implicitHeight: implicitWidth
0064         source: "rating"
0065         enabled: stars >= 1
0066     }
0067 
0068     Kirigami.Icon {
0069         implicitWidth: Kirigami.Units.iconSizes.small
0070         implicitHeight: implicitWidth
0071         source: "rating"
0072         enabled: stars >= 2
0073     }
0074 
0075     Kirigami.Icon {
0076         implicitWidth: Kirigami.Units.iconSizes.small
0077         implicitHeight: implicitWidth
0078         source: "rating"
0079         enabled: stars >= 3
0080     }
0081 
0082     onUsefulnessChanged: {
0083         console.log("usefulness")
0084         console.log(usefulness)
0085         console.log(BacktraceParser.ReallyUseful)
0086     }
0087 }