Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Valentin Platzgummer
qgroundcontrol
Commits
bed21b49
Commit
bed21b49
authored
Feb 23, 2015
by
dogmaphobic
Browse files
New, QML based Tool Bar.
parent
134b2c1a
Changes
28
Expand all
Hide whitespace changes
Inline
Side-by-side
files/images/status/battery_0.svg
0 → 100644
View file @
bed21b49
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
version=
"1.1"
id=
"svg4264"
sodipodi:docname=
"battery_0.svg"
inkscape:version=
"0.91 r13725"
xmlns:rdf=
"http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc=
"http://purl.org/dc/elements/1.1/"
xmlns:inkscape=
"http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi=
"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:svg=
"http://www.w3.org/2000/svg"
xmlns:cc=
"http://creativecommons.org/ns#"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
x=
"0px"
y=
"0px"
viewBox=
"-142 87 326.3 620"
enable-background=
"new -142 87 326.3 620"
xml:space=
"preserve"
>
<title
id=
"title4294"
>
Battery
</title>
<sodipodi:namedview
inkscape:window-maximized=
"0"
inkscape:window-y=
"65"
inkscape:window-x=
"2776"
inkscape:window-height=
"1259"
inkscape:window-width=
"2003"
fit-margin-bottom=
"0.02"
fit-margin-right=
"0.02"
inkscape:current-layer=
"layer1"
inkscape:pageshadow=
"2"
inkscape:document-units=
"in"
inkscape:pageopacity=
"0.0"
units=
"in"
borderopacity=
"1.0"
bordercolor=
"#666666"
pagecolor=
"#ffffff"
showgrid=
"false"
inkscape:cy=
"387.50002"
inkscape:zoom=
"1.4103225"
inkscape:cx=
"115.31779"
id=
"base"
fit-margin-top=
"0.02"
fit-margin-left=
"0.02"
showborder=
"true"
>
</sodipodi:namedview>
<path
id=
"rect4970"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
d=
"M-127.7,667.9v-502
c0-14.8,13.1-26.8,29.3-26.8h239.2c16.2,0,29.3,12,29.3,26.8v502c0,14.8-13.1,26.8-29.3,26.8H-98.4
C-114.6,694.7-127.7,682.7-127.7,667.9z"
/>
<path
id=
"rect4360"
inkscape:connector-curvature=
"0"
fill=
"none"
d=
"M-140.6,677.6V156.1c0-15.4,14.2-27.9,31.8-27.9h259.9
c17.6,0,31.8,12.6,31.8,27.9v521.5c0,15.4-14.2,27.9-31.8,27.9h-259.8C-126.3,705.5-140.6,693-140.6,677.6z"
/>
<g
id=
"g4222"
transform=
"translate(-127.22081,216.20249)"
>
<path
id=
"path4224"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
stroke-miterlimit=
"10"
d=
"
M231.3-81.3c0,2.2-1.7,3.9-3.9,3.9h-155c-2.2,0-3.9-1.7-3.9-3.9v-40.2c0-2.2,1.7-3.9,3.9-3.9h155c2.2,0,3.9,1.7,3.9,3.9L231.3-81.3
L231.3-81.3L231.3-81.3z"
/>
</g>
<text
transform=
"matrix(0.757 0 0 1 -80.0776 552.9648)"
font-family=
"'Helvetica'"
font-size=
"406.7761"
>
X
</text>
</svg>
files/images/status/battery_100.svg
0 → 100644
View file @
bed21b49
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
version=
"1.1"
id=
"svg4264"
sodipodi:docname=
"battery_100.svg"
inkscape:version=
"0.91 r13725"
xmlns:rdf=
"http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc=
"http://purl.org/dc/elements/1.1/"
xmlns:inkscape=
"http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi=
"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:svg=
"http://www.w3.org/2000/svg"
xmlns:cc=
"http://creativecommons.org/ns#"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
x=
"0px"
y=
"0px"
viewBox=
"-142 87 326.3 620"
enable-background=
"new -142 87 326.3 620"
xml:space=
"preserve"
>
<title
id=
"title4294"
>
Battery
</title>
<sodipodi:namedview
inkscape:window-maximized=
"0"
inkscape:window-y=
"65"
inkscape:window-x=
"2776"
inkscape:window-height=
"1259"
inkscape:window-width=
"2003"
fit-margin-bottom=
"0.02"
fit-margin-right=
"0.02"
inkscape:current-layer=
"layer1"
inkscape:pageshadow=
"2"
inkscape:document-units=
"in"
inkscape:pageopacity=
"0.0"
units=
"in"
borderopacity=
"1.0"
bordercolor=
"#666666"
pagecolor=
"#ffffff"
showgrid=
"false"
inkscape:cy=
"393.84035"
inkscape:zoom=
"1.2144444"
inkscape:cx=
"202.22082"
id=
"base"
fit-margin-top=
"0.02"
fit-margin-left=
"0.02"
showborder=
"true"
>
</sodipodi:namedview>
<path
id=
"rect4970"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
d=
"M-127.7,667.9v-502
c0-14.8,13.1-26.8,29.3-26.8h239.2c16.2,0,29.3,12,29.3,26.8v502c0,14.8-13.1,26.8-29.3,26.8H-98.4
C-114.6,694.7-127.7,682.7-127.7,667.9z"
/>
<path
id=
"rect4360"
inkscape:connector-curvature=
"0"
fill=
"none"
d=
"M-140.6,677.6V156.1c0-15.4,14.2-27.9,31.8-27.9h259.9
c17.6,0,31.8,12.6,31.8,27.9v521.5c0,15.4-14.2,27.9-31.8,27.9h-259.8C-126.3,705.5-140.6,693-140.6,677.6z"
/>
<path
id=
"path4669"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.4,260.4v-90.1h225.1v90.1
H-91.4L-91.4,260.4z"
/>
<path
id=
"path4671"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.4,363.3v-90.1h225.1v90.1
H-91.4z"
/>
<path
id=
"path4673"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.4,466.3v-90.1h225.1v90.1
H-91.4z"
/>
<path
id=
"path4675"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.4,569.2v-90.1h225.1v90.1
H-91.4z"
/>
<path
id=
"path4679"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.4,672V582h225.1V672H-91.4
z"
/>
<g
id=
"g4222"
transform=
"translate(-127.22081,216.20249)"
>
<path
id=
"path4224"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
stroke-miterlimit=
"10"
d=
"
M229.9-81.3c0,2.2-1.7,3.9-3.9,3.9h-155c-2.2,0-3.9-1.7-3.9-3.9v-40.2c0-2.2,1.7-3.9,3.9-3.9h155c2.2,0,3.9,1.7,3.9,3.9L229.9-81.3
L229.9-81.3L229.9-81.3z"
/>
</g>
</svg>
files/images/status/battery_20.svg
0 → 100644
View file @
bed21b49
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
version=
"1.1"
id=
"svg4264"
sodipodi:docname=
"battery_100.svg"
inkscape:version=
"0.91 r13725"
xmlns:rdf=
"http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc=
"http://purl.org/dc/elements/1.1/"
xmlns:inkscape=
"http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi=
"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:svg=
"http://www.w3.org/2000/svg"
xmlns:cc=
"http://creativecommons.org/ns#"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
x=
"0px"
y=
"0px"
viewBox=
"-142 87 326.32 620"
enable-background=
"new -142 87 326.32 620"
xml:space=
"preserve"
>
<title
id=
"title4294"
>
Battery
</title>
<sodipodi:namedview
inkscape:window-maximized=
"0"
inkscape:window-y=
"65"
inkscape:window-x=
"2776"
inkscape:window-height=
"1259"
inkscape:window-width=
"2003"
fit-margin-bottom=
"0.02"
fit-margin-right=
"0.02"
inkscape:current-layer=
"layer1"
inkscape:pageshadow=
"2"
inkscape:document-units=
"in"
inkscape:pageopacity=
"0.0"
units=
"in"
borderopacity=
"1.0"
bordercolor=
"#666666"
pagecolor=
"#ffffff"
showgrid=
"false"
inkscape:cy=
"393.84035"
inkscape:zoom=
"1.2144444"
inkscape:cx=
"202.22082"
id=
"base"
fit-margin-top=
"0.02"
fit-margin-left=
"0.02"
showborder=
"true"
>
</sodipodi:namedview>
<path
id=
"rect4970"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
d=
"M-127.68,667.88v-502
c0-14.8,13.12-26.8,29.28-26.8h239.2c16.16,0,29.28,12,29.28,26.8v502c0,14.8-13.12,26.8-29.28,26.8H-98.4
C-114.64,694.68-127.68,682.68-127.68,667.88z"
/>
<path
id=
"rect4360"
inkscape:connector-curvature=
"0"
fill=
"none"
d=
"M-140.56,677.64V156.12c0-15.36,14.24-27.92,31.76-27.92
h259.92c17.6,0,31.76,12.56,31.76,27.92v521.52c0,15.36-14.24,27.92-31.76,27.92h-259.84C-126.32,705.48-140.56,693-140.56,677.64z"
/>
<path
id=
"path4679"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#471F0D"
d=
"M-91.36,672.04v-90.08h225.12
v90.08H-91.36z"
/>
<g
id=
"g4222"
transform=
"translate(-127.22081,216.20249)"
>
<path
id=
"path4224"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
stroke-miterlimit=
"10"
d=
"
M229.861-81.283c0,2.24-1.68,3.92-3.92,3.92H70.901c-2.24,0-3.92-1.68-3.92-3.92v-40.16c0-2.24,1.68-3.92,3.92-3.92h155.04
c2.24,0,3.92,1.68,3.92,3.92L229.861-81.283L229.861-81.283L229.861-81.283z"
/>
</g>
</svg>
files/images/status/battery_40.svg
0 → 100644
View file @
bed21b49
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
version=
"1.1"
id=
"svg4264"
sodipodi:docname=
"battery_100.svg"
inkscape:version=
"0.91 r13725"
xmlns:rdf=
"http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc=
"http://purl.org/dc/elements/1.1/"
xmlns:inkscape=
"http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi=
"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:svg=
"http://www.w3.org/2000/svg"
xmlns:cc=
"http://creativecommons.org/ns#"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
x=
"0px"
y=
"0px"
viewBox=
"-142 87 326.32 620"
enable-background=
"new -142 87 326.32 620"
xml:space=
"preserve"
>
<title
id=
"title4294"
>
Battery
</title>
<sodipodi:namedview
inkscape:window-maximized=
"0"
inkscape:window-y=
"65"
inkscape:window-x=
"2776"
inkscape:window-height=
"1259"
inkscape:window-width=
"2003"
fit-margin-bottom=
"0.02"
fit-margin-right=
"0.02"
inkscape:current-layer=
"layer1"
inkscape:pageshadow=
"2"
inkscape:document-units=
"in"
inkscape:pageopacity=
"0.0"
units=
"in"
borderopacity=
"1.0"
bordercolor=
"#666666"
pagecolor=
"#ffffff"
showgrid=
"false"
inkscape:cy=
"393.84035"
inkscape:zoom=
"1.2144444"
inkscape:cx=
"202.22082"
id=
"base"
fit-margin-top=
"0.02"
fit-margin-left=
"0.02"
showborder=
"true"
>
</sodipodi:namedview>
<path
id=
"rect4970"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
d=
"M-127.68,667.88v-502
c0-14.8,13.12-26.8,29.28-26.8h239.2c16.16,0,29.28,12,29.28,26.8v502c0,14.8-13.12,26.8-29.28,26.8H-98.4
C-114.64,694.68-127.68,682.68-127.68,667.88z"
/>
<path
id=
"rect4360"
inkscape:connector-curvature=
"0"
fill=
"none"
d=
"M-140.56,677.64V156.12c0-15.36,14.24-27.92,31.76-27.92
h259.92c17.6,0,31.76,12.56,31.76,27.92v521.52c0,15.36-14.24,27.92-31.76,27.92h-259.84C-126.32,705.48-140.56,693-140.56,677.64z"
/>
<path
id=
"path4675"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#9F4B23"
d=
"M-91.36,569.16v-90.08h225.12
v90.08H-91.36z"
/>
<path
id=
"path4679"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#9F4B23"
d=
"M-91.36,672.04v-90.08h225.12
v90.08H-91.36z"
/>
<g
id=
"g4222"
transform=
"translate(-127.22081,216.20249)"
>
<path
id=
"path4224"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
stroke-miterlimit=
"10"
d=
"
M229.861-81.283c0,2.24-1.68,3.92-3.92,3.92H70.901c-2.24,0-3.92-1.68-3.92-3.92v-40.16c0-2.24,1.68-3.92,3.92-3.92h155.04
c2.24,0,3.92,1.68,3.92,3.92L229.861-81.283L229.861-81.283L229.861-81.283z"
/>
</g>
</svg>
files/images/status/battery_60.svg
0 → 100644
View file @
bed21b49
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
version=
"1.1"
id=
"svg4264"
sodipodi:docname=
"battery_100.svg"
inkscape:version=
"0.91 r13725"
xmlns:rdf=
"http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc=
"http://purl.org/dc/elements/1.1/"
xmlns:inkscape=
"http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi=
"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:svg=
"http://www.w3.org/2000/svg"
xmlns:cc=
"http://creativecommons.org/ns#"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
x=
"0px"
y=
"0px"
viewBox=
"-142 87 326.32 620"
enable-background=
"new -142 87 326.32 620"
xml:space=
"preserve"
>
<title
id=
"title4294"
>
Battery
</title>
<sodipodi:namedview
inkscape:window-maximized=
"0"
inkscape:window-y=
"65"
inkscape:window-x=
"2776"
inkscape:window-height=
"1259"
inkscape:window-width=
"2003"
fit-margin-bottom=
"0.02"
fit-margin-right=
"0.02"
inkscape:current-layer=
"layer1"
inkscape:pageshadow=
"2"
inkscape:document-units=
"in"
inkscape:pageopacity=
"0.0"
units=
"in"
borderopacity=
"1.0"
bordercolor=
"#666666"
pagecolor=
"#ffffff"
showgrid=
"false"
inkscape:cy=
"393.84035"
inkscape:zoom=
"1.2144444"
inkscape:cx=
"202.22082"
id=
"base"
fit-margin-top=
"0.02"
fit-margin-left=
"0.02"
showborder=
"true"
>
</sodipodi:namedview>
<path
id=
"rect4970"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
d=
"M-127.68,667.88v-502
c0-14.8,13.12-26.8,29.28-26.8h239.2c16.16,0,29.28,12,29.28,26.8v502c0,14.8-13.12,26.8-29.28,26.8H-98.4
C-114.64,694.68-127.68,682.68-127.68,667.88z"
/>
<path
id=
"rect4360"
inkscape:connector-curvature=
"0"
fill=
"none"
d=
"M-140.56,677.64V156.12c0-15.36,14.24-27.92,31.76-27.92
h259.92c17.6,0,31.76,12.56,31.76,27.92v521.52c0,15.36-14.24,27.92-31.76,27.92h-259.84C-126.32,705.48-140.56,693-140.56,677.64z"
/>
<path
id=
"path4673"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.36,466.28V376.2h225.12
v90.08H-91.36z"
/>
<path
id=
"path4675"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.36,569.16v-90.08h225.12
v90.08H-91.36z"
/>
<path
id=
"path4679"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.36,672.04v-90.08h225.12
v90.08H-91.36z"
/>
<g
id=
"g4222"
transform=
"translate(-127.22081,216.20249)"
>
<path
id=
"path4224"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
stroke-miterlimit=
"10"
d=
"
M229.861-81.283c0,2.24-1.68,3.92-3.92,3.92H70.901c-2.24,0-3.92-1.68-3.92-3.92v-40.16c0-2.24,1.68-3.92,3.92-3.92h155.04
c2.24,0,3.92,1.68,3.92,3.92L229.861-81.283L229.861-81.283L229.861-81.283z"
/>
</g>
</svg>
files/images/status/battery_80.svg
0 → 100644
View file @
bed21b49
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 18.1.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg
version=
"1.1"
id=
"svg4264"
sodipodi:docname=
"battery_100.svg"
inkscape:version=
"0.91 r13725"
xmlns:rdf=
"http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc=
"http://purl.org/dc/elements/1.1/"
xmlns:inkscape=
"http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi=
"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:svg=
"http://www.w3.org/2000/svg"
xmlns:cc=
"http://creativecommons.org/ns#"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:xlink=
"http://www.w3.org/1999/xlink"
x=
"0px"
y=
"0px"
viewBox=
"-142 87 326.32 620"
enable-background=
"new -142 87 326.32 620"
xml:space=
"preserve"
>
<title
id=
"title4294"
>
Battery
</title>
<sodipodi:namedview
inkscape:window-maximized=
"0"
inkscape:window-y=
"65"
inkscape:window-x=
"2776"
inkscape:window-height=
"1259"
inkscape:window-width=
"2003"
fit-margin-bottom=
"0.02"
fit-margin-right=
"0.02"
inkscape:current-layer=
"layer1"
inkscape:pageshadow=
"2"
inkscape:document-units=
"in"
inkscape:pageopacity=
"0.0"
units=
"in"
borderopacity=
"1.0"
bordercolor=
"#666666"
pagecolor=
"#ffffff"
showgrid=
"false"
inkscape:cy=
"393.84035"
inkscape:zoom=
"1.2144444"
inkscape:cx=
"202.22082"
id=
"base"
fit-margin-top=
"0.02"
fit-margin-left=
"0.02"
showborder=
"true"
>
</sodipodi:namedview>
<path
id=
"rect4970"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
d=
"M-127.68,667.88v-502
c0-14.8,13.12-26.8,29.28-26.8h239.2c16.16,0,29.28,12,29.28,26.8v502c0,14.8-13.12,26.8-29.28,26.8H-98.4
C-114.64,694.68-127.68,682.68-127.68,667.88z"
/>
<path
id=
"rect4360"
inkscape:connector-curvature=
"0"
fill=
"none"
d=
"M-140.56,677.64V156.12c0-15.36,14.24-27.92,31.76-27.92
h259.92c17.6,0,31.76,12.56,31.76,27.92v521.52c0,15.36-14.24,27.92-31.76,27.92h-259.84C-126.32,705.48-140.56,693-140.56,677.64z"
/>
<path
id=
"path4671"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.36,363.32v-90.08h225.12
v90.08H-91.36z"
/>
<path
id=
"path4673"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.36,466.28V376.2h225.12
v90.08H-91.36z"
/>
<path
id=
"path4675"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.36,569.16v-90.08h225.12
v90.08H-91.36z"
/>
<path
id=
"path4679"
sodipodi:nodetypes=
"ccccc"
inkscape:connector-curvature=
"0"
fill=
"#09753B"
d=
"M-91.36,672.04v-90.08h225.12
v90.08H-91.36z"
/>
<g
id=
"g4222"
transform=
"translate(-127.22081,216.20249)"
>
<path
id=
"path4224"
inkscape:connector-curvature=
"0"
fill=
"#E6E7E8"
stroke=
"#E6E7E8"
stroke-width=
"6"
stroke-miterlimit=
"10"
d=
"
M229.861-81.283c0,2.24-1.68,3.92-3.92,3.92H70.901c-2.24,0-3.92-1.68-3.92-3.92v-40.16c0-2.24,1.68-3.92,3.92-3.92h155.04
c2.24,0,3.92,1.68,3.92,3.92L229.861-81.283L229.861-81.283L229.861-81.283z"
/>
</g>
</svg>
files/images/status/gps.svg
0 → 100644
View file @
bed21b49
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc=
"http://purl.org/dc/elements/1.1/"
xmlns:cc=
"http://creativecommons.org/ns#"
xmlns:rdf=
"http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg=
"http://www.w3.org/2000/svg"
xmlns=
"http://www.w3.org/2000/svg"
xmlns:sodipodi=
"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape=
"http://www.inkscape.org/namespaces/inkscape"
version=
"1.1"
x=
"0px"
y=
"0px"
width=
"110px"
height=
"110px"
viewBox=
"0 0 110 110"
enable-background=
"new 0 0 110 110"
xml:space=
"preserve"
id=
"svg3852"
inkscape:version=
"0.91 r13725"
sodipodi:docname=
"gps.svg"
><title
id=
"title4758"
>
GPS
</title><metadata
id=
"metadata3933"
><rdf:RDF><cc:Work
rdf:about=
""
><dc:format>
image/svg+xml
</dc:format><dc:type
rdf:resource=
"http://purl.org/dc/dcmitype/StillImage"
/><dc:title>
GPS
</dc:title><dc:creator><cc:Agent><dc:title>
Gus Grubba
</dc:title></cc:Agent></dc:creator><cc:license
rdf:resource=
"http://creativecommons.org/licenses/by-nc/3.0/"
/></cc:Work><cc:License
rdf:about=
"http://creativecommons.org/licenses/by-nc/3.0/"
><cc:permits
rdf:resource=
"http://creativecommons.org/ns#Reproduction"
/><cc:permits
rdf:resource=
"http://creativecommons.org/ns#Distribution"
/><cc:requires
rdf:resource=
"http://creativecommons.org/ns#Notice"
/><cc:requires
rdf:resource=
"http://creativecommons.org/ns#Attribution"
/><cc:prohibits
rdf:resource=
"http://creativecommons.org/ns#CommercialUse"
/><cc:permits
rdf:resource=
"http://creativecommons.org/ns#DerivativeWorks"
/></cc:License></rdf:RDF></metadata><defs
id=
"defs3931"
/><sodipodi:namedview
pagecolor=
"#808080"
bordercolor=
"#666666"
borderopacity=
"1"
objecttolerance=
"10"
gridtolerance=
"10"
guidetolerance=
"10"
inkscape:pageopacity=
"0"
inkscape:pageshadow=
"2"
inkscape:window-width=
"640"
inkscape:window-height=
"480"
id=
"namedview3929"
showgrid=
"false"
inkscape:zoom=
"11.136364"
inkscape:cx=
"55"
inkscape:cy=
"55"
inkscape:current-layer=
"svg3852"
/><g
id=
"Layer_2"
display=
"none"
/><g
id=
"ex_thick"
style=
"fill:#ffffff;stroke:#ffffff;stroke-opacity:1"
transform=
"matrix(-1,0,0,-1,111.82126,108.29692)"
/><g
id=
"Layer_2_copy_3"
display=
"none"
/><g
id=
"ex_thin"
style=
"fill:#ffffff;stroke:#ffffff;stroke-opacity:1"
transform=
"matrix(-1,0,0,-1,111.82126,108.29692)"
/><g
id=
"Layer_2_copy"
display=
"none"
/><g
id=
"em_thick"
style=
"fill:#ffffff;stroke:#ffffff;stroke-opacity:1"
transform=
"matrix(-1,0,0,-1,111.82126,108.29692)"
/><g
id=
"Layer_2_copy_4"
display=
"none"
><g
display=
"inline"
id=
"g3861"
><rect
x=
"-36.1"
y=
"-21.3"
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
width=
"56.3"
height=
"56.3"
id=
"rect3863"
/><circle
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
cx=
"-8"
cy=
"6.8"
r=
"28.2"
id=
"circle3865"
/></g><g
display=
"inline"
id=
"g3867"
><rect
x=
"28.3"
y=
"-21.3"
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
width=
"56.3"
height=
"56.3"
id=
"rect3869"
/><circle
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
cx=
"56.5"
cy=
"6.8"
r=
"28.2"
id=
"circle3871"
/></g><g
display=
"inline"
id=
"g3873"
><rect
x=
"91.5"
y=
"-21.3"
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
width=
"56.3"
height=
"56.3"
id=
"rect3875"
/><circle
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
cx=
"119.7"
cy=
"6.8"
r=
"28.2"
id=
"circle3877"
/></g></g><rect
x=
"-129.87416"
y=
"-13.196043"
transform=
"matrix(-0.70710678,-0.70710678,0.70710678,-0.70710678,0,0)"
stroke-miterlimit=
"10"
width=
"32.29969"
height=
"16.099846"
id=
"rect3882"
style=
"fill:#ffffff;stroke:#ffffff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
/><rect
x=
"24.979502"
y=
"-2.9382656"
transform=
"matrix(0.70710678,0.70710678,-0.70710678,0.70710678,0,0)"
stroke-miterlimit=
"10"
width=
"32.29969"
height=
"16.099846"
id=
"rect3884"
style=
"fill:#ffffff;stroke:#ffffff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
/><path
stroke-miterlimit=
"10"
d=
"m 31.121258,78.396923 c 4.7,4.7 12.4,4.7 17.1,0 l 22.8,-22.9 -17.1,-17.1 -22.8,22.8 c -4.7,4.8 -4.7,12.4 0,17.2 z"
id=
"path3886"
style=
"fill:#ffffff;stroke:#ffffff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
inkscape:connector-curvature=
"0"
/><path
stroke-miterlimit=
"10"
d=
"m 62.521258,46.996923 c 6.3,6.3 16.5,6.3 22.8,0 l -22.8,-22.8 c -6.3,6.2 -6.3,16.5 0,22.8 z"
id=
"path3888"
style=
"fill:#ffffff;stroke:#ffffff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1"
inkscape:connector-curvature=
"0"
/><path
stroke-miterlimit=
"10"
d=
"m 96.084265,44.511467 c 8.249995,-8.25 8.249995,-21.75 0,-30 -8.25,-8.2499943 -21.75,-8.2499943 -30,0"
id=
"path3890"
style=
"fill:none;stroke:#ffffff;stroke-width:3.89999986;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
inkscape:connector-curvature=
"0"
/><path
stroke-miterlimit=
"10"
d=
"m 86.118561,36.977171 c 3.6,-3.6 3.6,-9.3 0,-12.9 -3.6,-3.6 -9.3,-3.6 -12.9,0"
id=
"path3892"
style=
"fill:none;stroke:#ffffff;stroke-width:3.89999986;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-dasharray:none;stroke-opacity:1"
inkscape:connector-curvature=
"0"
/><line
stroke-miterlimit=
"10"
x1=
"65.321259"
y1=
"72.596924"
x2=
"59.621258"
y2=
"66.896919"
id=
"line3894"
style=
"fill:#ffffff;stroke:#ffffff;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none"
/><line
stroke-miterlimit=
"10"
x1=
"42.521255"
y1=
"49.796921"
x2=
"36.821259"
y2=
"44.096924"
id=
"line3896"
style=
"fill:#ffffff;stroke:#ffffff;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10;stroke-opacity:1;stroke-dasharray:none"
/><g
id=
"Layer_2_copy_2"
display=
"none"
><g
display=
"inline"
id=
"g3905"
><rect
x=
"-36.1"
y=
"83.3"
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
width=
"56.3"
height=
"56.3"
id=
"rect3907"
/><circle
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
cx=
"-8"
cy=
"111.5"
r=
"28.2"
id=
"circle3909"
/></g><g
display=
"inline"
id=
"g3911"
><rect
x=
"28.3"
y=
"83.3"
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
width=
"56.3"
height=
"56.3"
id=
"rect3913"
/><circle
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
cx=
"56.5"
cy=
"111.5"
r=
"28.2"
id=
"circle3915"
/></g><g
display=
"inline"
id=
"g3917"
><rect
x=
"91.5"
y=
"83.3"
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
width=
"56.3"
height=
"56.3"
id=
"rect3919"
/><circle
fill=
"none"
stroke=
"#EB008B"
stroke-width=
"0.25"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
cx=
"119.7"
cy=
"111.5"
r=
"28.2"
id=
"circle3921"
/></g></g><g
id=
"hornet"
style=
"fill:#ffffff;stroke:#ffffff;stroke-opacity:1"
transform=
"matrix(-1,0,0,-1,111.82126,108.29692)"
/><g
id=
"Layer_2_copy_5"
display=
"none"
/><g
id=
"hornet_THIN"
style=
"fill:#ffffff;stroke:#ffffff;stroke-opacity:1"
transform=
"matrix(-1,0,0,-1,111.82126,108.29692)"
/><g
id=
"Layer_6"
display=
"none"
><polygon
display=
"inline"
fill=
"none"
stroke=
"#224A80"
stroke-width=
"3"
stroke-linecap=
"round"
stroke-linejoin=
"round"
stroke-miterlimit=
"10"
points=
" -14.6,111.2 -19.5,111.2 -19.5,152.2 3.4,152.2 3.4,111.2 -1.5,111.2 -1.5,104.7 -14.6,104.7 "
id=
"polygon3927"
/></g></svg>
\ No newline at end of file
files/images/status/message_megaphone.png
0 → 100644
View file @
bed21b49
346 Bytes
files/images/status/message_triangle.png
0 → 100644
View file @
bed21b49
295 Bytes
qgroundcontrol.pro
View file @
bed21b49
...
...
@@ -268,6 +268,7 @@ INCLUDEPATH += \
src
/
ui
/
configuration
\
src
/
ui
/
px4_configuration
\
src
/
ui
/
main
\
src
/
ui
/
toolbar
\
src
/
VehicleSetup
\
src
/
AutoPilotPlugins
...
...
@@ -493,7 +494,8 @@ HEADERS += \
src
/
comm
/
LinkConfiguration
.
h
\
src
/
ui
/
QGCCommConfiguration
.
h
\
src
/
ui
/
QGCUDPLinkConfiguration
.
h
\
src
/
uas
/
UASMessageHandler
.
h
src
/
uas
/
UASMessageHandler
.
h
\
src
/
ui
/
toolbar
/
MainToolBar
.
h
SOURCES
+=
\
src
/
main
.
cc
\
...
...
@@ -633,7 +635,8 @@ SOURCES += \
src
/
comm
/
LinkConfiguration
.
cc
\
src
/
ui
/
QGCCommConfiguration
.
cc
\
src
/
ui
/
QGCUDPLinkConfiguration
.
cc
\
src
/
uas
/
UASMessageHandler
.
cc
src
/
uas
/
UASMessageHandler
.
cc
\
src
/
ui
/
toolbar
/
MainToolBar
.
cc
#
#
Unit
Test
specific
configuration
goes
here
...
...
qgroundcontrol.qrc
View file @
bed21b49
...
...
@@ -54,6 +54,15 @@
<file>files/images/actions/system-shutdown.svg</file>
<file>files/images/actions/system-log-out.svg</file>
<file>files/images/actions/system-lock-screen.svg</file>
<file>files/images/status/gps.svg</file>
<file>files/images/status/battery_0.svg</file>
<file>files/images/status/battery_20.svg</file>
<file>files/images/status/battery_40.svg</file>
<file>files/images/status/battery_60.svg</file>
<file>files/images/status/battery_80.svg</file>
<file>files/images/status/battery_100.svg</file>
<file>files/images/status/message_megaphone.png</file>
<file>files/images/status/message_triangle.png</file>
<file>files/images/status/weather-storm.svg</file>
<file>files/images/status/weather-snow.svg</file>
<file>files/images/status/weather-showers.svg</file>
...
...
@@ -235,9 +244,7 @@
<qresource prefix="/QLoggingCategory">
<file alias="qtlogging.ini">files/QLoggingCategory/qtlogging.ini</file>
</qresource>
<qresource prefix="/qml">
<file alias="test.qml">src/test.qml</file>
<file alias="QmlTest.qml">src/QmlControls/QmlTest.qml</file>
...
...
@@ -298,8 +305,8 @@
<file alias="QGroundControl/Controls/FirmwareUpgradeIcon.png">src/VehicleSetup/FirmwareUpgradeIcon.png</file>
<file alias="QGroundControl/Controls/VehicleSummaryIcon.png">src/VehicleSetup/VehicleSummaryIcon.png</file>
<file alias="MainToolBar.qml">src/ui/toolbar/MainToolBar.qml</file>
</qresource>
<qresource prefix="/AutoPilotPlugins/PX4">
<file alias="ParameterFactMetaData.xml">src/AutoPilotPlugins/PX4/ParameterFactMetaData.xml</file>
</qresource>
...
...
src/QGCQmlWidgetHolder.cpp
View file @
bed21b49
...
...
@@ -52,3 +52,8 @@ void QGCQmlWidgetHolder::setContextPropertyObject(const QString& name, QObject*
{
_ui
.
qmlWidget
->
rootContext
()
->
setContextProperty
(
name
,
object
);
}
QQmlContext
*
QGCQmlWidgetHolder
::
getRootContext
()
{
return
_ui
.
qmlWidget
->
rootContext
();
}
src/QGCQmlWidgetHolder.h
View file @
bed21b49
...
...
@@ -49,10 +49,13 @@ public:
/// Sets the UAS into the widget which in turn will load facts into the context
void
setAutoPilot
(
AutoPilotPlugin
*
autoPilot
);
/// Get Root Context
QQmlContext
*
getRootContext
();
/// Sets the QML into the control. Will display errors message box if error occurs loading source.
///
@return true: source loaded, false: source not loaded, errors occured
/// @return true: source loaded, false: source not loaded, errors occured
bool
setSource
(
const
QUrl
&
qmlUrl
);
void
setContextPropertyObject
(
const
QString
&
name
,
QObject
*
object
);
private:
...
...
src/QGCQmlWidgetHolder.ui
View file @
bed21b49
...
...
@@ -15,11 +15,20 @@
</property>
<layout
class=
"QVBoxLayout"
name=
"verticalLayout"
>
<item>
<widget
class=
"QGCQuickWidget"
name=
"qmlWidget"
native=
"true"
/>
<widget
class=
"QGCQuickWidget"
name=
"qmlWidget"
>
<property
name=
"acceptDrops"
>
<bool>
true
</bool>
</property>
</widget>
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>
QQuickWidget
</class>
<extends>
QWidget
</extends>
<header>
QQuickWidget
</header>
</customwidget>
<customwidget>
<class>
QGCQuickWidget
</class>
<extends>
QQuickWidget
</extends>
...
...
src/VehicleSetup/SetupViewTest.cc
View file @
bed21b49
...
...
@@ -65,6 +65,8 @@ void SetupViewTest::_clickThrough_test(void)
// Find the Setup button and click it
// Tool Bar is now a QQuickWidget and cannot be manipulated like below
#if 0
QGCToolBar* toolbar = _mainWindow->findChild<QGCToolBar*>();
Q_ASSERT(toolbar);
...
...
@@ -80,7 +82,7 @@ void SetupViewTest::_clickThrough_test(void)
Q_ASSERT(setupButton);
QTest::mouseClick(setupButton, Qt::LeftButton);
QTest::qWait(1000);
#endif
// Click through all the setup buttons
// FIXME: NYI
...
...
src/qgcunittest/MainWindowTest.cc
View file @
bed21b49
...
...
@@ -31,7 +31,8 @@
#include
"MockLink.h"
#include
"QGCMessageBox.h"
UT_REGISTER_TEST
(
MainWindowTest
)
// TODO: This needs to be changed to accomodate the new QML based tool bar
// UT_REGISTER_TEST(MainWindowTest)
MainWindowTest
::
MainWindowTest
(
void
)
{
...
...
@@ -66,6 +67,8 @@ void MainWindowTest::_connectWindowClose_test(MAV_AUTOPILOT autopilot)
linkMgr
->
connectLink
(
link
);
QTest
::
qWait
(
5000
);
// Give enough time for UI to settle and heartbeats to go through
// Tool Bar is now a QQuickWidget and cannot be manipulated like below
#if 0
// Click through all top level toolbar buttons
QGCToolBar* toolbar = _mainWindow->findChild<QGCToolBar*>();
Q_ASSERT(toolbar);
...
...
@@ -77,7 +80,8 @@ void MainWindowTest::_connectWindowClose_test(MAV_AUTOPILOT autopilot)
QTest::qWait(1000);
}
}
#endif
// On MainWindow close we should get a message box telling the user to disconnect first. Cancel should do nothing.
setExpectedMessageBox
(
QGCMessageBox
::
Cancel
);
_mainWindow
->
close
();
...
...
src/uas/UASMessageHandler.cc
View file @
bed21b49
...
...
@@ -43,6 +43,9 @@ IMPLEMENT_QGC_SINGLETON(UASMessageHandler, UASMessageHandler)
UASMessageHandler
::
UASMessageHandler
(
QObject
*
parent
)
:
QGCSingleton
(
parent
)
,
_activeUAS
(
NULL
)
,
_errorCount
(
0
)
,
_warningCount
(
0
)
,
_normalCount
(
0
)
{
connect
(
UASManager
::
instance
(),
SIGNAL
(
activeUASSet
(
UASInterface
*
)),
this
,
SLOT
(
setActiveUAS
(
UASInterface
*
)));
emit
textMessageReceived
(
NULL
);
...
...
@@ -60,6 +63,9 @@ void UASMessageHandler::clearMessages()
delete
_messages
.
last
();
_messages
.
pop_back
();
}
_errorCount
=
0
;
_warningCount
=
0
;
_normalCount
=
0
;
_mutex
.
unlock
();
}
...
...
@@ -83,15 +89,16 @@ void UASMessageHandler::setActiveUAS(UASInterface* uas)
}
}
void
UASMessageHandler
::
handleTextMessage
(
int
uasid
,
int
compId
,
int
severity
,
QString
text
)
void
UASMessageHandler
::
handleTextMessage
(
int
,
int
compId
,
int
severity
,
QString
text
)
{
Q_UNUSED
(
uasid
);
// Color the output depending on the message severity. We have 3 distinct cases:
// 1: If we have an ERROR or worse, make it bigger, bolder, and highlight it red.
// 2: If we have a warning or notice, just make it bold and color it orange.
// 3: Otherwise color it the standard color, white.
_mutex
.
lock
();
// So first determine the styling based on the severity.
QString
style
;
switch
(
severity
)
...
...
@@ -102,13 +109,16 @@ void UASMessageHandler::handleTextMessage(int uasid, int compId, int severity, Q
case
MAV_SEVERITY_ERROR
:
//Use set RGB values from given color from QGC
style
=
QString
(
"color: rgb(%1, %2, %3); font-weight:bold"
).
arg
(
QGC
::
colorRed
.
red
()).
arg
(
QGC
::
colorRed
.
green
()).
arg
(
QGC
::
colorRed
.
blue
());
_errorCount
++
;
break
;
case
MAV_SEVERITY_NOTICE
:
case
MAV_SEVERITY_WARNING
:
style
=
QString
(
"color: rgb(%1, %2, %3); font-weight:bold"
).
arg
(
QGC
::
colorOrange
.
red
()).
arg
(
QGC
::
colorOrange
.
green
()).
arg
(
QGC
::
colorOrange
.
blue
());
_warningCount
++
;
break
;
default:
style
=
QString
(
"color:white; font-weight:bold"
);
_normalCount
++
;
break
;
}
...
...
@@ -149,8 +159,31 @@ void UASMessageHandler::handleTextMessage(int uasid, int compId, int severity, Q
QString
dateString
=
QDateTime
::
currentDateTime
().
toString
(
"hh:mm:ss.zzz"
);
UASMessage
*
message
=
new
UASMessage
(
compId
,
severity
,
text
);
message
->
_setFormatedText
(
QString
(
"<p style=
\"
color:#CCCCCC
\"
>[%2 - COMP:%3]<font style=
\"
%1
\"
>%4 %5</font></p>"
).
arg
(
style
).
arg
(
dateString
).
arg
(
compId
).
arg
(
severityText
).
arg
(
text
));
_mutex
.
lock
();
_messages
.
append
(
message
);
_mutex
.
unlock
();
emit
textMessageReceived
(
message
);
}
int
UASMessageHandler
::
getErrorCount
()
{
_mutex
.
lock
();
int
c
=
_errorCount
;
_errorCount
=
0
;
_mutex
.
unlock
();
return
c
;
}
int
UASMessageHandler
::
getWarningCount
()
{
_mutex
.
lock
();
int
c
=
_warningCount
;
_warningCount
=
0
;
_mutex
.
unlock
();
return
c
;
}
int
UASMessageHandler
::
getNormalCount
()
{
_mutex
.
lock
();
int
c
=
_normalCount
;
_normalCount
=
0
;
_mutex
.
unlock
();
return
c
;
}
src/uas/UASMessageHandler.h
View file @
bed21b49
...
...
@@ -95,6 +95,18 @@ public:
* @brief Clear messages
*/
void
clearMessages
();
/**
* @brief Get error message count (Resets count once read)
*/
int
getErrorCount
();
/**
* @brief Get warning message count (Resets count once read)
*/
int
getWarningCount
();
/**
* @brief Get normal message count (Resets count once read)
*/
int
getNormalCount
();
public
slots
:
/**
* @brief Set currently active UAS
...
...
@@ -120,6 +132,9 @@ private:
UASInterface
*
_activeUAS
;
QVector
<
UASMessage
*>
_messages
;
QMutex
_mutex
;
int
_errorCount
;
int
_warningCount
;
int
_normalCount
;
};
#endif // QGCMESSAGEHANDLER_H
src/ui/MainWindow.cc
View file @
bed21b49
This diff is collapsed.
Click to expand it.
src/ui/MainWindow.h
View file @
bed21b49
...
...
@@ -30,6 +30,7 @@ This file is part of the QGROUNDCONTROL project
#ifndef _MAINWINDOW_H_
#define _MAINWINDOW_H_
#include
<QMainWindow>
#include
<QStatusBar>
#include
<QStackedWidget>
...
...
@@ -59,6 +60,7 @@ This file is part of the QGROUNDCONTROL project
#ifdef QGC_GOOGLE_EARTH_ENABLED
#include
"QGCGoogleEarthView.h"
#endif
#include
"MainToolBar.h"
#include
"QGCToolBar.h"
#include
"LogCompressor.h"
...
...
@@ -76,7 +78,6 @@ class QSplashScreen;
class
QGCStatusBar
;
class
Linecharts
;
class
QGCDataPlot2D
;
class
MenuActionHelper
;
class
QGCUASFileViewMulti
;
/**
...
...
@@ -85,6 +86,7 @@ class QGCUASFileViewMulti;
**/
class
MainWindow
:
public
QMainWindow
{
friend
class
MainToolBar
;
Q_OBJECT
public:
...
...
@@ -107,13 +109,13 @@ public:
/** @brief Get auto link reconnect setting */
bool
autoReconnectEnabled
()
const
{
return
autoReconnect
;
return
_
autoReconnect
;
}
/** @brief Get low power mode setting */
bool
lowPowerModeEnabled
()
const
{
return
lowPowerMode
;
return
_
lowPowerMode
;
}
QList
<
QAction
*>
listLinkMenuActions
();
...
...
@@ -130,7 +132,6 @@ public:
public
slots
:
/** @brief Show the application settings */
void
showSettings
();
bool
configLink
(
LinkInterface
*
link
);
/** @brief Simulate a link */
void
simulateLink
(
bool
simulate
);
/** @brief Set the currently controlled UAS */
...
...
@@ -177,7 +178,7 @@ public slots:
void
enableAutoReconnect
(
bool
enabled
);
/** @brief Save power by reducing update rates */
void
enableLowPowerMode
(
bool
enabled
)
{
lowPowerMode
=
enabled
;
}
void
enableLowPowerMode
(
bool
enabled
)
{
_
lowPowerMode
=
enabled
;
}
void
closeEvent
(
QCloseEvent
*
event
);
...
...
@@ -242,7 +243,6 @@ protected:
LinkInterface
*
udpLink
;
QSettings
settings
;
QActionGroup
*
centerStackActionGroup
;
// Center widgets
QPointer
<
Linecharts
>
linechartWidget
;
...
...
@@ -254,6 +254,7 @@ protected:
#endif
QPointer
<
QGCFirmwareUpdate
>
firmwareUpdateWidget
;
QPointer
<
MainToolBar
>
_mainToolBar
;
QPointer
<
QGCToolBar
>
toolBar
;
QPointer
<
QDockWidget
>
mavlinkInspectorWidget
;
...
...
@@ -288,11 +289,7 @@ protected:
LogCompressor
*
comp
;
QString
screenFileName
;
QTimer
*
videoTimer
;
bool
autoReconnect
;
MAVLinkSimulationLink
*
simulationLink
;
bool
lowPowerMode
;
///< If enabled, QGC reduces the update rates of all widgets
QGCFlightGearLink
*
fgLink
;
QTimer
windowNameUpdateTimer
;
...
...
@@ -320,9 +317,6 @@ private:
QPointer
<
QWidget
>
_googleEarthView
;
QPointer
<
QWidget
>
_local3DView
;
VIEW_SECTIONS
_currentView
;
///< Currently displayed view
QWidget
*
_currentViewWidget
;
///< Currently displayed view widget
// Dock widget names
static
const
char
*
_uasControlDockWidgetName
;
static
const
char
*
_uasListDockWidgetName
;
...
...
@@ -365,20 +359,23 @@ private:
void
_showDockWidget
(
const
QString
&
name
,
bool
show
);
void
_showHILConfigurationWidgets
(
void
);
QList
<
QGCToolWidget
*>
_customWidgets
;
QVBoxLayout
*
_centralLayout
;
QList
<
QObject
*>
commsWidgetList
;
MenuActionHelper
*
menuActionHelper
;
Ui
::
MainWindow
ui
;
bool
_autoReconnect
;
bool
_lowPowerMode
;
///< If enabled, QGC reduces the update rates of all widgets
QActionGroup
*
_centerStackActionGroup
;
MAVLinkSimulationLink
*
_simulationLink
;
QList
<
QGCToolWidget
*>
_customWidgets
;
QVBoxLayout
*
_centralLayout
;
QList
<
QObject
*>
_commsWidgetList
;
QWidget
*
_currentViewWidget
;
///< Currently displayed view widget
QSplashScreen
*
_splashScreen
;
///< Splash screen, NULL is splash screen not currently being shown
VIEW_SECTIONS
_currentView
;
///< Currently displayed view
Ui
::
MainWindow
_ui
;
QString
_screenFileName
;
QString
getWindowStateKey
();
QString
getWindowGeometryKey
();
QString
_
getWindowStateKey
();
QString
_
getWindowGeometryKey
();
QSplashScreen
*
_splashScreen
;
///< Splash screen, NULL is splash screen not currently being shown
friend
class
MenuActionHelper
;
//For VIEW_SECTIONS
};
#endif
/* _MAINWINDOW_H_ */
Prev
1
2
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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