Warning, /graphics/koko/src/qml/InfoSidebar.qml is written in an unsupported language. File is not indexed.
0001 /* SPDX-FileCopyrightText: 2021 Carl Schwan <carlschwan@kde.org> 0002 * SPDX-FileCopyrightText: 2021 Noah Davis <noahadvs@gmail.com> 0003 * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL 0004 */ 0005 0006 import QtQuick 2.15 0007 import QtQml 2.15 0008 import QtQuick.Window 2.15 0009 import QtQuick.Templates 2.15 as T 0010 import QtQuick.Controls 2.15 as QQC2 0011 import QtQuick.Layouts 1.15 0012 import org.kde.kirigami 2.15 as Kirigami 0013 import org.kde.koko 0.1 as Koko 0014 import org.kde.coreaddons 1.0 as KCA 0015 0016 QQC2.Page { 0017 id: root 0018 required property Koko.Exiv2Extractor extractor 0019 signal closed() 0020 leftPadding: root.mirrored && vScrollBar.visible ? vScrollBar.width : 0 0021 rightPadding: !root.mirrored && vScrollBar.visible ? vScrollBar.width : 0 0022 topPadding: 0 0023 bottomPadding: 0 0024 header: QQC2.ToolBar { 0025 implicitHeight: closeButton.implicitHeight 0026 leftPadding: 0; rightPadding: 0; topPadding: 0; bottomPadding: 0 0027 contentItem: RowLayout { 0028 spacing: Kirigami.Units.smallSpacing 0029 Kirigami.Heading { 0030 leftPadding: Kirigami.Units.largeSpacing 0031 rightPadding: leftPadding 0032 horizontalAlignment: Qt.AlignLeft 0033 verticalAlignment: Qt.AlignVCenter 0034 Layout.fillWidth: true 0035 Layout.fillHeight: true 0036 level: 2 0037 text: i18n("Metadata") 0038 } 0039 QQC2.ToolButton { 0040 id: closeButton 0041 icon.name: "window-close" 0042 icon.width: Kirigami.Units.iconSizes.sizeForLabels 0043 icon.height: Kirigami.Units.iconSizes.sizeForLabels 0044 onClicked: root.closed() 0045 } 0046 } 0047 } 0048 // QQC2 ScrollView makes it surprisingly difficult to control the 0049 // content size and implicit size without binding loops or glitches. 0050 // ScrollView completely ignores the Flickable's implicit size. 0051 // Using plain Flickable with ScrollBar instead. 0052 contentItem: InfoDrawerSidebarBase { 0053 id: content 0054 extractor: root.extractor 0055 QQC2.ScrollBar.vertical: QQC2.ScrollBar { 0056 id: vScrollBar 0057 parent: content.parent 0058 anchors.left: parent.contentItem.right 0059 anchors.top: parent.header.bottom 0060 anchors.bottom: parent.bottom 0061 } 0062 } 0063 Component.onCompleted: { 0064 root.contentItem.opacity = 1 0065 } 0066 onClosed: { 0067 root.contentItem.opacity = 0 0068 } 0069 }