diff options
Diffstat (limited to 'examples/positioning/weatherinfo/weatherinfo.qml')
-rw-r--r-- | examples/positioning/weatherinfo/weatherinfo.qml | 208 |
1 files changed, 0 insertions, 208 deletions
diff --git a/examples/positioning/weatherinfo/weatherinfo.qml b/examples/positioning/weatherinfo/weatherinfo.qml deleted file mode 100644 index 62bbe7d7..00000000 --- a/examples/positioning/weatherinfo/weatherinfo.qml +++ /dev/null @@ -1,208 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the examples of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:BSD$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** BSD License Usage -** Alternatively, you may use this file under the terms of the BSD license -** as follows: -** -** "Redistribution and use in source and binary forms, with or without -** modification, are permitted provided that the following conditions are -** met: -** * Redistributions of source code must retain the above copyright -** notice, this list of conditions and the following disclaimer. -** * Redistributions in binary form must reproduce the above copyright -** notice, this list of conditions and the following disclaimer in -** the documentation and/or other materials provided with the -** distribution. -** * Neither the name of The Qt Company Ltd nor the names of its -** contributors may be used to endorse or promote products derived -** from this software without specific prior written permission. -** -** -** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS -** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT -** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT -** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, -** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY -** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE." -** -** $QT_END_LICENSE$ -** -****************************************************************************/ - -import QtQuick 2.0 -import "components" -//! [0] -import WeatherInfo 1.0 - -Item { - id: window -//! [0] - width: 360 - height: 640 - - state: "loading" - - states: [ - State { - name: "loading" - PropertyChanges { target: main; opacity: 0 } - PropertyChanges { target: wait; opacity: 1 } - }, - State { - name: "ready" - PropertyChanges { target: main; opacity: 1 } - PropertyChanges { target: wait; opacity: 0 } - } - ] -//! [1] - AppModel { - id: appModel - onReadyChanged: { - if (appModel.ready) - window.state = "ready" - else - window.state = "loading" - } - } -//! [1] - Item { - id: wait - anchors.fill: parent - - Text { - text: "Loading weather data..." - anchors.centerIn: parent - font.pointSize: 18 - } - } - - Item { - id: main - anchors.fill: parent - - Column { - spacing: 6 - - anchors { - fill: parent - topMargin: 6; bottomMargin: 6; leftMargin: 6; rightMargin: 6 - } - - Rectangle { - width: parent.width - height: 25 - color: "lightgrey" - - Text { - text: (appModel.hasValidCity ? appModel.city : "Unknown location") + (appModel.useGps ? " (GPS)" : "") - anchors.fill: parent - horizontalAlignment: Text.AlignHCenter - verticalAlignment: Text.AlignVCenter - } - - MouseArea { - anchors.fill: parent - onClicked: { - if (appModel.useGps) { - appModel.useGps = false - appModel.city = "Brisbane" - } else { - switch (appModel.city) { - case "Brisbane": - appModel.city = "Oslo" - break - case "Oslo": - appModel.city = "Helsinki" - break - case "Helsinki": - appModel.city = "New York" - break - case "New York": - appModel.useGps = true - break - } - } - } - } - } - -//! [3] - BigForecastIcon { - id: current - - width: main.width -12 - height: 2 * (main.height - 25 - 12) / 3 - - weatherIcon: (appModel.hasValidWeather - ? appModel.weather.weatherIcon - : "sunny") -//! [3] - topText: (appModel.hasValidWeather - ? appModel.weather.temperature - : "??") - bottomText: (appModel.hasValidWeather - ? appModel.weather.weatherDescription - : "No weather data") - - MouseArea { - anchors.fill: parent - onClicked: { - appModel.refreshWeather() - } - } -//! [4] - } -//! [4] - - Row { - id: iconRow - spacing: 6 - - width: main.width - 12 - height: (main.height - 25 - 24) / 3 - - property int daysCount: appModel.forecast.length - property real iconWidth: (daysCount > 0) ? (iconRow.width / daysCount) - 10 - : iconRow.width - property real iconHeight: iconRow.height - - Repeater { - model: appModel.forecast - ForecastIcon { - id: forecast1 - width: iconRow.iconWidth - height: iconRow.iconHeight - - topText: (appModel.hasValidWeather ? - modelData.dayOfWeek : "??") - bottomText: (appModel.hasValidWeather ? - modelData.temperature : "??/??") - weatherIcon: (appModel.hasValidWeather ? - modelData.weatherIcon : "sunny") - } - } - } - } - } -//! [2] -} -//! [2] |