// Copyright (C) 2016 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only

/*!
    \example qmlweather
    \title Qml Weather
    \ingroup qtcharts_examples
    \examplecategory {Data Visualization}
    \image examples_qmlweather.png {Screenshot showing three different charts with three axes
           (Temperature, Date, and Rainfall) and the first describing the maximum temperature as a
           line chart in blue, the second describing the minimum temperature, also as a line
           chart in green and the third describing the rainfall as a bar chart in orange}

    \brief This is a basic demonstration showing how to use the different chart types by using qml.

    By default the application uses static test data to mimic a weather forecast. You can also
    obtain an application id from http://www.worldweatheronline.com/ to get access to weather API
    provided by World Weather Online. You can then give your application id as a parameter to the
    Qml Weather executable to make it use live data.

    For example:
    \code
    bin\qmlweather.exe 1234567890abcdef123456
    \endcode

    \include examples-run.qdocinc

    \section1 Using Charts in Qt Quick Applications

    The example application uses a ChartView and a some series to visualize weather data:
    \snippet qmlweather/qml/qmlweather/main.qml 1
    \snippet qmlweather/qml/qmlweather/main.qml 2

    To get data with weather forecast data, we make an HTTP GET request to World Weather Online. We
    request the response in JSON data format.
    \snippet qmlweather/qml/qmlweather/main.qml 3

    The JSON response contains an array of forecast data:
    \snippet qmlweather/qml/qmlweather/main.qml 4

    That is then used as input data for our series and a ListModel we use as a container for weather
    icon URLs:
    \snippet qmlweather/qml/qmlweather/main.qml 5
*/
