/****************************************************************************
**
** 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 QtQml 2.0
import QtQuick 2.0

Item {
    id: page

    property real effectiveOpacity: 1.0
    property real ratio: width / 320 < height / 440 ? width / 320 : height / 440
    property int smallSize: 45 * ratio
    property int bigSize: 2 * smallSize
    property int elementSpacing: 0.14 * smallSize

    anchors.fill: parent

    Timer {
        interval: 2000
        running: true
        repeat: true
        onTriggered: page.effectiveOpacity = (page.effectiveOpacity == 1.0 ? 0.0 : 1.0);
    }

    Column {
        anchors {
            left: parent.left
            leftMargin: page.width / 32
            top: parent.top
            topMargin: page.height / 48
        }
        spacing: page.elementSpacing

        populate: Transition {
            NumberAnimation { properties: "x,y"; from: 200; duration: 100; easing.type: Easing.OutBounce }
        }
        add: Transition {
            NumberAnimation { properties: "y"; easing.type: Easing.OutQuad }
        }
        move: Transition {
            NumberAnimation { properties: "y"; easing.type: Easing.OutBounce }
        }

        Rectangle { color: "#80c342"; width: page.bigSize; height: page.smallSize }

        Rectangle {
            id: greenV1
            visible: opacity != 0
            width: page.bigSize; height: page.smallSize
            color: "#006325"
            border.color: "transparent"
            Behavior on opacity { NumberAnimation {} }
            opacity: page.effectiveOpacity
        }

        Rectangle { color: "#14aaff"; width: page.bigSize; height: page.smallSize }

        Rectangle {
            id: greenV2
            visible: opacity != 0
            width: page.bigSize; height: page.smallSize
            color: "#006325"
            border.color: "transparent"
            Behavior on opacity { NumberAnimation {} }
            opacity: page.effectiveOpacity
        }

        Rectangle { color: "#6400aa"; width: page.bigSize; height: page.smallSize }
        Rectangle { color: "#80c342"; width: page.bigSize; height: page.smallSize }
    }

    Row {
        anchors {
            left: page.left
            leftMargin: page.width / 32
            bottom: page.bottom
            bottomMargin: page.height / 48
        }
        spacing: page.elementSpacing

        populate: Transition {
            NumberAnimation { properties: "x,y"; from: 200; duration: 100; easing.type: Easing.OutBounce }
        }
        add: Transition {
            NumberAnimation { properties: "x"; easing.type: Easing.OutQuad }
        }
        move: Transition {
            NumberAnimation { properties: "x"; easing.type: Easing.OutBounce }
        }

        Rectangle { color: "#80c342"; width: page.smallSize; height: page.bigSize }

        Rectangle {
            id: blueH1
            visible: opacity != 0
            width: page.smallSize; height: page.bigSize
            color: "#006325"
            border.color: "transparent"
            Behavior on opacity { NumberAnimation {} }
            opacity: page.effectiveOpacity
        }

        Rectangle { color: "#14aaff"; width: page.smallSize; height: page.bigSize }

        Rectangle {
            id: greenH2
            visible: opacity != 0
            width: page.smallSize; height: page.bigSize
            color: "#006325"
            border.color: "transparent"
            Behavior on opacity { NumberAnimation {} }
            opacity: page.effectiveOpacity
        }

        Rectangle { color: "#6400aa"; width: page.smallSize; height: page.bigSize }
        Rectangle { color: "#80c342"; width: page.smallSize; height: page.bigSize }
    }

    Grid {
        anchors.top: parent.top
        anchors.topMargin: page.height / 48
        anchors.left: flowItem.left
        columns: 3
        spacing: page.elementSpacing

        populate: Transition {
            NumberAnimation { properties: "x,y"; from: 200; duration: 100; easing.type: Easing.OutBounce }
        }
        add: Transition {
            NumberAnimation { properties: "x,y"; easing.type: Easing.OutBounce }
        }
        move: Transition {
            NumberAnimation { properties: "x,y"; easing.type: Easing.OutBounce }
        }

        Rectangle { color: "#80c342"; width: page.smallSize; height: page.smallSize }

        Rectangle {
            id: greenG1
            visible: opacity != 0
            width: page.smallSize; height: page.smallSize
            color: "#006325"
            border.color: "transparent"
            Behavior on opacity { NumberAnimation {} }
            opacity: page.effectiveOpacity
        }

        Rectangle { color: "#14aaff"; width: page.smallSize; height: page.smallSize }

        Rectangle {
            id: greenG2
            visible: opacity != 0
            width: page.smallSize; height:page. smallSize
            color: "#006325"
            border.color: "transparent"
            Behavior on opacity { NumberAnimation {} }
            opacity: page.effectiveOpacity
        }

        Rectangle { color: "#6400aa"; width: page.smallSize; height: page.smallSize }

        Rectangle {
            id: greenG3
            visible: opacity != 0
            width: page.smallSize; height: page.smallSize
            color: "#006325"
            border.color: "transparent"
            Behavior on opacity { NumberAnimation {} }
            opacity: page.effectiveOpacity
        }

        Rectangle { color: "#80c342"; width: page.smallSize; height: page.smallSize }
        Rectangle { color: "#14aaff"; width: page.smallSize; height: page.smallSize }
        Rectangle { color: "#6400aa"; width: page.smallSize; height: page.smallSize }
    }

    Flow {
        id: flowItem

        anchors.right: page.right
        anchors.rightMargin: page.width / 32
        y: 2 * page.bigSize
        width: 1.8 * page.bigSize
        spacing: page.elementSpacing

        //! [move]
        move: Transition {
            NumberAnimation { properties: "x,y"; easing.type: Easing.OutBounce }
        }
        //! [move]

        //! [add]
        add: Transition {
            NumberAnimation { properties: "x,y"; easing.type: Easing.OutBounce }
        }
        //! [add]

        //! [populate]
        populate: Transition {
            NumberAnimation { properties: "x,y"; from: 200; duration: 100; easing.type: Easing.OutBounce }
        }
        //! [populate]

        Rectangle { color: "#80c342"; width: page.smallSize; height: page.smallSize }

        Rectangle {
            id: greenF1
            visible: opacity != 0
            width: 0.6 * page.bigSize; height: page.smallSize
            color: "#006325"
            border.color: "transparent"
            Behavior on opacity { NumberAnimation {} }
            opacity: page.effectiveOpacity
        }

        Rectangle { color: "#14aaff"; width: 0.3 * page.bigSize; height: page.smallSize }

        Rectangle {
            id: greenF2
            visible: opacity != 0
            width: 0.6 * page.bigSize; height: page.smallSize
            color: "#006325"
            border.color: "transparent"
            Behavior on opacity { NumberAnimation {} }
            opacity: page.effectiveOpacity
        }

        Rectangle { color: "#6400aa"; width: page.smallSize; height: page.smallSize }

        Rectangle {
            id: greenF3
            visible: opacity != 0
            width: 0.4 * page.bigSize; height: page.smallSize
            color: "#006325"
            border.color: "transparent"
            Behavior on opacity { NumberAnimation {} }
            opacity: page.effectiveOpacity
        }

        Rectangle { color: "#80c342"; width: 0.8 * page.bigSize; height: page.smallSize }
    }
}
