Commit 0a7b99bb authored by Niccolò Venerandi's avatar Niccolò Venerandi

Added plasmoidHeading to clipboard and ported to Page

Summary:
{F8256246}
{F8256249}

Reviewers: #vdg, ngraham

Reviewed By: #vdg, ngraham

Subscribers: plasma-devel

Tags: #plasma

Maniphest Tasks: T10470

Differential Revision: https://phabricator.kde.org/D29137
parent db7b7bbf
......@@ -21,6 +21,7 @@ import QtQuick.Layouts 1.1
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.kquickcontrolsaddons 2.0
import org.kde.plasma.extras 2.0 as PlasmaExtras
ColumnLayout {
id: barcodeView
......@@ -46,74 +47,78 @@ ColumnLayout {
});
}
RowLayout {
Layout.fillWidth: true
PlasmaComponents.Button {
Layout.fillWidth: true
iconSource: "go-previous-view"
text: i18n("Return to Clipboard")
onClicked: stack.pop()
}
PlasmaComponents.ContextMenu {
id: menu
visualParent: configureButton
placement: PlasmaCore.Types.BottomPosedLeftAlignedPopup
onStatusChanged: {
if (status == PlasmaComponents.DialogStatus.Closed) {
configureButton.checked = false;
}
property var header: PlasmaExtras.PlasmoidHeading {
RowLayout {
anchors.fill: parent
PlasmaComponents.Button {
Layout.fillWidth: true
iconSource: "go-previous-view"
text: i18n("Return to Clipboard")
onClicked: stack.pop()
}
PlasmaComponents.ContextMenu {
id: menu
visualParent: configureButton
placement: PlasmaCore.Types.BottomPosedLeftAlignedPopup
onStatusChanged: {
if (status == PlasmaComponents.DialogStatus.Closed) {
configureButton.checked = false;
}
}
function change(type) {
barcodeView.barcodeType = type;
barcodeView.show(barcodeView.uuid);
}
function change(type) {
barcodeView.barcodeType = type;
barcodeView.show(barcodeView.uuid);
}
PlasmaComponents.MenuItem {
text: i18n("QR Code")
checkable: true
checked: barcodeView.barcodeType == 0
onClicked: menu.change(0)
}
PlasmaComponents.MenuItem {
text: i18n("Data Matrix")
checkable: true
checked: barcodeView.barcodeType == 1
onClicked: menu.change(1)
}
PlasmaComponents.MenuItem {
text: i18nc("Aztec barcode", "Aztec")
checkable: true
checked: barcodeView.barcodeType == 4
onClicked: menu.change(4)
}
PlasmaComponents.MenuItem {
text: i18n("Code 39")
checkable: true
checked: barcodeView.barcodeType == 2
onClicked: menu.change(2)
PlasmaComponents.MenuItem {
text: i18n("QR Code")
checkable: true
checked: barcodeView.barcodeType == 0
onClicked: menu.change(0)
}
PlasmaComponents.MenuItem {
text: i18n("Data Matrix")
checkable: true
checked: barcodeView.barcodeType == 1
onClicked: menu.change(1)
}
PlasmaComponents.MenuItem {
text: i18nc("Aztec barcode", "Aztec")
checkable: true
checked: barcodeView.barcodeType == 4
onClicked: menu.change(4)
}
PlasmaComponents.MenuItem {
text: i18n("Code 39")
checkable: true
checked: barcodeView.barcodeType == 2
onClicked: menu.change(2)
}
PlasmaComponents.MenuItem {
text: i18n("Code 93")
checkable: true
checked: barcodeView.barcodeType == 3
onClicked: menu.change(3)
}
}
PlasmaComponents.MenuItem {
text: i18n("Code 93")
PlasmaComponents.ToolButton {
id: configureButton
checkable: true
checked: barcodeView.barcodeType == 3
onClicked: menu.change(3)
iconSource: "configure"
tooltip: i18n("Change the barcode type")
onClicked: menu.openRelative()
}
}
PlasmaComponents.ToolButton {
id: configureButton
checkable: true
iconSource: "configure"
tooltip: i18n("Change the barcode type")
onClicked: menu.openRelative()
}
}
QImageItem {
id: barcodePreview
property alias busy: busyIndicator.visible
fillMode: QImageItem.PreserveAspectFit
Layout.fillWidth: true
Layout.fillHeight: true
Layout.topMargin: units.smallSpacing
onWidthChanged: barcodeView.show(barcodeView.uuid)
onHeightChanged: barcodeView.show(barcodeView.uuid)
PlasmaComponents.BusyIndicator {
......
......@@ -76,22 +76,25 @@ ColumnLayout {
}
}
RowLayout {
Layout.fillWidth: true
visible: clipboardMenu.model.count > 0
property var header: PlasmaExtras.PlasmoidHeading {
RowLayout {
anchors.fill: parent
enabled: clipboardMenu.model.count > 0
PlasmaComponents.TextField {
id: filter
placeholderText: i18n("Search...")
clearButtonShown: true
Layout.fillWidth: true
}
PlasmaComponents.ToolButton {
iconSource: "edit-clear-history"
tooltip: i18n("Clear history")
onClicked: clipboardSource.service("", "clearHistory")
PlasmaComponents.TextField {
id: filter
placeholderText: i18n("Search...")
clearButtonShown: true
Layout.fillWidth: true
}
PlasmaComponents.ToolButton {
iconSource: "edit-clear-history"
tooltip: i18n("Clear history")
onClicked: clipboardSource.service("", "clearHistory")
}
}
}
Menu {
id: clipboardMenu
model: PlasmaCore.SortFilterModel {
......@@ -102,6 +105,7 @@ ColumnLayout {
supportsBarcodes: clipboardSource.data["clipboard"]["supportsBarcodes"]
Layout.fillWidth: true
Layout.fillHeight: true
Layout.topMargin: units.smallSpacing
onItemSelected: clipboardSource.service(uuid, "select")
onRemove: clipboardSource.service(uuid, "remove")
onEdit: clipboardSource.edit(uuid)
......
......@@ -22,6 +22,7 @@ import QtQuick.Layouts 1.1
import org.kde.plasma.plasmoid 2.0
import org.kde.plasma.core 2.0 as PlasmaCore
import org.kde.plasma.components 2.0 as PlasmaComponents
import org.kde.plasma.components 3.0 as PlasmaComponents3
import org.kde.plasma.extras 2.0 as PlasmaExtras
Item {
......@@ -63,13 +64,15 @@ Item {
}
}
Plasmoid.fullRepresentation: Item {
Plasmoid.fullRepresentation: PlasmaComponents3.Page {
id: dialogItem
Layout.minimumWidth: units.gridUnit * 5
Layout.minimumHeight: units.gridUnit * 5
focus: true
header: stack.currentPage.header
property alias listMargins: listItemSvg.margins
PlasmaCore.FrameSvgItem {
......
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