Warning, /plasma-bigscreen/soundcloud-voice-application/ui/homepage.qml is written in an unsupported language. File is not indexed.

0001 import QtQuick 2.9
0002 import QtQuick.Controls 2.2
0003 import QtQuick.Layouts 1.4
0004 import QtGraphicalEffects 1.0
0005 import org.kde.kirigami 2.12 as Kirigami
0006 import Mycroft 1.0 as Mycroft
0007 
0008 Mycroft.Delegate {
0009     id: delegateSoundHome
0010     skillBackgroundSource: Qt.resolvedUrl("music.jpg")
0011     leftPadding: 0
0012     rightPadding: 0
0013     bottomPadding: 0
0014     topPadding: 0
0015     focus: true
0016     
0017     Component.onCompleted: {
0018         delegateSoundHome.forceActiveFocus()
0019     }
0020     
0021     ListModel {
0022         id: sampleModel
0023 
0024         ListElement {
0025             example: "soundcloud metallica"
0026             title: "metallica"
0027         }
0028         ListElement {
0029             example: "soundcloud electronic dance music"
0030             title: "electronic dance music"
0031         }
0032         ListElement {
0033             example: "soundcloud groove podcast"
0034             title: "groove podcast"
0035         }
0036         ListElement {
0037             example: "soundcloud ambient music"
0038             title: "ambient"
0039         }
0040         ListElement {
0041             example: "soundcloud jazz"
0042             title: "jazz"
0043         }
0044     }
0045     
0046     Rectangle {
0047         id: headerBar
0048         anchors.top: parent.top
0049         anchors.left: parent.left
0050         anchors.right: parent.right
0051         height: Kirigami.Units.gridUnit * 2
0052         color: "#303030"
0053         layer.enabled: true
0054         layer.effect: DropShadow {
0055             transparentBorder: true
0056             horizontalOffset: 0
0057             verticalOffset: 2
0058         }
0059         
0060         RowLayout {
0061             width: parent.width
0062             height: parent.height
0063             anchors.verticalCenter: parent.verticalCenter
0064             
0065             ToolButton {
0066                 Kirigami.Theme.colorSet: Kirigami.Theme.Button
0067                 Layout.preferredWidth: Kirigami.Units.iconSizes.smallMedium
0068                 Layout.preferredHeight: Kirigami.Units.iconSizes.smallMedium
0069                 Layout.alignment: Qt.AlignLeft | Qt.AlignVCenter
0070                 flat: true
0071                 
0072                 contentItem: Image {
0073                     anchors.centerIn: parent
0074                     width: Kirigami.Units.iconSizes.smallMedium
0075                     height: Kirigami.Units.iconSizes.smallMedium
0076                     source: "images/back.png"
0077                 }
0078                 
0079                 onClicked: {
0080                     delegateSoundHome.parent.backRequested()
0081                 }
0082             }
0083             
0084             Kirigami.Heading {
0085                 id: headingLabel
0086                 level: 2
0087                 text: "Soundcloud"
0088                 Layout.fillWidth: true
0089                 horizontalAlignment: Text.AlignHCenter
0090             }
0091         }
0092     }
0093     
0094     Rectangle {
0095         anchors.top: headerBar.bottom
0096         anchors.left: parent.left
0097         anchors.right: parent.right
0098         anchors.bottom: parent.bottom
0099         color: Qt.rgba(0, 0, 0, 0.7)
0100 
0101         ColumnLayout {
0102             id: root
0103             anchors.fill: parent
0104 
0105             Kirigami.Heading {
0106                 level: 2
0107                 font.bold: true
0108                 text: "What can it do"
0109             }
0110 
0111             Label {
0112                 Layout.fillWidth: true
0113                 wrapMode: Text.WordWrap
0114                 font.pointSize: Kirigami.Theme.defaultFont.pointSize * 0.9
0115                 text: "Explore the latest artists, bands and creators of music & audio on Soundcloud"
0116             }
0117 
0118             Item {
0119                 Layout.preferredHeight: Kirigami.Units.largeSpacing
0120             }
0121 
0122             Kirigami.Heading {
0123                 level: 2
0124                 font.bold: true
0125                 text: "Examples"
0126             }
0127 
0128             ListView {
0129                 id: skillExampleListView
0130                 Layout.fillWidth: true
0131                 Layout.fillHeight: true
0132                 focus: false
0133                 clip: true
0134                 model: sampleModel
0135                 spacing: Kirigami.Units.smallSpacing
0136                 delegate: Kirigami.AbstractListItem {
0137                     id: rootCard
0138 
0139                     background: Kirigami.ShadowedRectangle {
0140                         color: rootCard.pressed ? Kirigami.Theme.highlightColor : Kirigami.Theme.backgroundColor
0141                         radius: Kirigami.Units.smallSpacing
0142                     }
0143 
0144                     contentItem: Label {
0145                         anchors.left: parent.left
0146                         anchors.right: parent.right
0147                         anchors.rightMargin: Kirigami.Units.largeSpacing
0148                         anchors.leftMargin: Kirigami.Units.largeSpacing
0149                         wrapMode: Text.WordWrap
0150                         verticalAlignment: Text.AlignVCenter
0151                         elide: Text.ElideRight
0152                         color: Kirigami.Theme.textColor
0153                         font.pointSize: Kirigami.Theme.defaultFont.pointSize * 0.9
0154                         text: "Hey Mycroft, " + model.example
0155                     }
0156 
0157                     onClicked: {
0158                         triggerGuiEvent("aiix.soundcloud-audio-player.playtitle", {"playtitle": model.title})
0159                     }
0160                 }
0161             }
0162         }
0163     }
0164 }