1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#ifndef QGCTOOLWIDGETITEM_H
#define QGCTOOLWIDGETITEM_H
#include <QWidget>
#include <QAction>
#include <QSettings>
#include "UASInterface.h"
class QGCToolWidgetItem : public QWidget
{
Q_OBJECT
public:
QGCToolWidgetItem(const QString& name, QWidget *parent = 0);
~QGCToolWidgetItem();
int componentId() {
return _component;
}
virtual void setEditMode(bool editMode);
bool isEditMode() const { return isInEditMode; }
public slots:
void startEditMode() { setEditMode(true); }
void endEditMode() { setEditMode(false); }
virtual void setComponent(int comp) {
_component = comp;
}
virtual void writeSettings(QSettings& settings) = 0;
virtual void readSettings(const QSettings& settings) = 0;
virtual void readSettings(const QString& pre,const QVariantMap& settings) = 0;
virtual void setActiveUAS(UASInterface *uas);
signals:
void editingFinished();
protected:
void contextMenuEvent (QContextMenuEvent* event);
UASInterface* uas;
private:
QAction* startEditAction;
QAction* stopEditAction;
QAction* deleteAction;
bool isInEditMode;
QString qgcToolWidgetItemName;
int _component; ///< The MAV component (the process or device ID)
};
#endif // QGCTOOLWIDGETITEM_H