Skip to content
QmlTest.qml 17.3 KiB
Newer Older
Don Gagne's avatar
Don Gagne committed
import QtQuick 2.2
import QtQuick.Controls 1.2
import QtQuick.Controls.Styles 1.2

import QGroundControl.Palette 1.0
import QGroundControl.Controls 1.0
import QGroundControl.FactControls 1.0
Don Gagne's avatar
Don Gagne committed

Rectangle {

    property var palette: QGCPalette { colorGroupEnabled: true }
Don Gagne's avatar
Don Gagne committed
    color: palette.window

Don Gagne's avatar
Don Gagne committed
    Column {
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
        Row {
            ExclusiveGroup { id: themeGroup }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
            QGCRadioButton {
                text: "Light"
                exclusiveGroup: themeGroup
                onClicked: { palette.globalTheme = QGCPalette.Light }
            }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
            QGCRadioButton {
                text: "Dark"
                exclusiveGroup: themeGroup
                onClicked: { palette.globalTheme = QGCPalette.Dark }
Don Gagne's avatar
Don Gagne committed
            }
Don Gagne's avatar
Don Gagne committed
        }

        Row {
            spacing: 30

            Grid {
                columns: 3
                spacing: 5

                Component {
                    id: colorSquare

                    Rectangle {
                        width: 80
                        height: 20
                        border.width: 1
                        border.color: "white"
                        color: parent.color
                    }
                }

                Component {
                    id: rowHeader

                    Text {
                        width: 180
                        height: 20
                        horizontalAlignment: Text.AlignRight
                        verticalAlignment: Text.AlignVCenter
                        color: palette.text
                        text: parent.text
                    }
                }
Don Gagne's avatar
Don Gagne committed
                // Header row
                Loader {
                    sourceComponent: rowHeader
                    property var text: ""
                }
Don Gagne's avatar
Don Gagne committed
                Text {
Don Gagne's avatar
Don Gagne committed
                    width: 80
Don Gagne's avatar
Don Gagne committed
                    height: 20
                    color: palette.text
Don Gagne's avatar
Don Gagne committed
                    horizontalAlignment: Text.AlignHCenter
                    text: "Disabled"
                }
                Text {
                    width: 80
                    height: 20
                    color: palette.text
                    horizontalAlignment: Text.AlignHCenter
                    text: "Enabled"
Don Gagne's avatar
Don Gagne committed
                // window
                Loader {
                    sourceComponent: rowHeader
                    property var text: "window"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.window
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.window
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // windowShade
                Loader {
                    sourceComponent: rowHeader
                    property var text: "windowShade"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.windowShade
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.windowShade
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // windowShadeDark
                Loader {
                    sourceComponent: rowHeader
                    property var text: "windowShadeDark"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.windowShadeDark
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.windowShadeDark
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // text
                Loader {
                    sourceComponent: rowHeader
                    property var text: "text"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.text
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.text
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // button
                Loader {
                    sourceComponent: rowHeader
                    property var text: "button"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.button
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.button
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // buttonText
                Loader {
                    sourceComponent: rowHeader
                    property var text: "buttonText"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.buttonText
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.buttonText
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed
                // buttonHighlight
                Loader {
                    sourceComponent: rowHeader
                    property var text: "buttonHighlight"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.buttonHighlight
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.buttonHighlight
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // buttonHighlightText
                Loader {
                    sourceComponent: rowHeader
                    property var text: "buttonHighlightText"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.buttonHighlightText
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.buttonHighlightText
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // primaryButton
                Loader {
                    sourceComponent: rowHeader
                    property var text: "primaryButton"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.primaryButton
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.primaryButton
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // primaryButtonText
                Loader {
                    sourceComponent: rowHeader
                    property var text: "primaryButtonText"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.primaryButtonText
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.primaryButtonText
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // textField
                Loader {
                    sourceComponent: rowHeader
                    property var text: "textField"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.textField
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.textField
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed
                // textFieldText
                Loader {
                    sourceComponent: rowHeader
                    property var text: "textFieldText"
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: false }
                    property var color: palette.textFieldText
                    sourceComponent: colorSquare
                }
                Loader {
                    property var palette: QGCPalette { colorGroupEnabled: true }
                    property var color: palette.textFieldText
                    sourceComponent: colorSquare
                }
Don Gagne's avatar
Don Gagne committed
            }
Don Gagne's avatar
Don Gagne committed
            Grid {
                columns: 3
                spacing: 10
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                Component {
                    id: ctlRowHeader
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                    Text {
                        width: 120
                        height: 20
                        horizontalAlignment: Text.AlignRight
                        verticalAlignment: Text.AlignVCenter
                        color: palette.text
                        text: parent.text
                    }
                }
Don Gagne's avatar
Don Gagne committed
                // Header row
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: ""
                }
Don Gagne's avatar
Don Gagne committed
                Text {
Don Gagne's avatar
Don Gagne committed
                    width: 100
Don Gagne's avatar
Don Gagne committed
                    height: 20
                    color: palette.text
Don Gagne's avatar
Don Gagne committed
                    horizontalAlignment: Text.AlignHCenter
                    text: "Enabled"
                }
                Text {
                    width: 100
                    height: 20
                    color: palette.text
                    horizontalAlignment: Text.AlignHCenter
                    text: "Disabled"
Don Gagne's avatar
Don Gagne committed
                // QGCLabel
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "QGCLabel"
                }
                QGCLabel {
                    width: 100
                    height: 20
                    text: "Label"
                }
                QGCLabel {
                    width: 100
                    height: 20
                    text: "Label"
                    enabled: false
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // QGCButton
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "QGCButton"
                }
                QGCButton {
                    width: 100
                    height: 20
                    text: "Button"
                }
                QGCButton {
                    width: 100
                    height: 20
                    text: "Button"
                    enabled: false
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // QGCButton - primary
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "QGCButton(primary)"
                }
                QGCButton {
                    width: 100
                    height: 20
                    primary: true
                    text: "Button"
                }
                QGCButton {
                    width: 100
                    height: 20
                    text: "Button"
                    primary: true
                    enabled: false
                }
                // QGCButton - menu
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "QGCButton(menu)"
                }
                Menu {
                    id: buttonMenu
                    MenuItem {
                        text: "Item 1"
                    }
                    MenuItem {
                        text: "Item 2"
                    }
                    MenuItem {
                        text: "Item 3"
                    }
                }
                QGCButton {
                    width: 100
                    height: 20
                    text: "Button"
                    menu: buttonMenu
                }
                QGCButton {
                    width: 100
                    height: 20
                    text: "Button"
                    enabled: false
                    menu: buttonMenu
                }

Don Gagne's avatar
Don Gagne committed
                // QGCRadioButton
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "QGCRadioButton"
                }
                QGCRadioButton {
                    width: 100
                    height: 20
                    text: "Radio"
                }
                QGCRadioButton {
                    width: 100
                    height: 20
                    text: "Radio"
                    enabled: false
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // QGCCheckBox
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "QGCCheckBox"
                }
                QGCCheckBox {
                    width: 100
                    height: 20
                    text: "Check Box"
                }
                QGCCheckBox {
                    width: 100
                    height: 20
                    text: "Check Box"
                    enabled: false
                }
Don Gagne's avatar
Don Gagne committed

Don Gagne's avatar
Don Gagne committed
                // QGCTextField
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "QGCTextField"
                }
                QGCTextField {
                    width: 100
                    height: 20
                    text: "QGCTextField"
                }
                QGCTextField {
                    width: 100
                    height: 20
                    text: "QGCTextField"
                    enabled: false
                }
Don Gagne's avatar
Don Gagne committed
                // FactLabel
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "FactLabel"
                }
                FactLabel {
                    width: 100
                    height: 20
                }
                FactLabel {
                    width: 100
                    height: 20
                    enabled: false
                }
Don Gagne's avatar
Don Gagne committed
                // FactCheckBox
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "FactCheckBox"
                }
                FactCheckBox {
                    width: 100
                    height: 20
                    text: "Fact CheckBox"
                }
                FactCheckBox {
                    width: 100
                    height: 20
                    text: "Fact CheckBox"
                    enabled: false
                }
Don Gagne's avatar
Don Gagne committed
                // FactTextField
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "FactTextField"
                }
                FactTextField {
                    width: 100
                    height: 20
                    text: "FactTextField"
                }
                FactTextField {
                    width: 100
                    height: 20
                    text: "FactTextField"
                    enabled: false
                }
                // QGCComboBox
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "QGCComboBox"
                }
                QGCComboBox {
                    width: 100
                    height: 20
                    model: [ "Item 1", "Item 2", "Item 3" ]
                }
                QGCComboBox {
                    width: 100
                    height: 20
                    model: [ "Item 1", "Item 2", "Item 3" ]
                    enabled: false
                }

Don Gagne's avatar
Don Gagne committed
                // SubMenuButton
                Loader {
                    sourceComponent: ctlRowHeader
                    property var text: "SubMenuButton"
                }
                SubMenuButton {
                    width: 100
                    height: 100
                    text: "SUB MENU"
                }
                SubMenuButton {
                    width: 100
                    height: 100
                    text: "SUB MENU"
                    enabled: false
                }