Skip to content
Config.qml 6.06 KiB
Newer Older
/*
    This file is part of Gabriel's Qt/QML CardBoard Sample (or short GQQCS)

    GQQCS is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    GQQCS is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with Foobar.  If not, see <http://www.gnu.org/licenses/>.

    Updated: 07/08/2015 by: Gabriel F.
*/

import QtQuick 2.4

Item {
    anchors.fill: parent
    visible: true
    opacity: 1.0

    property var continueCallback: function() {  }

    Rectangle {
        anchors.fill: parent
        color: "white"
        gradient: Gradient {
            GradientStop {
                position: 0.00;
                color: "#97d8f1";
            }
            GradientStop {
                position: 1.00;
                color: "#35617c";
            }
        }
    }

    Item {
        id: header
        width: parent.width
        height: width*0.2
        anchors.top: parent.top
        anchors.horizontalCenter: parent.horizontalCenter
        Rectangle {
            id: continuarRec
            anchors.centerIn: parent
            width: parent.width*0.95
            height: parent.height*0.9
            radius: height*0.2
            color: "#bbffffff"
            Text {
                text: localeHelper.getSymbol("CTitle")
                horizontalAlignment: Text.AlignHCenter
                font.pixelSize: parent.height*0.2
                anchors.centerIn: parent
            }

            MouseArea {
                anchors.fill: parent
                onClicked: {
                    continueCallback()
                }
            }

            Image {
                width: height
                height: parent.height*0.6
                fillMode: Image.PreserveAspectFit
                anchors.verticalCenter: parent.verticalCenter
                anchors.right: parent.right
                anchors.rightMargin: parent.height*0.2
                source: "qrc:/images/Icon_interrogacao.svg"
                MouseArea {
                    anchors.fill: parent
                    onClicked: {
                        sobreApp.show()
                    }
                }
            }
        }
    }

    property var modos: [localeHelper.getSymbol("3DGyro"),localeHelper.getSymbol("MonoGyro"),localeHelper.getSymbol("3DTouch"),localeHelper.getSymbol("MonoTouch")]
    property var modosD: [localeHelper.getSymbol("3DDescription"),localeHelper.getSymbol("GyroDescription"),localeHelper.getSymbol("MonoDescription"),localeHelper.getSymbol("TouchDescription")]
    property int modo: 0
    onModoChanged: {
        if (modos[modo] == localeHelper.getSymbol("3DGyro"))     { stereo = true;  useGyro = true }
        if (modos[modo] == localeHelper.getSymbol("MonoGyro"))   { stereo = false; useGyro = true }
        if (modos[modo] == localeHelper.getSymbol("3DTouch"))    { stereo = true;  useGyro = false }
        if (modos[modo] == localeHelper.getSymbol("MonoTouch"))  { stereo = false; useGyro = false }
    }

    function modoPadrao() {
        if (gyro) {
            stereo = false
            useGyro = true
            modo = 1
        } else {
            modos.shift(); modos.shift();
            stereo = false
            useGyro = false
            modo = 1
        }
    }
    Component.onCompleted: { modoPadrao() }

    Item {
        width: parent.width
        height: (parent.height - header.height)

        anchors.horizontalCenter: parent.horizontalCenter
        anchors.top: header.bottom

        Item {
            id: use3d
            width: parent.width*0.5
            height: parent.height
            anchors.left: parent.left
            anchors.top: parent.top
            Rectangle {
                anchors.centerIn: parent
                width: parent.width*0.9
                height: parent.height*0.9
                radius: continuarRec.radius
                color: "#550099CC"
                Text {
                    id: stereoText
                    property string plus: ""
                    text: localeHelper.getSymbol("ViewModeTitle")+"\n\n" + modos[modo] + plus
                    verticalAlignment: Text.AlignVCenter
                    horizontalAlignment: Text.AlignHCenter
                    wrapMode: Text.WordWrap
                    anchors.fill: parent
                    font.pixelSize: parent.height*0.06
                    color: "white"
                }
                MouseArea {
                    anchors.fill: parent
                    onClicked: {
                        modo += 1
                        if (modo > modos.length - 1) {
                            modo = 0
                        }
                    }
                }
            }
        }

        Item {
            id: use3dDescription
            width: parent.width*0.5
            height: parent.height
            anchors.right: parent.right
            anchors.top: parent.top
            Rectangle {
                anchors.centerIn: parent
                width: parent.width*0.9
                height: parent.height*0.9
                radius: continuarRec.radius
                color: "#55009999"
                Text {
                    id: stereoTextDescription
                    property string plus: ""
                    text: localeHelper.getSymbol("Description")+"\n\n" + (stereo ? modosD[0] : modosD[2]) + "\n\n" + (useGyro ? modosD[1] : modosD[3])
                    verticalAlignment: Text.AlignVCenter
                    horizontalAlignment: Text.AlignHCenter
                    wrapMode: Text.WordWrap
                    anchors.fill: parent
                    font.pixelSize: parent.height*0.06
                    color: "white"
                }
            }
        }
    }

    SobreApp {
        id: sobreApp
    }
}