Newer
Older
/****************************************************************************
*
* (c) 2009-2016 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
*
* QGroundControl is licensed according to the terms in the file
* COPYING.md in the root of the source code directory.
*
****************************************************************************/
import QtQuick 2.3
import QtQuick.Controls 1.2
import QGroundControl 1.0
import QGroundControl.Palette 1.0
import QGroundControl.Controls 1.0
import QGroundControl.ScreenTools 1.0
Rectangle {
id: settingsView
color: qgcPal.window
z: QGroundControl.zOrderTopMost
readonly property real _defaultTextHeight: ScreenTools.defaultFontPixelHeight
readonly property real _defaultTextWidth: ScreenTools.defaultFontPixelWidth
readonly property real _horizontalMargin: _defaultTextWidth / 2
readonly property real _verticalMargin: _defaultTextHeight / 2
readonly property real _buttonHeight: ScreenTools.isTinyScreen ? ScreenTools.defaultFontPixelHeight * 3 : ScreenTools.defaultFontPixelHeight * 2
property bool _first: true
QGCPalette { id: qgcPal }
Component.onCompleted: {
__rightPanel.source = QGroundControl.corePlugin.settingsPages[QGroundControl.corePlugin.defaultSettings].url
}
QGCFlickable {
id: buttonList
width: buttonColumn.width
anchors.topMargin: _verticalMargin
anchors.top: parent.top
anchors.bottom: parent.bottom
anchors.leftMargin: _horizontalMargin
anchors.left: parent.left
contentHeight: buttonColumn.height + _verticalMargin
flickableDirection: Flickable.VerticalFlick
clip: true
ExclusiveGroup { id: panelActionGroup }
id: buttonColumn
spacing: _verticalMargin
property real _maxButtonWidth: 0
QGCLabel {
anchors.left: parent.left
anchors.right: parent.right
text: qsTr("Application Settings")
wrapMode: Text.WordWrap
horizontalAlignment: Text.AlignHCenter
visible: !ScreenTools.isShortScreen
}
Repeater {
model: QGroundControl.corePlugin.settingsPages
QGCButton {
height: _buttonHeight
text: modelData.title
exclusiveGroup: panelActionGroup
Layout.fillWidth: true
onClicked: {
if(__rightPanel.source !== modelData.url) {
__rightPanel.source = modelData.url
}
checked = true
Component.onCompleted: {
if(_first) {
_first = false
checked = true
}
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
}
}
}
}
}
Rectangle {
id: divider
anchors.topMargin: _verticalMargin
anchors.bottomMargin: _verticalMargin
anchors.leftMargin: _horizontalMargin
anchors.left: buttonList.right
anchors.top: parent.top
anchors.bottom: parent.bottom
width: 1
color: qgcPal.windowShade
}
//-- Panel Contents
Loader {
id: __rightPanel
anchors.leftMargin: _horizontalMargin
anchors.rightMargin: _horizontalMargin
anchors.topMargin: _verticalMargin
anchors.bottomMargin: _verticalMargin
anchors.left: divider.right
anchors.right: parent.right
anchors.top: parent.top
anchors.bottom: parent.bottom
}
}