summaryrefslogtreecommitdiffstats
path: root/qt-mobile/qml/mobilecomponents/GlobalDrawer.qml
diff options
context:
space:
mode:
Diffstat (limited to 'qt-mobile/qml/mobilecomponents/GlobalDrawer.qml')
-rw-r--r--qt-mobile/qml/mobilecomponents/GlobalDrawer.qml183
1 files changed, 0 insertions, 183 deletions
diff --git a/qt-mobile/qml/mobilecomponents/GlobalDrawer.qml b/qt-mobile/qml/mobilecomponents/GlobalDrawer.qml
deleted file mode 100644
index afe304166..000000000
--- a/qt-mobile/qml/mobilecomponents/GlobalDrawer.qml
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * Copyright 2015 Marco Martin <mart@kde.org>
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU Library General Public License as
- * published by the Free Software Foundation; either version 2, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Library General Public License for more details
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this program; if not, write to the
- * Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- */
-
-import QtQuick 2.1
-import QtQuick.Controls 1.0
-import QtQuick.Layouts 1.2
-import QtGraphicalEffects 1.0
-import org.kde.plasma.mobilecomponents 0.2
-
-OverlayDrawer {
- id: root
- edge: Qt.LeftEdge
-
- default property alias content: mainContent.data
-
- property alias title: heading.text
- property alias titleIcon: headingIcon.source
- property alias bannerImageSource: bannerImage.source
- property list<Action> actions
-
- contentItem: ColumnLayout {
- id: mainColumn
- anchors.fill: parent
- spacing: 0
- implicitWidth: Units.gridUnit * 12
-
- Image {
- id: bannerImage
- Layout.fillWidth: true
-
- Layout.preferredWidth: title.implicitWidth
- Layout.preferredHeight: bannerImageSource != "" ? Math.max(title.implicitHeight, Math.floor(width / (sourceSize.width/sourceSize.height))) : title.implicitHeight
- Layout.minimumHeight: Math.max(headingIcon.height, heading.height) + Units.smallSpacing * 2
-
- fillMode: Image.PreserveAspectCrop
- asynchronous: true
-
- anchors {
- left: parent.left
- right: parent.right
- top: parent.top
- }
-
- LinearGradient {
- anchors {
- left: parent.left
- right: parent.right
- top: parent.top
- }
- visible: bannerImageSource != ""
- height: title.height * 1.3
- start: Qt.point(0, 0)
- end: Qt.point(0, height)
- gradient: Gradient {
- GradientStop {
- position: 0.0
- color: Qt.rgba(0, 0, 0, 0.8)
- }
- GradientStop {
- position: 1.0
- color: "transparent"
- }
- }
- }
-
- RowLayout {
- id: title
- anchors {
- left: parent.left
- top: parent.top
- margins: Units.smallSpacing * 2
- }
- Icon {
- id: headingIcon
- Layout.minimumWidth: Units.iconSizes.large
- Layout.minimumHeight: width
- }
- Heading {
- id: heading
- level: 1
- color: bannerImageSource != "" ? "white" : Theme.textColor
- }
- Item {
- height: 1
- Layout.minimumWidth: heading.height
- }
- }
- }
-
- Rectangle {
- color: Theme.textColor
- opacity: 0.2
- Layout.fillWidth: true
- Layout.minimumHeight: 1
- }
-
- StackView {
- id: pageRow
- Layout.fillWidth: true
- Layout.fillHeight: true
- initialItem: menuComponent
- }
-
- ColumnLayout {
- id: mainContent
- Layout.alignment: Qt.AlignHCenter
- Layout.minimumWidth: parent.width - Units.smallSpacing*2
- Layout.maximumWidth: Layout.minimumWidth
- Layout.fillWidth: false
- Layout.fillHeight: true
- visible: children.length > 0
- }
- Item {
- Layout.minimumWidth: Units.smallSpacing
- Layout.minimumHeight: Units.smallSpacing
- }
-
- Component {
- id: menuComponent
- ListView {
- id: optionMenu
- clip: true
-
- model: actions
- property int level: 0
-
- interactive: contentHeight > height
-
- footer: BasicListItem {
- visible: level > 0
- enabled: true
- icon: "go-previous"
- label: typeof i18n !== "undefined" ? i18n("Back") : "Back"
- onClicked: pageRow.pop()
- }
- delegate: BasicListItem {
- enabled: true
- checked: modelData.checked
- icon: modelData.iconName
- label: modelData.text
-
- Icon {
- anchors {
- top: parent.top
- bottom: parent.bottom
- right: parent.right
- }
- width: height
- source: "go-next"
- visible: modelData.children != undefined
- }
-
- onClicked: {
- if (modelData.children) {
- pageRow.push(menuComponent, {"model": modelData.children, "level": level + 1});
- } else {
- modelData.trigger();
- pageRow.pop(pageRow.initialPage);
- root.opened = false;
- }
- }
- }
- }
- }
- }
-}
-