Warning, /graphics/spectacle/src/Gui/CaptureModeButtonsColumn.qml is written in an unsupported language. File is not indexed.
0001 /* SPDX-FileCopyrightText: 2022 Noah Davis <noahadvs@gmail.com> 0002 * SPDX-License-Identifier: LGPL-2.0-or-later 0003 */ 0004 0005 import QtQuick 0006 import QtQuick.Layouts 0007 import QtQuick.Controls as QQC 0008 import org.kde.kirigami as Kirigami 0009 import org.kde.spectacle.private 0010 0011 ColumnLayout { 0012 spacing: Kirigami.Units.mediumSpacing 0013 Repeater { 0014 model: SpectacleCore.captureModeModel 0015 delegate: QQC.DelayButton { 0016 id: button 0017 readonly property bool showCancel: Settings.captureMode === model.captureMode && SpectacleCore.captureTimeRemaining > 0 0018 Layout.fillWidth: true 0019 leftPadding: Kirigami.Units.mediumSpacing + QmlUtils.fontMetrics.descent 0020 rightPadding: Kirigami.Units.mediumSpacing + QmlUtils.fontMetrics.descent 0021 topPadding: Kirigami.Units.mediumSpacing 0022 bottomPadding: Kirigami.Units.mediumSpacing 0023 // Delay doesn't really matter since we set 0024 // progress directly and have no transition 0025 delay: 1 0026 transition: null 0027 progress: Settings.captureMode === model.captureMode ? 0028 SpectacleCore.captureProgress : 0 0029 icon.name: showCancel ? "dialog-cancel" : "" 0030 text: showCancel ? 0031 i18np("Cancel (%1 second)", "Cancel (%1 seconds)", 0032 Math.ceil(SpectacleCore.captureTimeRemaining / 1000)) 0033 : model.display 0034 QQC.ToolTip.text: model.shortcuts 0035 QQC.ToolTip.visible: (hovered || pressed) && model.shortcuts.length > 0 0036 QQC.ToolTip.delay: Kirigami.Units.toolTipDelay 0037 onClicked: if (showCancel) { 0038 SpectacleCore.cancelScreenshot() 0039 } else { 0040 Settings.captureMode = model.captureMode 0041 SpectacleCore.takeNewScreenshot() 0042 } 0043 } 0044 } 0045 }