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
713a9da2
Commit
713a9da2
authored
Feb 13, 2014
by
Lorenz Meier
Browse files
Re-enable the local 3D and Google Earth 3D views, needs testing
parent
398d1622
Changes
3
Hide whitespace changes
Inline
Side-by-side
src/ui/MainWindow.cc
View file @
713a9da2
...
...
@@ -555,6 +555,29 @@ void MainWindow::buildCommonWidgets()
addToCentralStackedWidget
(
mavlinkView
,
VIEW_MAVLINK
,
tr
(
"Mavlink Generator"
));
}
#if (defined _MSC_VER) | (defined Q_OS_MAC)
if
(
!
googleEarthView
)
{
googleEarthView
=
new
SubMainWindow
(
this
);
googleEarthView
->
setObjectName
(
"VIEW_GOOGLEEARTH"
);
googleEarthView
->
setCentralWidget
(
new
QGCGoogleEarthView
(
this
));
addToCentralStackedWidget
(
googleEarthView
,
VIEW_GOOGLEEARTH
,
tr
(
"Google Earth View"
));
}
#endif
#ifdef QGC_OSG_ENABLED
if
(
q3DWidget
)
{
q3DWidget
=
Q3DWidgetFactory
::
get
(
"PIXHAWK"
,
this
);
q3DWidget
->
setObjectName
(
"VIEW_3DWIDGET"
);
local3DView
=
new
SubMainWindow
(
this
);
local3DView
->
setObjectName
(
"VIEW_LOCAL3D"
);
local3DView
->
setCentralWidget
(
q3DWidget
);
addToCentralStackedWidget
(
local3DView
,
VIEW_LOCAL3D
,
tr
(
"Local 3D View"
));
}
#endif
if
(
!
simView
)
{
simView
=
new
SubMainWindow
(
this
);
...
...
@@ -660,24 +683,6 @@ void MainWindow::buildCommonWidgets()
dataplotWidget = new QGCDataPlot2D(this);
addCentralWidget(dataplotWidget, tr("Logfile Plot"));
}*/
#ifdef QGC_OSG_ENABLED
if
(
q3DWidget
)
{
q3DWidget
=
Q3DWidgetFactory
::
get
(
"PIXHAWK"
,
this
);
q3DWidget
->
setObjectName
(
"VIEW_3DWIDGET"
);
addToCentralStackedWidget
(
q3DWidget
,
VIEW_3DWIDGET
,
tr
(
"Local 3D"
));
}
#endif
#if (defined _MSC_VER)
/*| (defined Q_OS_MAC) mac os doesn't support gearth right now */
if
(
!
earthWidget
)
{
earthWidget
=
new
QGCGoogleEarthView
(
this
);
addToCentralStackedWidget
(
earthWidget
,
VIEW_GOOGLEEARTH
,
tr
(
"Google Earth"
));
}
#endif
}
void
MainWindow
::
addTool
(
SubMainWindow
*
parent
,
VIEW_SECTIONS
view
,
QDockWidget
*
widget
,
const
QString
&
title
,
Qt
::
DockWidgetArea
area
)
...
...
@@ -1265,6 +1270,16 @@ void MainWindow::connectCommonActions()
ui
.
actionTerminalView
->
setChecked
(
true
);
ui
.
actionTerminalView
->
activate
(
QAction
::
Trigger
);
}
if
(
currentView
==
VIEW_GOOGLEEARTH
)
{
ui
.
actionGoogleEarthView
->
setChecked
(
true
);
ui
.
actionGoogleEarthView
->
activate
(
QAction
::
Trigger
);
}
if
(
currentView
==
VIEW_LOCAL3D
)
{
ui
.
actionLocal3DView
->
setChecked
(
true
);
ui
.
actionLocal3DView
->
activate
(
QAction
::
Trigger
);
}
if
(
currentView
==
VIEW_UNCONNECTED
)
{
ui
.
actionUnconnectedView
->
setChecked
(
true
);
...
...
@@ -1302,6 +1317,8 @@ void MainWindow::connectCommonActions()
connect
(
ui
.
actionMissionView
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
loadOperatorView
()));
connect
(
ui
.
actionUnconnectedView
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
loadUnconnectedView
()));
connect
(
ui
.
actionHardwareConfig
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
loadHardwareConfigView
()));
connect
(
ui
.
actionGoogleEarthView
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
loadGoogleEarthView
()));
connect
(
ui
.
actionLocal3DView
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
loadLocal3DView
()));
if
(
getCustomMode
()
==
CUSTOM_MODE_APM
)
{
connect
(
ui
.
actionSoftwareConfig
,
SIGNAL
(
triggered
()),
this
,
SLOT
(
loadSoftwareConfigView
()));
...
...
@@ -1840,7 +1857,12 @@ void MainWindow::loadViewState()
case
VIEW_TERMINAL
:
centerStack
->
setCurrentWidget
(
terminalView
);
break
;
case
VIEW_GOOGLEEARTH
:
centerStack
->
setCurrentWidget
(
googleEarthView
);
break
;
case
VIEW_LOCAL3D
:
centerStack
->
setCurrentWidget
(
local3DView
);
break
;
case
VIEW_UNCONNECTED
:
case
VIEW_FULL
:
default:
...
...
@@ -1939,6 +1961,27 @@ void MainWindow::loadTerminalView()
}
}
void
MainWindow
::
loadGoogleEarthView
()
{
if
(
currentView
!=
VIEW_GOOGLEEARTH
)
{
storeViewState
();
currentView
=
VIEW_GOOGLEEARTH
;
ui
.
actionGoogleEarthView
->
setChecked
(
true
);
loadViewState
();
}
}
void
MainWindow
::
loadLocal3DView
()
{
if
(
currentView
!=
VIEW_LOCAL3D
)
{
storeViewState
();
currentView
=
VIEW_LOCAL3D
;
ui
.
actionLocal3DView
->
setChecked
(
true
);
loadViewState
();
}
}
void
MainWindow
::
loadUnconnectedView
()
{
...
...
src/ui/MainWindow.h
View file @
713a9da2
...
...
@@ -240,6 +240,10 @@ public slots:
void
loadMAVLinkView
();
/** @brief Load Terminal Console views */
void
loadTerminalView
();
/** @brief Load Google Earth View */
void
loadGoogleEarthView
();
/** @brief Load local 3D view */
void
loadLocal3DView
();
/** @brief Show the online help for users */
void
showHelp
();
...
...
@@ -333,7 +337,7 @@ protected:
VIEW_HARDWARE_CONFIG
,
VIEW_SOFTWARE_CONFIG
,
VIEW_TERMINAL
,
VIEW_
3DWIDGET
,
VIEW_
LOCAL3D
,
VIEW_GOOGLEEARTH
,
VIEW_UNCONNECTED
,
///< View in unconnected mode, when no UAS is available
VIEW_FULL
///< All widgets shown at once
...
...
@@ -406,6 +410,8 @@ protected:
QPointer
<
SubMainWindow
>
engineeringView
;
QPointer
<
SubMainWindow
>
simView
;
QPointer
<
SubMainWindow
>
terminalView
;
QPointer
<
SubMainWindow
>
googleEarthView
;
QPointer
<
SubMainWindow
>
local3DView
;
// Center widgets
QPointer
<
Linecharts
>
linechartWidget
;
...
...
src/ui/MainWindow.ui
View file @
713a9da2
...
...
@@ -102,6 +102,8 @@
<addaction
name=
"actionTerminalView"
/>
<addaction
name=
"actionEngineersView"
/>
<addaction
name=
"actionSimulationView"
/>
<addaction
name=
"actionGoogleEarthView"
/>
<addaction
name=
"actionLocal3DView"
/>
<addaction
name=
"separator"
/>
<addaction
name=
"actionFirmwareUpdateView"
/>
<addaction
name=
"actionMavlinkView"
/>
...
...
@@ -502,6 +504,16 @@
<string>
Terminal
</string>
</property>
</action>
<action
name=
"actionGoogleEarthView"
>
<property
name=
"text"
>
<string>
Google Earth
</string>
</property>
</action>
<action
name=
"actionLocal3DView"
>
<property
name=
"text"
>
<string>
Local 3D View
</string>
</property>
</action>
</widget>
<layoutdefault
spacing=
"6"
margin=
"11"
/>
<resources>
...
...
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