Warning, /sdk/licensedigger/autotests/testdata/LGPL-3.0-only_OR_LicenseRef-KDE-Accepted-LGPL/ContextualHelpButton.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 SPDX-FileCopyrightText: 2020 Felix Ernst <fe.a.ernst@gmail.com> 0003 0004 SPDX-License-Identifier: LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0005 */ 0006 0007 import QtQuick 2.1 0008 import QtQuick.Layouts 1.1 0009 import QtQuick.Controls 2.7 as QtControls 0010 import QtQuick.Dialogs 1.2 as QtDialogs 0011 import org.kde.kirigami 2.3 as Kirigami 0012 import org.kde.kcm 1.0 0013 0014 0015 QtControls.Button { 0016 icon.name: "help-contextual" 0017 flat: true 0018 property alias toolTipText: toolTip.text 0019 property var toolTipVisible: false 0020 onReleased: { 0021 toolTipVisible ? toolTip.delay = Kirigami.Units.toolTipDelay : toolTip.delay = 0; 0022 toolTipVisible = !toolTipVisible; 0023 } 0024 onActiveFocusChanged: { 0025 toolTip.delay = Kirigami.Units.toolTipDelay; 0026 toolTipVisible = false; 0027 } 0028 Layout.maximumHeight: parent.height 0029 QtControls.ToolTip { 0030 id: toolTip 0031 implicitWidth: Math.min(21 * Kirigami.Units.gridUnit, root.width) // Wikipedia says anything between 45 and 75 characters per line is acceptable. 21 * Kirigami.Units.gridUnit feels right. 0032 visible: parent.hovered || parent.toolTipVisible 0033 onVisibleChanged: { 0034 if (!visible && parent.toolTipVisible) { 0035 parent.toolTipVisible = false; 0036 delay = Kirigami.Units.toolTipDelay; 0037 } 0038 } 0039 timeout: -1 0040 } 0041 MouseArea { 0042 anchors.fill: parent 0043 hoverEnabled: true 0044 cursorShape: Qt.WhatsThisCursor 0045 acceptedButtons: Qt.NoButton 0046 } 0047 Accessible.name: i18nc("@action:button", "Show Contextual Help") 0048 } 0049