Warning, /frameworks/kirigami/examples/simpleexamples/layerOverDrawer.qml is written in an unsupported language. File is not indexed.
0001 /* 0002 * SPDX-FileCopyrightText: 2023 Marco Martin <mart@kde.org> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 import QtQuick 0008 import QtQuick.Controls as QQC2 0009 import org.kde.kirigami as Kirigami 0010 0011 /** 0012 * This example show how to do a sidebar of an application what gets covered by new layers that might get pushed 0013 * in the PageRow layer system. 0014 * When a drawer is in sidebar mode, when it goes modal (for instance when on mobile) will still behave like a drawer 0015 */ 0016 Kirigami.ApplicationWindow { 0017 id: root 0018 0019 Kirigami.GlobalDrawer { 0020 id: drawer 0021 modal: false 0022 0023 actions: [ 0024 Kirigami.Action { 0025 text: "Push Layer" 0026 onTriggered: root.pageStack.layers.push(layerComponent) 0027 }, 0028 Kirigami.Action { 0029 text: "Modal" 0030 checked: drawer.modal 0031 checkable: true 0032 onTriggered: drawer.modal = checked 0033 } 0034 ] 0035 } 0036 contextDrawer: Kirigami.ContextDrawer { 0037 id: contextDrawer 0038 } 0039 0040 pageStack.initialPage: mainPageComponent 0041 pageStack.leftSidebar: drawer 0042 0043 Component { 0044 id: mainPageComponent 0045 Kirigami.ScrollablePage { 0046 title: "Hello" 0047 QQC2.Pane { 0048 anchors.fill: parent 0049 QQC2.Label { 0050 text: "Main page: push a layer to cover both this and the sidebar" 0051 } 0052 } 0053 } 0054 } 0055 Component { 0056 id: layerComponent 0057 Kirigami.ScrollablePage { 0058 title: "Layer 1" 0059 QQC2.Pane { 0060 anchors.fill: parent 0061 QQC2.Label { 0062 text: "Layer page: this should cover the whole window: main page and sidebar" 0063 } 0064 } 0065 } 0066 } 0067 }