Warning, /utilities/kweather/src/qml/components/ListDelegate.qml is written in an unsupported language. File is not indexed.
0001 // Copyright 2022 Devin Lin <devin@kde.org> 0002 // SPDX-License-Identifier: GPL-2.0-or-later 0003 0004 import QtQuick 0005 import QtQuick.Controls 0006 import QtQuick.Layouts 0007 0008 import org.kde.kirigami as Kirigami 0009 0010 Control { 0011 id: root 0012 0013 property bool showSeparator: false 0014 0015 signal clicked() 0016 signal rightClicked() 0017 signal released() 0018 signal pressAndHold() 0019 0020 property alias mouseArea: mouseArea 0021 0022 leftPadding: Kirigami.Units.largeSpacing 0023 topPadding: Kirigami.Units.largeSpacing 0024 bottomPadding: Kirigami.Units.largeSpacing 0025 rightPadding: Kirigami.Units.largeSpacing 0026 0027 hoverEnabled: true 0028 background: Rectangle { 0029 color: Qt.rgba(Kirigami.Theme.textColor.r, Kirigami.Theme.textColor.g, Kirigami.Theme.textColor.b, mouseArea.pressed ? 0.2 : (!Kirigami.Settings.tabletMode && hoverHandler.hovered) ? 0.1 : 0) 0030 0031 HoverHandler { 0032 id: hoverHandler 0033 } 0034 0035 Kirigami.Separator { 0036 anchors.bottom: parent.bottom 0037 anchors.left: parent.left 0038 anchors.right: parent.right 0039 anchors.leftMargin: root.leftPadding 0040 anchors.rightMargin: root.rightPadding 0041 visible: root.showSeparator 0042 opacity: 0.5 0043 } 0044 } 0045 0046 MouseArea { 0047 id: mouseArea 0048 anchors.fill: parent 0049 acceptedButtons: Qt.LeftButton | Qt.RightButton 0050 0051 onPressAndHold: root.pressAndHold() 0052 onReleased: root.released() 0053 onClicked: mouse => { 0054 if (mouse.button === Qt.RightButton) { 0055 root.rightClicked(); 0056 } else if (mouse.button === Qt.LeftButton) { 0057 root.clicked(); 0058 } 0059 } 0060 } 0061 }