Commit e6ad673c authored by Nate Graham's avatar Nate Graham 🔩

[Media Frame] Port "Paths" category to QQC2+Kirigami and modernize UI

Summary:
- Port to QQC2
- Use Kirigami `SwipeListItem` for the paths view
- Use standard import names
- Put the buttons below the lists to follow the general style

Test Plan: {F6821837}

Reviewers: #vdg, #plasma, ndavis

Reviewed By: #vdg, ndavis

Subscribers: ndavis, plasma-devel

Tags: #plasma

Maniphest Tasks: T10586

Differential Revision: https://phabricator.kde.org/D21191
parent 4b160787
......@@ -16,12 +16,13 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 2.010-1301, USA.
*/
import QtQuick 2.1
import QtQuick.Controls 1.1
import QtQuick 2.5
import QtQuick.Controls 2.5 as QQC2
import QtQuick.Dialogs 1.2
import QtQuick.Layouts 1.1
import QtQuick.Layouts 1.3
import org.kde.plasma.plasmoid 2.0
import org.kde.kirigami 2.5 as Kirigami
ColumnLayout {
id: root
......@@ -57,11 +58,8 @@ ColumnLayout {
id: fileDialog
visible: false
title: i18nc("@title:window", "Choose Files")
folder: shortcuts.pictures
selectMultiple: true
// TODO get valid filter list from native code?
......@@ -86,11 +84,8 @@ ColumnLayout {
id: folderDialog
visible: false
title: i18nc("@title:window", "Choose a Folder")
folder: shortcuts.pictures
selectFolder: true
onAccepted: {
......@@ -108,66 +103,56 @@ ColumnLayout {
}
RowLayout {
Layout.fillWidth: true
Button {
iconName: "folder-new"
onClicked: folderDialog.visible = true
text: i18nc("@action:button", "Add Folder...")
}
Button {
iconName: "document-new"
onClicked: fileDialog.visible = true
text: i18nc("@action:button", "Add Files...")
}
}
Label {
Layout.fillWidth: true
text: i18nc("@label:listbox", "Paths:")
}
ListModel {
id: pathModel
}
RowLayout {
Layout.fillWidth: true
Layout.fillHeight: true
ListModel {
id: pathModel
}
ScrollView {
Layout.fillWidth: true
Layout.fillHeight: true
QQC2.ScrollView {
Layout.fillWidth: true
Layout.fillHeight: true
Component.onCompleted: background.visible = true;
frameVisible: true
ListView {
id: pathsList
ListView {
width: parent.width
model: pathModel
anchors.margins: 4
model: pathModel
delegate: RowLayout {
width: parent.width
delegate: Kirigami.SwipeListItem {
id: folderDelegate
Label {
id: pathText
width: pathsList.width
height: paintedHeight;
Layout.fillWidth: true
QQC2.Label {
Layout.fillWidth: true
text: model.path.replace("file://", "")
}
text: model.path
}
actions: [
Kirigami.Action {
iconName: "list-remove"
tooltip: i18nd("plasma_wallpaper_org.kde.image", "Remove path")
onTriggered: removePath(model.index)
}
]
}
}
}
Button {
id: removePathButton
RowLayout {
Layout.fillWidth: true
iconName: "list-remove"
QQC2.Button {
icon.name: "folder-new"
onClicked: folderDialog.visible = true
text: i18nc("@action:button", "Add Folder...")
}
onClicked: removePath(model.index)
}
}
}
}
QQC2.Button {
icon.name: "document-new"
onClicked: fileDialog.visible = true
text: i18nc("@action:button", "Add Files...")
}
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment