Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Q
qgroundcontrol
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Valentin Platzgummer
qgroundcontrol
Commits
2bb2421b
Commit
2bb2421b
authored
9 years ago
by
Don Gagne
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #1552 from DonLakeFlyer/QGCView
ViewWithDialog -> QGCView
parents
ccc5f622
4d3dd793
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
401 additions
and
339 deletions
+401
-339
qgroundcontrol.qrc
qgroundcontrol.qrc
+4
-1
AirframeComponent.qml
src/AutoPilotPlugins/PX4/AirframeComponent.qml
+10
-5
ParameterEditor.qml
src/QmlControls/ParameterEditor.qml
+267
-315
QGCView.qml
src/QmlControls/QGCView.qml
+29
-17
QGCViewDialog.qml
src/QmlControls/QGCViewDialog.qml
+47
-0
QGCViewPanel.qml
src/QmlControls/QGCViewPanel.qml
+40
-0
qmldir
src/QmlControls/qmldir
+4
-1
No files found.
qgroundcontrol.qrc
View file @
2bb2421b
...
...
@@ -32,7 +32,10 @@
<file alias="QGroundControl/Controls/VehicleSummaryRow.qml">src/QmlControls/VehicleSummaryRow.qml</file>
<file alias="QGroundControl/Controls/arrow-down.png">src/QmlControls/arrow-down.png</file>
<file alias="QGroundControl/Controls/ViewWidget.qml">src/ViewWidgets/ViewWidget.qml</file>
<file alias="QGroundControl/Controls/ViewWithDialog.qml">src/QmlControls/ViewWithDialog.qml</file>
<file alias="QGroundControl/Controls/QGCView.qml">src/QmlControls/QGCView.qml</file>
<file alias="QGroundControl/Controls/QGCViewPanel.qml">src/QmlControls/QGCViewPanel.qml</file>
<file alias="QGroundControl/Controls/QGCViewDialog.qml">src/QmlControls/QGCViewDialog.qml</file>
<file alias="QGroundControl/Controls/ParameterEditor.qml">src/QmlControls/ParameterEditor.qml</file>
...
...
This diff is collapsed.
Click to expand it.
src/AutoPilotPlugins/PX4/AirframeComponent.qml
View file @
2bb2421b
...
...
@@ -32,8 +32,9 @@ import QGroundControl.Palette 1.0
import
QGroundControl
.
Controls
1.0
import
QGroundControl
.
Controllers
1.0
ViewWithDialog
{
viewComponent
:
view
QGCView
{
id
:
rootQGCView
viewComponent
:
view
Component
{
id
:
view
...
...
@@ -45,9 +46,13 @@ ViewWithDialog {
signal
showDialog
(
Component
component
,
string
title
,
int
charWidth
,
int
buttons
)
signal
hideDialog
function
doWorkAfterComponentCompleted
()
{
if
(
controller
.
showCustomConfigPanel
)
{
panel
.
showDialog
(
customConfigDialog
,
"
Custom Airframe Config
"
,
50
,
StandardButton
.
Reset
)
Connections
{
target
:
rootQGCView
onCompleted
:
{
if
(
controller
.
showCustomConfigPanel
)
{
panel
.
showDialog
(
customConfigDialog
,
"
Custom Airframe Config
"
,
50
,
StandardButton
.
Reset
)
}
}
}
...
...
This diff is collapsed.
Click to expand it.
src/QmlControls/ParameterEditor.qml
View file @
2bb2421b
...
...
@@ -36,384 +36,336 @@ import QGroundControl.Controllers 1.0
import
QGroundControl
.
FactSystem
1.0
import
QGroundControl
.
FactControls
1.0
Rectangle
{
/// true: show full information, false: for use in smaller widgets
property
bool
fullMode
:
true
QGCPalette
{
id
:
__qgcPal
;
colorGroupEnabled
:
true
}
ParameterEditorController
{
id
:
__controller
}
QGCLabel
{
id
:
__textControl
;
text
:
"
X
"
;
visible
:
false
}
readonly
property
real
__leftMargin
:
10
readonly
property
real
__rightMargin
:
20
readonly
property
int
__maxParamChars
:
16
color
:
__qgcPal
.
window
// We use an ExclusiveGroup to maintain the visibility of a single editing control at a time
ExclusiveGroup
{
id
:
__exclusiveEditorGroup
}
property
Fact
__editorOverlayFact
:
Fact
{
}
property
real
__textHeight
:
__textControl
.
contentHeight
property
real
__textWidth
:
__textControl
.
contentWidth
Item
{
id
:
__editorOverlay
anchors.fill
:
parent
visible
:
false
z
:
100
Rectangle
{
width
:
__textWidth
*
75
height
:
parent
.
height
anchors.left
:
parent
.
left
anchors.right
:
editorDialog
.
left
opacity
:
0.80
color
:
__qgcPal
.
window
}
QGCView
{
viewComponent
:
parameterList
Rectangle
{
id
:
editorDialog
width
:
fullMode
?
__textWidth
*
50
:
parent
.
width
height
:
parent
.
height
anchors.right
:
parent
.
right
color
:
__qgcPal
.
windowShadeDark
/// true: show full information, false: for use in smaller widgets
property
bool
fullMode
:
true
Column
{
spacing
:
__textHeight
anchors.fill
:
parent
QGCPalette
{
id
:
__qgcPal
;
colorGroupEnabled
:
true
}
ParameterEditorController
{
id
:
__controller
}
QGCLabel
{
id
:
__textMeasure
;
text
:
"
X
"
;
visible
:
false
}
property
Fact
__editorDialogFact
:
Fact
{
}
Rectangle
{
width
:
parent
.
width
height
:
saveButton
.
height
color
:
__qgcPal
.
windowShade
QGCLabel
{
x
:
__textWidth
height
:
parent
.
height
verticalAlignment
:
Text
.
AlignVCenter
text
:
"
Edit Parameter
"
}
readonly
property
real
__leftMargin
:
10
readonly
property
real
__rightMargin
:
20
readonly
property
int
__maxParamChars
:
16
QGCButton
{
anchors.right
:
saveButton
.
left
anchors.bottom
:
parent
.
bottom
text
:
"
Cancel
"
property
real
__textHeight
:
__textMeasure
.
contentHeight
property
real
__textWidth
:
__textMeasure
.
contentWidth
onClicked
:
{
__editorOverlay
.
visible
=
false
}
}
Component
{
id
:
parameterList
QGCButton
{
id
:
saveButton
anchors.right
:
parent
.
right
primary
:
true
text
:
"
Save
"
QGCViewPanel
{
id
:
panel
onClicked
:
{
__editorOverlayFact
.
value
=
valueField
.
text
__editorOverlay
.
visible
=
false
}
}
}
Component
{
id
:
factRowsComponent
Column
{
spacing
:
__textHeight
anchors.leftMargin
:
__textWidth
*
2
anchors.rightMargin
:
__textWidth
anchors.left
:
parent
.
left
anchors.right
:
parent
.
right
id
:
factColumn
x
:
__leftMargin
QGCLabel
{
width
:
parent
.
width
wrapMode
:
Text
.
WordWrap
text
:
__editorOverlayFact
.
shortDescription
?
__editorOverlayFact
.
shortDescription
:
"
Description missing
"
height
:
__textHeight
+
(
ScreenTools
.
pixelSizeFactor
*
(
9
))
text
:
group
verticalAlignment
:
Text
.
AlignVCenter
font.pointSize
:
ScreenTools
.
fontPointFactor
*
(
16
);
}
QGCLabel
{
width
:
parent
.
width
wrapMode
:
Text
.
WordWrap
visible
:
__editorOverlayFact
.
longDescription
text
:
__editorOverlayFact
.
longDescription
Rectangle
{
width
:
parent
.
width
height
:
1
color
:
__qgcPal
.
text
}
QGCTextField
{
id
:
valueField
text
:
__editorOverlayFact
.
valueString
}
Repeater
{
model
:
__controller
.
getFactsForGroup
(
componentId
,
group
)
QGCLabel
{
text
:
__editorOverlayFact
.
name
}
Column
{
Item
{
x
:
__leftMargin
width
:
parent
.
width
height
:
__textHeight
+
(
ScreenTools
.
pixelSizeFactor
*
(
9
))
Row
{
spacing
:
__textWidth
Fact
{
id
:
modelFact
QGCLabel
{
text
:
"
Units:
"
}
QGCLabel
{
text
:
__editorOverlayFact
.
units
?
__editorOverlayFact
.
units
:
"
none
"
}
}
Component.onCompleted
:
{
name
=
modelData
+
"
:
"
+
componentId
}
}
QGCLabel
{
id
:
nameLabel
width
:
__textWidth
*
(
__maxParamChars
+
1
)
height
:
parent
.
height
verticalAlignment
:
Text
.
AlignVCenter
text
:
modelFact
.
name
}
QGCLabel
{
id
:
valueLabel
width
:
__textWidth
*
20
height
:
parent
.
height
anchors.left
:
nameLabel
.
right
verticalAlignment
:
Text
.
AlignVCenter
color
:
modelFact
.
valueEqualsDefault
?
__qgcPal
.
text
:
"
orange
"
text
:
modelFact
.
valueString
+
"
"
+
modelFact
.
units
}
QGCLabel
{
height
:
parent
.
height
anchors.left
:
valueLabel
.
right
verticalAlignment
:
Text
.
AlignVCenter
visible
:
fullMode
text
:
modelFact
.
shortDescription
}
MouseArea
{
anchors.fill
:
parent
acceptedButtons
:
Qt
.
LeftButton
onClicked
:
{
__editorDialogFact
=
modelFact
panel
.
showDialog
(
editorDialogComponent
,
"
Parameter Editor
"
,
fullMode
?
50
:
-
1
,
StandardButton
.
Cancel
|
StandardButton
.
Save
)
}
}
}
Row
{
spacing
:
__textWidth
Rectangle
{
x
:
__leftMargin
width
:
factColumn
.
width
-
__leftMargin
-
__rightMargin
height
:
1
color
:
__qgcPal
.
windowShade
}
}
// Column - Fact
}
// Repeater - Facts
}
// Column - Facts
}
// Component - factRowsComponent
QGCLabel
{
text
:
"
Minimum value:
"
}
QGCLabel
{
text
:
__editorOverlayFact
.
min
}
}
Column
{
anchors.fill
:
parent
Row
{
spacing
:
__textWidth
Item
{
width
:
parent
.
width
height
:
firstButton
.
height
QGCLabel
{
text
:
"
Maxmimum value:
"
}
QGCLabel
{
text
:
__editorOverlayFact
.
max
}
QGCLabel
{
font.pointSize
:
ScreenTools
.
fontPointFactor
*
(
20
)
visible
:
fullMode
text
:
"
PARAMETER EDITOR
"
}
Row
{
spacing
:
__textWidth
QGCLabel
{
text
:
"
Default value:
"
}
QGCLabel
{
text
:
__editorOverlayFact
.
defaultValueAvailable
?
__editorOverlayFact
.
defaultValue
:
"
none
"
}
}
spacing
:
10
layoutDirection
:
Qt
.
RightToLeft
width
:
parent
.
width
QGCLabel
{
width
:
parent
.
width
wrapMode
:
Text
.
WordWrap
text
:
"
Warning: Modifying parameters while vehicle is in flight can lead to vehicle instability and possible vehicle loss.
"
+
"
Make sure you know what you are doing and double-check your values before Save!
"
QGCButton
{
text
:
"
Clear RC to Param
"
onClicked
:
__controller
.
clearRCToParam
()
}
QGCButton
{
text
:
"
Save to file
"
visible
:
fullMode
onClicked
:
__controller
.
saveToFile
()
}
QGCButton
{
text
:
"
Load from file
"
visible
:
fullMode
onClicked
:
__controller
.
loadFromFile
()
}
QGCButton
{
id
:
firstButton
text
:
"
Refresh
"
onClicked
:
__controller
.
refresh
()
}
}
}
// Column - Fact information
}
// Column - Header + Fact information
QGCButton
{
anchors.rightMargin
:
__textWidth
anchors.right
:
rcButton
.
left
anchors.bottom
:
parent
.
bottom
visible
:
__editorOverlayFact
.
defaultValueAvailable
text
:
"
Reset to default
"
}
onClicked
:
{
__editorOverlayFact
.
value
=
__editorOverlayFact
.
defaultValue
__editorOverlay
.
visible
=
false
Item
{
id
:
lastSpacer
height
:
10
width
:
5
}
}
QGCButton
{
id
:
rcButton
anchors.right
:
parent
.
right
anchors.bottom
:
parent
.
bottom
visible
:
__editorOverlayFact
.
defaultValueAvailable
text
:
"
Set RC to Param...
"
onClicked
:
__controller
.
setRCToParam
(
__editorOverlayFact
.
name
)
}
}
// Rectangle - editorDialog
}
// Item - editorOverlay
Item
{
width
:
parent
.
width
height
:
parent
.
height
-
(
lastSpacer
.
y
+
lastSpacer
.
height
)
Component
{
id
:
factRowsComponent
ScrollView
{
id
:
groupScroll
width
:
__textWidth
*
25
height
:
parent
.
height
Column
{
id
:
factColumn
x
:
__leftMargin
Column
{
Repeater
{
model
:
__controller
.
componentIds
QGCLabel
{
height
:
__textHeight
+
(
ScreenTools
.
pixelSizeFactor
*
(
9
))
text
:
group
verticalAlignment
:
Text
.
AlignVCenter
font.pointSize
:
ScreenTools
.
fontPointFactor
*
(
16
);
}
Column
{
id
:
componentColumn
Rectangle
{
width
:
parent
.
width
height
:
1
color
:
__qgcPal
.
text
}
readonly
property
int
componentId
:
parseInt
(
modelData
)
Repeater
{
model
:
__controller
.
getFactsForGroup
(
componentId
,
group
)
QGCLabel
{
height
:
contentHeight
+
(
ScreenTools
.
pixelSizeFactor
*
(
9
))
text
:
"
Component #:
"
+
componentId
.
toString
()
verticalAlignment
:
Text
.
AlignVCenter
font.pointSize
:
ScreenTools
.
fontPointFactor
*
(
16
);
}
Column
{
Item
{
x
:
__leftMargin
width
:
parent
.
width
height
:
__textHeight
+
(
ScreenTools
.
pixelSizeFactor
*
(
9
))
Repeater
{
model
:
__controller
.
getGroupsForComponent
(
componentColumn
.
componentId
)
Column
{
QGCButton
{
x
:
__leftMargin
width
:
groupScroll
.
width
-
__leftMargin
-
__rightMargin
text
:
modelData
onClicked
:
{
factRowsLoader
.
sourceComponent
=
null
factRowsLoader
.
componentId
=
componentId
factRowsLoader
.
group
=
modelData
factRowsLoader
.
sourceComponent
=
factRowsComponent
}
}
Item
{
width
:
1
height
:
ScreenTools
.
pixelSizeFactor
*
(
3
)
}
}
// Column - Group
}
// Repeater - Groups
Fact
{
id
:
modelFact
Item
{
height
:
10
width
:
10
}
}
// Column - Component
}
// Repeater - Components
}
// Column - Component
}
// ScrollView - Groups
Component.onCompleted
:
{
name
=
modelData
+
"
:
"
+
componentId
}
}
ScrollView
{
id
:
factScrollView
anchors.left
:
groupScroll
.
right
anchors.right
:
parent
.
right
height
:
parent
.
height
QGCLabel
{
id
:
nameLabel
width
:
__textWidth
*
(
__maxParamChars
+
1
)
height
:
parent
.
height
verticalAlignment
:
Text
.
AlignVCenter
text
:
modelFact
.
name
}
Loader
{
id
:
factRowsLoader
width
:
factScrollView
.
width
QGCLabel
{
id
:
valueLabel
width
:
__textWidth
*
20
height
:
parent
.
height
anchors.left
:
nameLabel
.
right
verticalAlignment
:
Text
.
AlignVCenter
color
:
modelFact
.
valueEqualsDefault
?
__qgcPal
.
text
:
"
orange
"
text
:
modelFact
.
valueString
+
"
"
+
modelFact
.
units
property
int
componentId
:
__controller
.
componentIds
[
0
]
property
string
group
:
__controller
.
getGroupsForComponent
(
__controller
.
componentIds
[
0
])[
0
]
sourceComponent
:
factRowsComponent
}
}
// ScrollView - Facts
}
// Item - Group ScrollView + Facts
}
// Column - Outer
}
}
// Component - Parameter List
QGCLabel
{
height
:
parent
.
height
anchors.left
:
valueLabel
.
right
verticalAlignment
:
Text
.
AlignVCenter
visible
:
fullMode
text
:
modelFact
.
shortDescription
}
Component
{
id
:
editorDialogComponent
MouseArea
{
anchors.fill
:
parent
acceptedButtons
:
Qt
.
LeftButton
QGCViewDialog
{
id
:
editorDialog
onClicked
:
{
__editorOverlayFact
=
modelFact
__editorOverlay
.
visible
=
true
}
}
}
property
bool
fullMode
:
true
Rectangle
{
x
:
__leftMargin
width
:
factColumn
.
width
-
__leftMargin
-
__rightMargin
height
:
1
color
:
__qgcPal
.
windowShade
}
}
// Column - Fact
}
// Repeater - Facts
}
// Column - Facts
}
// Component - factRowsComponent
Column
{
anchors.fill
:
parent
Item
{
width
:
parent
.
width
height
:
firstButton
.
height
QGCLabel
{
font.pointSize
:
ScreenTools
.
fontPointFactor
*
(
20
)
visible
:
fullMode
text
:
"
PARAMETER EDITOR
"
function
accept
()
{
__editorDialogFact
.
value
=
valueField
.
text
editorDialog
.
hideDialog
()
}
Row
{
spacing
:
10
layoutDirection
:
Qt
.
RightToL
eft
width
:
parent
.
width
Column
{
spacing
:
__textHeight
anchors.left
:
parent
.
l
eft
anchors.right
:
parent
.
right
QGCButton
{
text
:
"
Clear RC to Param
"
onClicked
:
__controller
.
clearRCToParam
()
QGCLabel
{
width
:
parent
.
width
wrapMode
:
Text
.
WordWrap
text
:
__editorDialogFact
.
shortDescription
?
__editorDialogFact
.
shortDescription
:
"
Description missing
"
}
QGCButton
{
text
:
"
Save to file
"
visible
:
fullMode
onClicked
:
__controller
.
saveToFile
()
}
QGCButton
{
text
:
"
Load from file
"
visible
:
fullMode
onClicked
:
__controller
.
loadFromFile
()
}
QGCButton
{
id
:
firstButton
text
:
"
Refresh
"
onClicked
:
__controller
.
refresh
()
QGCLabel
{
width
:
parent
.
width
wrapMode
:
Text
.
WordWrap
visible
:
__editorDialogFact
.
longDescription
text
:
__editorDialogFact
.
longDescription
}
}
}
Item
{
id
:
lastSpacer
height
:
10
width
:
5
}
QGCTextField
{
id
:
valueField
text
:
__editorDialogFact
.
valueString
}
Item
{
width
:
parent
.
width
height
:
parent
.
height
-
(
lastSpacer
.
y
+
lastSpacer
.
height
)
QGCLabel
{
text
:
__editorDialogFact
.
name
}
ScrollView
{
id
:
groupScroll
width
:
__textWidth
*
25
height
:
parent
.
height
Row
{
spacing
:
__textWidth
Column
{
Repeater
{
model
:
__controller
.
componentIds
QGCLabel
{
text
:
"
Units:
"
}
QGCLabel
{
text
:
__editorDialogFact
.
units
?
__editorDialogFact
.
units
:
"
none
"
}
}
Column
{
id
:
componentColumn
Row
{
spacing
:
__textWidth
readonly
property
int
componentId
:
parseInt
(
modelData
)
QGCLabel
{
text
:
"
Minimum value:
"
}
QGCLabel
{
text
:
__editorDialogFact
.
min
}
}
QGCLabel
{
height
:
contentHeight
+
(
ScreenTools
.
pixelSizeFactor
*
(
9
))
text
:
"
Component #:
"
+
componentId
.
toString
()
verticalAlignment
:
Text
.
AlignVCenter
font.pointSize
:
ScreenTools
.
fontPointFactor
*
(
16
);
}
Row
{
spacing
:
__textWidth
Repeater
{
model
:
__controller
.
getGroupsForComponent
(
componentColumn
.
componentId
)
QGCLabel
{
text
:
"
Maxmimum value:
"
}
QGCLabel
{
text
:
__editorDialogFact
.
max
}
}
Column
{
QGCButton
{
x
:
__leftMargin
width
:
groupScroll
.
width
-
__leftMargin
-
__rightMargin
text
:
modelData
onClicked
:
{
factRowsLoader
.
sourceComponent
=
null
factRowsLoader
.
componentId
=
componentId
factRowsLoader
.
group
=
modelData
factRowsLoader
.
sourceComponent
=
factRowsComponent
}
}
Row
{
spacing
:
__textWidth
Item
{
width
:
1
height
:
ScreenTools
.
pixelSizeFactor
*
(
3
)
}
}
// Column - Group
}
// Repeater - Groups
QGCLabel
{
text
:
"
Default value:
"
}
QGCLabel
{
text
:
__editorDialogFact
.
defaultValueAvailable
?
__editorDialogFact
.
defaultValue
:
"
none
"
}
}
Item
{
height
:
10
width
:
10
}
}
// Column - Component
}
// Repeater - Components
}
// Column - Component
}
// ScrollView - Groups
QGCLabel
{
width
:
parent
.
width
wrapMode
:
Text
.
WordWrap
text
:
"
Warning: Modifying parameters while vehicle is in flight can lead to vehicle instability and possible vehicle loss.
"
+
"
Make sure you know what you are doing and double-check your values before Save!
"
}
}
// Column - Fact information
ScrollView
{
id
:
factScrollView
anchors.left
:
groupScroll
.
right
anchors.right
:
parent
.
right
height
:
parent
.
height
Loader
{
id
:
factRowsLoader
width
:
factScrollView
.
width
QGCButton
{
anchors.rightMargin
:
__textWidth
anchors.right
:
rcButton
.
left
anchors.bottom
:
parent
.
bottom
visible
:
__editorDialogFact
.
defaultValueAvailable
text
:
"
Reset to default
"
property
int
componentId
:
__controller
.
componentIds
[
0
]
property
string
group
:
__controller
.
getGroupsForComponent
(
__controller
.
componentIds
[
0
])[
0
]
sourceComponent
:
factRowsComponent
onClicked
:
{
__editorDialogFact
.
value
=
__editorDialogFact
.
defaultValue
editorDialog
.
hideDialog
()
}
}
// ScrollView - Facts
}
// Item - Group ScrollView + Facts
}
// Column - Outer
}
}
QGCButton
{
id
:
rcButton
anchors.right
:
parent
.
right
anchors.bottom
:
parent
.
bottom
visible
:
__editorDialogFact
.
defaultValueAvailable
text
:
"
Set RC to Param...
"
onClicked
:
__controller
.
setRCToParam
(
__editorDialogFact
.
name
)
}
}
// Rectangle - editorDialog
}
// Component - Editor Dialog
}
// QGCView
\ No newline at end of file
This diff is collapsed.
Click to expand it.
src/QmlControls/
ViewWithDialog
.qml
→
src/QmlControls/
QGCView
.qml
View file @
2bb2421b
...
...
@@ -35,14 +35,22 @@ import QGroundControl.FactSystem 1.0
import
QGroundControl
.
FactControls
1.0
Item
{
id
:
__rootItem
property
Component
viewComponent
/// This is signalled when the top level Item reaches Component.onCompleted. This allows
/// the view subcomponent to connect to this signal and do work once the full ui is ready
/// to go.
signal
completed
function
__showDialog
(
component
,
title
,
charWidth
,
buttons
)
{
__acceptButton
.
visible
=
false
__rejectButton
.
visible
=
false
__dialogCharWidth
=
charWidth
__dialogTitle
=
title
// Accept role buttons
if
(
buttons
&
StandardButton
.
Ok
)
{
__acceptButton
.
text
=
"
Ok
"
__acceptButton
.
visible
=
true
...
...
@@ -52,12 +60,6 @@ Item {
}
else
if
(
buttons
&
StandardButton
.
Save
)
{
__acceptButton
.
text
=
"
Save
"
__acceptButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
Cancel
)
{
__rejectButton
.
text
=
"
Cancel
"
__rejectButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
Close
)
{
__rejectButton
.
text
=
"
Cancel
"
__rejectButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
Apply
)
{
__acceptButton
.
text
=
"
Apply
"
__acceptButton
.
visible
=
true
...
...
@@ -73,15 +75,6 @@ Item {
}
else
if
(
buttons
&
StandardButton
.
YesToAll
)
{
__acceptButton
.
text
=
"
Yes to All
"
__acceptButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
No
)
{
__rejectButton
.
text
=
"
No
"
__rejectButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
NoToAll
)
{
__rejectButton
.
text
=
"
No to All
"
__rejectButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
Abort
)
{
__rejectButton
.
text
=
"
Abort
"
__rejectButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
Retry
)
{
__acceptButton
.
text
=
"
Retry
"
__acceptButton
.
visible
=
true
...
...
@@ -95,6 +88,25 @@ Item {
__acceptButton
.
text
=
"
Ignore
"
__acceptButton
.
visible
=
true
}
// Reject role buttons
if
(
buttons
&
StandardButton
.
Cancel
)
{
__rejectButton
.
text
=
"
Cancel
"
__rejectButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
Close
)
{
__rejectButton
.
text
=
"
Cancel
"
__rejectButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
No
)
{
__rejectButton
.
text
=
"
No
"
__rejectButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
NoToAll
)
{
__rejectButton
.
text
=
"
No to All
"
__rejectButton
.
visible
=
true
}
else
if
(
buttons
&
StandardButton
.
Abort
)
{
__rejectButton
.
text
=
"
Abort
"
__rejectButton
.
visible
=
true
}
__dialogComponent
=
component
__viewPanel
.
enabled
=
false
__dialogOverlay
.
visible
=
true
...
...
@@ -120,7 +132,7 @@ Item {
property
Component
__dialogComponent
Component.onCompleted
:
__viewPanel
.
item
.
doWorkAfterComponentC
ompleted
()
Component.onCompleted
:
c
ompleted
()
Connections
{
target
:
__viewPanel
.
item
...
...
@@ -161,7 +173,7 @@ Item {
// This is the main dialog panel which is anchored to the right edge
Rectangle
{
id
:
__dialogPanel
width
:
__textWidth
*
__dialogCharWidth
width
:
__
dialogCharWidth
==
-
1
?
parent
.
width
:
__
textWidth
*
__dialogCharWidth
height
:
parent
.
height
anchors.right
:
parent
.
right
color
:
__qgcPal
.
windowShadeDark
...
...
This diff is collapsed.
Click to expand it.
src/QmlControls/QGCViewDialog.qml
0 → 100644
View file @
2bb2421b
/*=====================================================================
QGroundControl Open Source Ground Control Station
(c) 2009 - 2015 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
This file is part of the QGROUNDCONTROL project
QGROUNDCONTROL 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.
QGROUNDCONTROL 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 QGROUNDCONTROL. If not, see <http://www.gnu.org/licenses/>.
======================================================================*/
/// @file
/// @author Don Gagne <don@thegagnes.com>
import
QtQuick
2.3
import
QtQuick
.
Controls
1.3
import
QGroundControl
.
Controls
1.0
import
QGroundControl
.
Palette
1.0
Rectangle
{
QGCPalette
{
id
:
qgcPal
;
colorGroupEnabled
:
enabled
}
signal
hideDialog
function
accept
()
{
hideDialog
()
}
function
reject
()
{
hideDialog
()
}
color
:
qgcPal
.
windowShadeDark
}
This diff is collapsed.
Click to expand it.
src/QmlControls/QGCViewPanel.qml
0 → 100644
View file @
2bb2421b
/*=====================================================================
QGroundControl Open Source Ground Control Station
(c) 2009 - 2015 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
This file is part of the QGROUNDCONTROL project
QGROUNDCONTROL 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.
QGROUNDCONTROL 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 QGROUNDCONTROL. If not, see <http://www.gnu.org/licenses/>.
======================================================================*/
/// @file
/// @author Don Gagne <don@thegagnes.com>
import
QtQuick
2.3
import
QtQuick
.
Controls
1.3
import
QGroundControl
.
Palette
1.0
import
QGroundControl
.
Controls
1.0
Rectangle
{
QGCPalette
{
id
:
qgcPal
;
colorGroupEnabled
:
enabled
}
signal
showDialog
(
Component
component
,
string
title
,
int
charWidth
,
int
buttons
)
signal
hideDialog
color
:
qgcPal
.
window
}
This diff is collapsed.
Click to expand it.
src/QmlControls/qmldir
View file @
2bb2421b
...
...
@@ -16,5 +16,8 @@ VehicleRotationCal 1.0 VehicleRotationCal.qml
VehicleSummaryRow 1.0 VehicleSummaryRow.qml
ParameterEditor 1.0 ParameterEditor.qml
ViewWidget 1.0 ViewWidget.qml
ViewWithDialog 1.0 ViewWithDialog.qml
QGCView 1.0 QGCView.qml
QGCViewPanel 1.0 QGCViewPanel.qml
QGCViewDialog 1.0 QGCViewDialog.qml
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment