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
bd3b7ea3
Commit
bd3b7ea3
authored
Oct 18, 2013
by
John Tapsell
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Merge the startEditMode() and endEditMode() functions into one, and remove code duplication
parent
98abf5a7
Changes
11
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
153 additions
and
273 deletions
+153
-273
QGCComboBox.cc
src/ui/designer/QGCComboBox.cc
+30
-58
QGCComboBox.h
src/ui/designer/QGCComboBox.h
+2
-2
QGCCommandButton.cc
src/ui/designer/QGCCommandButton.cc
+25
-85
QGCCommandButton.h
src/ui/designer/QGCCommandButton.h
+2
-2
QGCParamSlider.cc
src/ui/designer/QGCParamSlider.cc
+46
-63
QGCParamSlider.h
src/ui/designer/QGCParamSlider.h
+2
-2
QGCRadioChannelDisplay.h
src/ui/designer/QGCRadioChannelDisplay.h
+1
-0
QGCTextLabel.cc
src/ui/designer/QGCTextLabel.cc
+10
-54
QGCTextLabel.h
src/ui/designer/QGCTextLabel.h
+1
-2
QGCToolWidgetItem.cc
src/ui/designer/QGCToolWidgetItem.cc
+24
-1
QGCToolWidgetItem.h
src/ui/designer/QGCToolWidgetItem.h
+10
-4
No files found.
src/ui/designer/QGCComboBox.cc
View file @
bd3b7ea3
...
...
@@ -167,70 +167,42 @@ void QGCComboBox::selectParameter(int paramIndex)
}
}
void
QGCComboBox
::
startEditMode
()
{
ui
->
nameLabel
->
hide
();
ui
->
writeButton
->
hide
();
ui
->
readButton
->
hide
();
ui
->
editInfoCheckBox
->
show
();
ui
->
editDoneButton
->
show
();
ui
->
editNameLabel
->
show
();
ui
->
editRefreshParamsButton
->
show
();
ui
->
editSelectParamComboBox
->
show
();
ui
->
editSelectComponentComboBox
->
show
();
ui
->
editStatusLabel
->
show
();
ui
->
writeButton
->
hide
();
ui
->
readButton
->
hide
();
ui
->
editLine1
->
show
();
ui
->
editLine2
->
show
();
ui
->
editAddItemButton
->
show
();
ui
->
editRemoveItemButton
->
show
();
ui
->
editItemValueSpinBox
->
show
();
ui
->
editItemNameLabel
->
show
();
ui
->
itemValueLabel
->
show
();
ui
->
itemNameLabel
->
show
();
if
(
isDisabled
)
{
ui
->
editOptionComboBox
->
setEnabled
(
true
);
}
isInEditMode
=
true
;
}
void
QGCComboBox
::
endEditMode
()
void
QGCComboBox
::
setEditMode
(
bool
editMode
)
{
if
(
!
editMode
)
{
// Store component id
selectComponent
(
ui
->
editSelectComponentComboBox
->
currentIndex
());
// Store parameter name and id
selectParameter
(
ui
->
editSelectParamComboBox
->
currentIndex
());
}
// Min/max
ui
->
editInfoCheckBox
->
hide
();
ui
->
editDoneButton
->
hide
();
ui
->
editNameLabel
->
hide
();
ui
->
editRefreshParamsButton
->
hide
();
ui
->
editSelectParamComboBox
->
hide
();
ui
->
editSelectComponentComboBox
->
hide
();
ui
->
editStatusLabel
->
hide
();
ui
->
editLine1
->
hide
();
ui
->
editLine2
->
hide
();
ui
->
writeButton
->
show
();
ui
->
readButton
->
show
();
ui
->
editAddItemButton
->
hide
();
ui
->
editRemoveItemButton
->
hide
();
ui
->
editItemValueSpinBox
->
hide
();
ui
->
editItemNameLabel
->
hide
();
ui
->
itemValueLabel
->
hide
();
ui
->
itemNameLabel
->
hide
();
ui
->
nameLabel
->
show
();
ui
->
nameLabel
->
setVisible
(
!
editMode
);
ui
->
writeButton
->
setVisible
(
!
editMode
);
ui
->
readButton
->
setVisible
(
!
editMode
);
ui
->
editInfoCheckBox
->
setVisible
(
editMode
);
ui
->
editDoneButton
->
setVisible
(
editMode
);
ui
->
editNameLabel
->
setVisible
(
editMode
);
ui
->
editRefreshParamsButton
->
setVisible
(
editMode
);
ui
->
editSelectParamComboBox
->
setVisible
(
editMode
);
ui
->
editSelectComponentComboBox
->
setVisible
(
editMode
);
ui
->
editStatusLabel
->
setVisible
(
editMode
);
ui
->
writeButton
->
setVisible
(
!
editMode
);
ui
->
readButton
->
setVisible
(
!
editMode
);
ui
->
editLine1
->
setVisible
(
editMode
);
ui
->
editLine2
->
setVisible
(
editMode
);
ui
->
editAddItemButton
->
setVisible
(
editMode
);
ui
->
editRemoveItemButton
->
setVisible
(
editMode
);
ui
->
editItemValueSpinBox
->
setVisible
(
editMode
);
ui
->
editItemNameLabel
->
setVisible
(
editMode
);
ui
->
itemValueLabel
->
setVisible
(
editMode
);
ui
->
itemNameLabel
->
setVisible
(
editMode
);
if
(
isDisabled
)
{
ui
->
editOptionComboBox
->
setEnabled
(
fals
e
);
ui
->
editOptionComboBox
->
setEnabled
(
editMod
e
);
}
isInEditMode
=
false
;
emit
editingFinished
(
);
QGCToolWidgetItem
::
setEditMode
(
editMode
);
}
void
QGCComboBox
::
setParamPending
()
...
...
src/ui/designer/QGCComboBox.h
View file @
bd3b7ea3
...
...
@@ -22,9 +22,9 @@ public:
explicit
QGCComboBox
(
QWidget
*
parent
=
0
);
~
QGCComboBox
();
virtual
void
setEditMode
(
bool
editMode
)
override
;
public
slots
:
void
startEditMode
();
void
endEditMode
();
/** @brief Queue parameter for sending to the MAV (add to pending list)*/
void
setParamPending
();
/** @brief Update the UI with the new parameter value */
...
...
src/ui/designer/QGCCommandButton.cc
View file @
bd3b7ea3
...
...
@@ -159,93 +159,33 @@ void QGCCommandButton::setCommandButtonName(QString text)
ui
->
commandButton
->
setText
(
text
);
}
void
QGCCommandButton
::
s
tartEditMode
(
)
void
QGCCommandButton
::
s
etEditMode
(
bool
editMode
)
{
// Hide elements
ui
->
commandButton
->
hide
();
ui
->
nameLabel
->
hide
();
ui
->
editCommandComboBox
->
blockSignals
(
false
);
ui
->
editCommandComboBox
->
show
();
ui
->
editFinishButton
->
show
();
ui
->
editNameLabel
->
show
();
ui
->
editButtonName
->
show
();
ui
->
editConfirmationCheckBox
->
show
();
ui
->
editComponentSpinBox
->
show
();
ui
->
editParamsVisibleCheckBox
->
show
();
ui
->
editParam1SpinBox
->
show
();
ui
->
editParam2SpinBox
->
show
();
ui
->
editParam3SpinBox
->
show
();
ui
->
editParam4SpinBox
->
show
();
ui
->
editParam5SpinBox
->
show
();
ui
->
editParam6SpinBox
->
show
();
ui
->
editParam7SpinBox
->
show
();
ui
->
editLine1
->
show
();
ui
->
editLine2
->
show
();
// Attempt to undock the dock widget
QWidget
*
p
=
this
;
QDockWidget
*
dock
;
do
{
p
=
p
->
parentWidget
();
dock
=
dynamic_cast
<
QDockWidget
*>
(
p
);
if
(
dock
)
{
dock
->
setFloating
(
true
);
break
;
}
}
while
(
p
&&
!
dock
);
isInEditMode
=
true
;
}
void
QGCCommandButton
::
endEditMode
()
{
ui
->
editCommandComboBox
->
blockSignals
(
true
);
ui
->
editCommandComboBox
->
hide
();
ui
->
editFinishButton
->
hide
();
ui
->
editNameLabel
->
hide
();
ui
->
editButtonName
->
hide
();
ui
->
editConfirmationCheckBox
->
hide
();
ui
->
editComponentSpinBox
->
hide
();
ui
->
editParamsVisibleCheckBox
->
hide
();
ui
->
editLine1
->
hide
();
ui
->
editLine2
->
hide
();
if
(
!
ui
->
editParamsVisibleCheckBox
->
isChecked
())
{
ui
->
editParam1SpinBox
->
hide
();
ui
->
editParam2SpinBox
->
hide
();
ui
->
editParam3SpinBox
->
hide
();
ui
->
editParam4SpinBox
->
hide
();
ui
->
editParam5SpinBox
->
hide
();
ui
->
editParam6SpinBox
->
hide
();
ui
->
editParam7SpinBox
->
hide
();
}
ui
->
commandButton
->
show
();
ui
->
nameLabel
->
show
();
// Write to settings
emit
editingFinished
();
// Attempt to dock the dock widget
QWidget
*
p
=
this
;
QDockWidget
*
dock
;
do
{
p
=
p
->
parentWidget
();
dock
=
dynamic_cast
<
QDockWidget
*>
(
p
);
if
(
dock
)
{
dock
->
setFloating
(
false
);
break
;
}
}
while
(
p
&&
!
dock
);
isInEditMode
=
false
;
ui
->
commandButton
->
setVisible
(
!
editMode
);
ui
->
nameLabel
->
setVisible
(
!
editMode
);
ui
->
editCommandComboBox
->
blockSignals
(
!
editMode
);
ui
->
editCommandComboBox
->
setVisible
(
editMode
);
ui
->
editFinishButton
->
setVisible
(
editMode
);
ui
->
editNameLabel
->
setVisible
(
editMode
);
ui
->
editButtonName
->
setVisible
(
editMode
);
ui
->
editConfirmationCheckBox
->
setVisible
(
editMode
);
ui
->
editComponentSpinBox
->
setVisible
(
editMode
);
ui
->
editParamsVisibleCheckBox
->
setVisible
(
editMode
);
bool
showParams
=
editMode
||
ui
->
editParamsVisibleCheckBox
->
isChecked
();
ui
->
editParam1SpinBox
->
setVisible
(
showParams
);
ui
->
editParam2SpinBox
->
setVisible
(
showParams
);
ui
->
editParam3SpinBox
->
setVisible
(
showParams
);
ui
->
editParam4SpinBox
->
setVisible
(
showParams
);
ui
->
editParam5SpinBox
->
setVisible
(
showParams
);
ui
->
editParam6SpinBox
->
setVisible
(
showParams
);
ui
->
editParam7SpinBox
->
setVisible
(
showParams
);
ui
->
editLine1
->
setVisible
(
editMode
);
ui
->
editLine2
->
setVisible
(
editMode
);
QGCToolWidgetItem
::
setEditMode
(
editMode
);
}
void
QGCCommandButton
::
writeSettings
(
QSettings
&
settings
)
...
...
src/ui/designer/QGCCommandButton.h
View file @
bd3b7ea3
...
...
@@ -18,11 +18,11 @@ public:
explicit
QGCCommandButton
(
QWidget
*
parent
=
0
);
~
QGCCommandButton
();
virtual
void
setEditMode
(
bool
editMode
)
override
;
public
slots
:
void
sendCommand
();
void
setCommandButtonName
(
QString
text
);
void
startEditMode
();
void
endEditMode
();
void
writeSettings
(
QSettings
&
settings
);
void
readSettings
(
const
QSettings
&
settings
);
void
readSettings
(
const
QString
&
pre
,
const
QVariantMap
&
settings
);
...
...
src/ui/designer/QGCParamSlider.cc
View file @
bd3b7ea3
...
...
@@ -207,33 +207,9 @@ void QGCParamSlider::selectParameter(int paramIndex)
}
}
void
QGCParamSlider
::
startEditMode
()
{
ui
->
valueSlider
->
hide
();
ui
->
doubleValueSpinBox
->
hide
();
ui
->
intValueSpinBox
->
hide
();
ui
->
nameLabel
->
hide
();
ui
->
writeButton
->
hide
();
ui
->
readButton
->
hide
();
ui
->
editInfoCheckBox
->
show
();
ui
->
editDoneButton
->
show
();
ui
->
editNameLabel
->
show
();
ui
->
editRefreshParamsButton
->
show
();
ui
->
editSelectParamComboBox
->
show
();
ui
->
editSelectComponentComboBox
->
show
();
ui
->
editStatusLabel
->
show
();
ui
->
editMinSpinBox
->
show
();
ui
->
editMaxSpinBox
->
show
();
ui
->
writeButton
->
hide
();
ui
->
readButton
->
hide
();
ui
->
editLine1
->
show
();
ui
->
editLine2
->
show
();
isInEditMode
=
true
;
}
void
QGCParamSlider
::
endEditMode
()
void
QGCParamSlider
::
setEditMode
(
bool
editMode
)
{
if
(
!
editMode
)
{
// Store component id
selectComponent
(
ui
->
editSelectComponentComboBox
->
currentIndex
());
...
...
@@ -244,20 +220,6 @@ void QGCParamSlider::endEditMode()
parameterMin
=
ui
->
editMinSpinBox
->
value
();
parameterMax
=
ui
->
editMaxSpinBox
->
value
();
ui
->
editInfoCheckBox
->
hide
();
ui
->
editDoneButton
->
hide
();
ui
->
editNameLabel
->
hide
();
ui
->
editRefreshParamsButton
->
hide
();
ui
->
editSelectParamComboBox
->
hide
();
ui
->
editSelectComponentComboBox
->
hide
();
ui
->
editStatusLabel
->
hide
();
ui
->
editMinSpinBox
->
hide
();
ui
->
editMaxSpinBox
->
hide
();
ui
->
editLine1
->
hide
();
ui
->
editLine2
->
hide
();
ui
->
writeButton
->
show
();
ui
->
readButton
->
show
();
ui
->
valueSlider
->
show
();
switch
((
int
)
parameterValue
.
type
())
{
case
QVariant
:
:
Char
:
...
...
@@ -272,9 +234,30 @@ void QGCParamSlider::endEditMode()
qCritical
()
<<
"ERROR: NO VALID PARAM TYPE"
;
return
;
}
ui
->
nameLabel
->
show
();
isInEditMode
=
false
;
emit
editingFinished
();
}
else
{
ui
->
doubleValueSpinBox
->
hide
();
ui
->
intValueSpinBox
->
hide
();
}
ui
->
valueSlider
->
setVisible
(
!
editMode
);
ui
->
nameLabel
->
setVisible
(
!
editMode
);
ui
->
writeButton
->
setVisible
(
!
editMode
);
ui
->
readButton
->
setVisible
(
!
editMode
);
ui
->
editInfoCheckBox
->
setVisible
(
editMode
);
ui
->
editDoneButton
->
setVisible
(
editMode
);
ui
->
editNameLabel
->
setVisible
(
editMode
);
ui
->
editRefreshParamsButton
->
setVisible
(
editMode
);
ui
->
editSelectParamComboBox
->
setVisible
(
editMode
);
ui
->
editSelectComponentComboBox
->
setVisible
(
editMode
);
ui
->
editStatusLabel
->
setVisible
(
editMode
);
ui
->
editMinSpinBox
->
setVisible
(
editMode
);
ui
->
editMaxSpinBox
->
setVisible
(
editMode
);
ui
->
writeButton
->
setVisible
(
!
editMode
);
ui
->
readButton
->
setVisible
(
!
editMode
);
ui
->
editLine1
->
setVisible
(
editMode
);
ui
->
editLine2
->
setVisible
(
editMode
);
QGCToolWidgetItem
::
setEditMode
(
editMode
);
}
void
QGCParamSlider
::
setParamPending
()
...
...
src/ui/designer/QGCParamSlider.h
View file @
bd3b7ea3
...
...
@@ -20,9 +20,9 @@ public:
explicit
QGCParamSlider
(
QWidget
*
parent
=
0
);
~
QGCParamSlider
();
virtual
void
setEditMode
(
bool
editMode
)
override
;
public
slots
:
void
startEditMode
();
void
endEditMode
();
/** @brief Queue parameter for sending to the MAV (add to pending list)*/
void
setParamPending
();
/** @brief Set the slider value as parameter value */
...
...
src/ui/designer/QGCRadioChannelDisplay.h
View file @
bd3b7ea3
...
...
@@ -20,6 +20,7 @@ public:
int
value
()
{
return
m_value
;
}
int
min
()
{
return
m_min
;
}
int
max
()
{
return
m_max
;
}
protected:
void
paintEvent
(
QPaintEvent
*
event
);
private:
...
...
src/ui/designer/QGCTextLabel.cc
View file @
bd3b7ea3
...
...
@@ -31,61 +31,17 @@ QGCTextLabel::~QGCTextLabel()
delete
ui
;
}
void
QGCTextLabel
::
startEditMode
()
{
// Hide elements
ui
->
editFinishButton
->
show
();
ui
->
editNameLabel
->
show
();
ui
->
editLine1
->
show
();
ui
->
editLine2
->
show
();
ui
->
isMavCommand
->
show
();
// Attempt to undock the dock widget
QWidget
*
p
=
this
;
QDockWidget
*
dock
;
do
{
p
=
p
->
parentWidget
();
dock
=
dynamic_cast
<
QDockWidget
*>
(
p
);
if
(
dock
)
{
dock
->
setFloating
(
true
);
break
;
}
}
while
(
p
&&
!
dock
);
isInEditMode
=
true
;
}
void
QGCTextLabel
::
endEditMode
()
void
QGCTextLabel
::
setEditMode
(
bool
editMode
)
{
if
(
!
editMode
)
update_isMavCommand
();
ui
->
editFinishButton
->
hide
();
ui
->
editNameLabel
->
hide
();
ui
->
editLine1
->
hide
();
ui
->
editLine2
->
hide
();
ui
->
isMavCommand
->
hide
();
// Write to settings
emit
editingFinished
();
// Attempt to dock the dock widget
QWidget
*
p
=
this
;
QDockWidget
*
dock
;
do
{
p
=
p
->
parentWidget
();
dock
=
dynamic_cast
<
QDockWidget
*>
(
p
);
if
(
dock
)
{
dock
->
setFloating
(
false
);
break
;
}
}
while
(
p
&&
!
dock
);
ui
->
editFinishButton
->
setVisible
(
editMode
);
ui
->
editNameLabel
->
setVisible
(
editMode
);
ui
->
editLine1
->
setVisible
(
editMode
);
ui
->
editLine2
->
setVisible
(
editMode
);
ui
->
isMavCommand
->
setVisible
(
editMode
);
isInEditMode
=
false
;
QGCToolWidgetItem
::
setEditMode
(
editMode
)
;
}
void
QGCTextLabel
::
writeSettings
(
QSettings
&
settings
)
...
...
src/ui/designer/QGCTextLabel.h
View file @
bd3b7ea3
...
...
@@ -19,9 +19,8 @@ public:
~
QGCTextLabel
();
void
setActiveUAS
(
UASInterface
*
uas
);
void
enableText
(
int
num
);
virtual
void
setEditMode
(
bool
editMode
)
override
;
public
slots
:
void
startEditMode
();
void
endEditMode
();
void
writeSettings
(
QSettings
&
settings
);
void
readSettings
(
const
QSettings
&
settings
);
void
readSettings
(
const
QString
&
pre
,
const
QVariantMap
&
settings
);
...
...
src/ui/designer/QGCToolWidgetItem.cc
View file @
bd3b7ea3
...
...
@@ -5,12 +5,13 @@
#include "QGCToolWidget.h"
#include "UASManager.h"
#include <QDockWidget>
QGCToolWidgetItem
::
QGCToolWidgetItem
(
const
QString
&
name
,
QWidget
*
parent
)
:
QWidget
(
parent
),
uas
(
NULL
),
isInEditMode
(
false
),
qgcToolWidgetItemName
(
name
),
uas
(
NULL
),
_component
(
-
1
)
{
startEditAction
=
new
QAction
(
tr
(
"Edit %1"
).
arg
(
qgcToolWidgetItemName
),
this
);
...
...
@@ -49,3 +50,25 @@ void QGCToolWidgetItem::setActiveUAS(UASInterface *uas)
{
this
->
uas
=
uas
;
}
void
QGCToolWidgetItem
::
setEditMode
(
bool
editMode
)
{
isInEditMode
=
editMode
;
// Attempt to undock the dock widget
QWidget
*
p
=
this
;
QDockWidget
*
dock
;
do
{
p
=
p
->
parentWidget
();
dock
=
dynamic_cast
<
QDockWidget
*>
(
p
);
if
(
dock
)
{
dock
->
setFloating
(
editMode
);
break
;
}
}
while
(
p
&&
!
dock
);
emit
editingFinished
();
}
src/ui/designer/QGCToolWidgetItem.h
View file @
bd3b7ea3
...
...
@@ -18,9 +18,12 @@ public:
return
_component
;
}
virtual
void
setEditMode
(
bool
editMode
);
bool
isEditMode
()
const
{
return
isInEditMode
;
}
public
slots
:
virtual
void
startEditMode
()
{}
virtual
void
endEditMode
()
{}
void
startEditMode
()
{
setEditMode
(
true
);
}
void
endEditMode
()
{
setEditMode
(
false
);
}
virtual
void
setComponent
(
int
comp
)
{
_component
=
comp
;
}
...
...
@@ -33,15 +36,18 @@ signals:
void
editingFinished
();
protected:
void
contextMenuEvent
(
QContextMenuEvent
*
event
);
UASInterface
*
uas
;
private:
QAction
*
startEditAction
;
QAction
*
stopEditAction
;
QAction
*
deleteAction
;
bool
isInEditMode
;
QString
qgcToolWidgetItemName
;
UASInterface
*
uas
;
int
_component
;
///< The MAV component (the process or device ID)
void
contextMenuEvent
(
QContextMenuEvent
*
event
);
};
...
...
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