diff options
Diffstat (limited to 'rockwork/qml/NotificationsPage.qml')
| -rw-r--r-- | rockwork/qml/NotificationsPage.qml | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/rockwork/qml/NotificationsPage.qml b/rockwork/qml/NotificationsPage.qml new file mode 100644 index 0000000..3942ecf --- /dev/null +++ b/rockwork/qml/NotificationsPage.qml @@ -0,0 +1,99 @@ +import QtQuick 2.0 +import Sailfish.Silica 1.0 +import RockPool 1.0 + +Page { + id: root + + property var pebble: null + + SilicaFlickable { + id: flickable + anchors.fill: parent + contentHeight: column.height + PageHeader { + title: qsTr("Notifications") + } + Column { + + anchors.fill: parent + anchors.topMargin: units.gu(1) + + + + Item { + width: parent.width + implicitHeight: infoLabel.height + + Label { + id: infoLabel + anchors { + left: parent.left + right: parent.right + margins: units.gu(2) + } + + wrapMode: Text.WordWrap + text: i18n.tr("Entries here will be added as notifications appear on the phone. Selected notifications will be shown on your Pebble smartwatch.") + } + } + + + ListView { + width: parent.width + //Layout.fillHeight: true + clip: true + model: root.pebble.notifications + + delegate: ListItem { + Item { + Rectangle { + //SlotsLayout.position: SlotsLayout.Leading; + height: units.gu(5) + width: height + color: { + // Add some hacks for known icons + switch (model.icon) { + case "calendar": + return "orange"; + case "settings": + return "grey"; + case "dialog-question-symbolic": + return "red"; + case "alarm-clock": + return "purple"; + case "gpm-battery-050": + return "green"; + } + return "black" + } + // source: Image { + // height: parent.height + // width: parent.width + // source: model.icon.indexOf("/") === 0 ? "file://" + model.icon : "" + // } + Label { + text: model.name + } + + IconButton { + anchors.fill: parent + anchors.margins: units.gu(.5) + icon.source: model.icon.indexOf("/") !== 0 ? model.icon : "" + //color: "white" + } + } + + Switch { + checked: model.enabled + // SlotsLayout.position: SlotsLayout.Trailing; + onClicked: { + root.pebble.setNotificationFilter(model.name, checked) + } + } + } + } + } + } + } +} |
