[Digital clock plasmoid] Calendar settings page: port to QQC2 & Kirigami and improve layout

Summary:
BUG: 400663
FIXED-IN: 5.15.0

Test Plan:
Before: {F6455075}

After: {F6459462}

(label alignment being a bit off is unrelated to this patch)

Everything still works.

Reviewers: #plasma, #vdg, mart, davidedmundson

Reviewed By: #plasma, davidedmundson

Subscribers: alexde, mvourlakos, abetts, zzag, plasma-devel

Tags: #plasma

Differential Revision: https://phabricator.kde.org/D17354
wilder-broken-krunner
Nate Graham 7 years ago
parent 667386c64b
commit ad34212a8c
  1. 49
      applets/digital-clock/package/contents/ui/configCalendar.qml

@ -19,9 +19,10 @@
*/
import QtQuick 2.0
import QtQuick.Controls 1.0 as QtControls
import QtQuick.Controls 2.4 as QtControls
import QtQuick.Layouts 1.0 as QtLayouts
import org.kde.plasma.calendar 2.0 as PlasmaCalendar
import org.kde.kirigami 2.5 as Kirigami
Item {
id: calendarPage
@ -37,31 +38,37 @@ Item {
plasmoid.configuration.enabledCalendarPlugins = PlasmaCalendar.EventPluginsManager.enabledPlugins;
}
QtLayouts.ColumnLayout {
anchors.left: parent.left
Kirigami.FormLayout {
anchors {
left: parent.left
right: parent.right
}
QtControls.CheckBox {
id: showWeekNumbers
text: i18n("Show week numbers in Calendar")
Kirigami.FormData.label: i18n("General:")
text: i18n("Show week numbers")
}
Item {
Kirigami.FormData.isSection: true
}
QtControls.GroupBox {
QtLayouts.Layout.fillWidth: true
title: i18n("Available Calendar Plugins")
flat: true
QtLayouts.ColumnLayout {
Kirigami.FormData.label: i18n("Available Plugins:")
Kirigami.FormData.buddyFor: children[1] // 0 is the Repeater
QtLayouts.ColumnLayout {
Repeater {
id: calendarPluginsRepeater
model: PlasmaCalendar.EventPluginsManager.model
delegate: QtLayouts.RowLayout {
QtControls.CheckBox {
text: model.display
checked: model.checked
onClicked: {
//needed for model's setData to be called
model.checked = checked;
calendarPage.configurationChanged();
}
Repeater {
id: calendarPluginsRepeater
model: PlasmaCalendar.EventPluginsManager.model
delegate: QtLayouts.RowLayout {
QtControls.CheckBox {
text: model.display
checked: model.checked
onClicked: {
//needed for model's setData to be called
model.checked = checked;
calendarPage.configurationChanged();
}
}
}

Loading…
Cancel
Save