diff options
| author | Andrew Branson <andrew.branson@cern.ch> | 2016-02-16 23:40:04 +0100 |
|---|---|---|
| committer | Andrew Branson <andrew.branson@cern.ch> | 2016-02-16 23:40:04 +0100 |
| commit | 07fb609095291f8d8544441925dea3d60d636f87 (patch) | |
| tree | f17f17badc7c0ad8f0147b8968bae91016244a97 /rockwork/AppStorePage.qml | |
| parent | e54ee938a3e637f654b393f41ce2ad123d448639 (diff) | |
Moved qml to subdir to unbundle
Diffstat (limited to 'rockwork/AppStorePage.qml')
| -rw-r--r-- | rockwork/AppStorePage.qml | 266 |
1 files changed, 0 insertions, 266 deletions
diff --git a/rockwork/AppStorePage.qml b/rockwork/AppStorePage.qml deleted file mode 100644 index bb8712b..0000000 --- a/rockwork/AppStorePage.qml +++ /dev/null @@ -1,266 +0,0 @@ -import QtQuick 2.4 -import Ubuntu.Components 1.3 -import QtQuick.Layouts 1.1 -import RockWork 1.0 - -Page { - id: root - title: showWatchApps ? i18n.tr("Add new watchapp") : i18n.tr("Add new watchface") - - property var pebble: null - property bool showWatchApps: false - property bool showWatchFaces: false - - property string link: "" - - function fetchHome() { - if (showWatchApps) { - client.fetchHome(AppStoreClient.TypeWatchapp) - } else { - client.fetchHome(AppStoreClient.TypeWatchface) - } - } - - head { - actions: [ - Action { - iconName: "search" - onTriggered: { - if (searchField.shown) { - searchField.shown = false; - root.fetchHome(); - } else { - searchField.shown = true; - } - } - } - ] - } - - Component.onCompleted: { - if (root.link) { - client.fetchLink(link) - } else { - root.fetchHome() - } - } - - AppStoreClient { - id: client - hardwarePlatform: pebble.hardwarePlatform - } - - Item { - id: searchField - anchors { left: parent.left; right: parent.right; top: parent.top } - anchors.topMargin: shown ? 0 : -height - Behavior on anchors.topMargin { UbuntuNumberAnimation {} } - opacity: shown ? 1 : 0 - Behavior on opacity { UbuntuNumberAnimation {} } - height: units.gu(6) - - property bool shown: false - onShownChanged: { - if (shown) { - searchTextField.focus = true; - } - } - - TextField { - id: searchTextField - anchors.centerIn: parent - width: parent.width - units.gu(2) - onDisplayTextChanged: { - searchTimer.restart() - } - - Timer { - id: searchTimer - interval: 300 - onTriggered: { - client.search(searchTextField.displayText, root.showWatchApps ? AppStoreClient.TypeWatchapp : AppStoreClient.TypeWatchface); - } - } - } - } - - Item { - anchors { left: parent.left; top: searchField.bottom; right: parent.right; bottom: parent.bottom } - ListView { - anchors.fill: parent - model: ApplicationsFilterModel { - id: appsFilterModel - model: client.model - } - clip: true - section.property: "groupId" - section.labelPositioning: ViewSection.CurrentLabelAtStart | - ViewSection.InlineLabels - section.delegate: ListItem { - height: section ? label.implicitHeight + units.gu(3) : 0 - - Rectangle { - anchors.fill: parent - color: "white" - } - - RowLayout { - anchors.fill: parent - anchors.margins: units.gu(1) - Label { - id: label - text: client.model.groupName(section) - fontSize: "large" -// font.weight: Font.DemiBold - elide: Text.ElideRight - Layout.fillWidth: true - } - AbstractButton { - Layout.fillHeight: true - implicitWidth: seeAllLabel.implicitWidth + height - Row { - anchors.verticalCenter: parent.verticalCenter - Label { - id: seeAllLabel - text: i18n.tr("See all") - } - Icon { - implicitHeight: parent.height - implicitWidth: height - name: "go-next" - } - } - onClicked: { - pageStack.push(Qt.resolvedUrl("AppStorePage.qml"), {pebble: root.pebble, link: client.model.groupLink(section), title: client.model.groupName(section)}); - } - } - } - } - - footer: Item { - height: client.model.links.length > 0 ? units.gu(6) : 0 - width: parent.width - - RowLayout { - anchors { - fill: parent - margins: units.gu(1) - } - spacing: units.gu(1) - - Repeater { - model: client.model.links - Button { - text: client.model.linkName(client.model.links[index]) - onClicked: client.fetchLink(client.model.links[index]); - color: UbuntuColors.orange - Layout.fillWidth: true - } - } - } - } - - delegate: ListItem { - height: delegateColumn.height + units.gu(2) - - RowLayout { - id: delegateRow - anchors.fill: parent - anchors.margins: units.gu(1) - spacing: units.gu(1) - - AnimatedImage { - Layout.fillHeight: true - Layout.preferredWidth: height - source: model.icon - asynchronous: true -// sourceSize.width: width -// sourceSize.height: height - } - - ColumnLayout { - id: delegateColumn - Layout.fillWidth: true; - Layout.fillHeight: true; - Label { - Layout.fillWidth: true - text: model.name - font.weight: Font.DemiBold - elide: Text.ElideRight - } - Label { - Layout.fillWidth: true - text: model.category - } - RowLayout { - Icon { - name: "like" - Layout.preferredHeight: parent.height - Layout.preferredWidth: height - implicitHeight: parent.height - } - Label { - Layout.fillWidth: true - text: model.hearts - } - Icon { - id: tickIcon - name: "tick" - implicitHeight: parent.height - Layout.preferredWidth: height - visible: root.pebble.installedApps.contains(model.storeId) || root.pebble.installedWatchfaces.contains(model.storeId) - Connections { - target: root.pebble.installedApps - onChanged: { - tickIcon.visible = root.pebble.installedApps.contains(model.storeId) || root.pebble.installedWatchfaces.contains(model.storeId) - } - } - - Connections { - target: root.pebble.installedWatchfaces - onChanged: { - tickIcon.visible = root.pebble.installedApps.contains(model.storeId) || root.pebble.installedWatchfaces.contains(model.storeId) - } - } - - } - } - } - - } - - onClicked: { - client.fetchAppDetails(model.storeId); - pageStack.push(Qt.resolvedUrl("AppStoreDetailsPage.qml"), {app: appsFilterModel.get(index), pebble: root.pebble}) - } - } - } - -// RowLayout { -// id: buttonRow -// anchors { left: parent.left; bottom: parent.bottom; right: parent.right; margins: units.gu(1) } -// spacing: units.gu(1) -// Button { -// text: i18n.tr("Previous") -// Layout.fillWidth: true -// enabled: client.offset > 0 -// onClicked: { -// client.previous() -// } -// } -// Button { -// text: i18n.tr("Next") -// Layout.fillWidth: true -// onClicked: { -// client.next() -// } -// } -// } - } - - ActivityIndicator { - anchors.centerIn: parent - running: client.busy - } -} - |
