Warning, /plasma/qqc2-breeze-style/style/qtquickcontrols/ItemDelegate.qml is written in an unsupported language. File is not indexed.
0001 /* SPDX-FileCopyrightText: 2020 Noah Davis <noahadvs@gmail.com> 0002 * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0003 */ 0004 0005 import QtQuick 2.15 0006 import QtQuick.Templates 2.15 as T 0007 import QtQuick.Controls 2.15 as Controls 0008 import org.kde.kirigami 2.19 as Kirigami 0009 0010 import "impl" as Impl 0011 0012 T.ItemDelegate { 0013 id: control 0014 0015 implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, 0016 implicitContentWidth + leftPadding + rightPadding, 0017 implicitIndicatorWidth + leftPadding + rightPadding) 0018 implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset, 0019 implicitContentHeight + topPadding + bottomPadding, 0020 implicitIndicatorHeight + topPadding + bottomPadding) 0021 0022 padding: Kirigami.Units.mediumSpacing 0023 0024 leftPadding: { 0025 if ((!contentItem.hasIcon && contentItem.textBesideIcon) // False if contentItem has been replaced 0026 || display == T.AbstractButton.TextOnly 0027 || display == T.AbstractButton.TextUnderIcon) { 0028 return Impl.Units.mediumHorizontalPadding 0029 } else { 0030 return control.horizontalPadding 0031 } 0032 } 0033 rightPadding: { 0034 if (contentItem.hasLabel && display != T.AbstractButton.IconOnly) { // False if contentItem has been replaced 0035 return Impl.Units.mediumHorizontalPadding 0036 } else { 0037 return control.horizontalPadding 0038 } 0039 } 0040 0041 spacing: Kirigami.Units.mediumSpacing 0042 0043 icon.width: Kirigami.Units.iconSizes.sizeForLabels 0044 icon.height: Kirigami.Units.iconSizes.sizeForLabels 0045 0046 Kirigami.Theme.colorSet: control.down || control.highlighted ? Kirigami.Theme.Button : -1 0047 Kirigami.Theme.inherit: !background || !background.visible && !(control.highlighted || control.down) 0048 0049 contentItem: Impl.IconLabelContent { 0050 control: control 0051 alignment: Qt.AlignLeft | Qt.AlignVCenter 0052 } 0053 0054 background: Impl.DelegateBackground { 0055 control: control 0056 } 0057 }