Warning, /frameworks/qqc2-desktop-style/org.kde.desktop/CheckDelegate.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 SPDX-FileCopyrightText: 2017 Marco Martin <mart@kde.org> 0003 SPDX-FileCopyrightText: 2017 The Qt Company Ltd. 0004 SPDX-FileCopyrightText: 2023 ivan tkachenko <me@ratijas.tk> 0005 0006 SPDX-License-Identifier: LGPL-3.0-only OR GPL-2.0-or-later 0007 */ 0008 0009 0010 import QtQuick 2.5 0011 import QtQuick.Templates 2.15 as T 0012 import org.kde.kirigami 2.4 as Kirigami 0013 import "private" 0014 0015 T.CheckDelegate { 0016 id: controlRoot 0017 0018 implicitWidth: contentItem.implicitWidth + leftPadding + rightPadding 0019 implicitHeight: Math.max(contentItem.implicitHeight, 0020 indicator ? indicator.implicitHeight : 0) + topPadding + bottomPadding 0021 0022 spacing: indicator && typeof indicator.pixelMetric === "function" ? indicator.pixelMetric("checkboxlabelspacing") : Kirigami.Units.smallSpacing 0023 0024 hoverEnabled: true 0025 0026 padding: Kirigami.Settings.tabletMode ? Kirigami.Units.largeSpacing : Kirigami.Units.smallSpacing 0027 0028 topPadding: padding 0029 leftPadding: padding * 2 0030 rightPadding: padding * 2 0031 bottomPadding: padding 0032 0033 contentItem: Label { 0034 readonly property int indicatorEffectiveWidth: ( 0035 controlRoot.indicator 0036 && typeof controlRoot.indicator.pixelMetric === "function" 0037 && controlRoot.icon.name === "" 0038 && controlRoot.icon.source.toString() === "" 0039 ) ? controlRoot.indicator.pixelMetric("indicatorwidth") + controlRoot.spacing 0040 : controlRoot.indicator.width 0041 0042 leftPadding: controlRoot.indicator && !controlRoot.mirrored ? indicatorEffectiveWidth : 0 0043 rightPadding: controlRoot.indicator && controlRoot.mirrored ? indicatorEffectiveWidth : 0 0044 0045 text: controlRoot.text 0046 font: controlRoot.font 0047 color: (((controlRoot.pressed && !controlRoot.checked) || controlRoot.highlighted) && !controlRoot.sectionDelegate) ? Kirigami.Theme.highlightedTextColor : Kirigami.Theme.textColor 0048 elide: Text.ElideRight 0049 visible: controlRoot.text 0050 horizontalAlignment: Text.AlignLeft 0051 verticalAlignment: Text.AlignVCenter 0052 } 0053 0054 indicator: CheckIndicator { 0055 elementType: "checkbox" 0056 x: controlRoot.mirrored ? controlRoot.width - width - controlRoot.rightPadding : controlRoot.leftPadding 0057 y: controlRoot.topPadding + (controlRoot.availableHeight - height) / 2 0058 0059 control: controlRoot 0060 } 0061 0062 background: DefaultListItemBackground { 0063 control: controlRoot 0064 } 0065 }