UASQuickView.h 2.79 KB
Newer Older
1 2 3 4 5 6 7 8 9 10
#ifndef UASQUICKVIEW_H
#define UASQUICKVIEW_H

#include <QWidget>
#include <QTimer>
#include <QLabel>
#include "uas/UASManager.h"
#include "uas/UASInterface.h"
#include "ui_UASQuickView.h"
#include "UASQuickViewItem.h"
11 12
#include "MAVLinkDecoder.h"
#include "UASQuickViewItemSelect.h"
13 14 15 16 17
class UASQuickView : public QWidget
{
    Q_OBJECT
public:
    UASQuickView(QWidget *parent = 0);
18
    ~UASQuickView();
19
    void addSource(MAVLinkDecoder *decoder);
20
private:
21 22 23 24
    /**
     * Adds a default set of actions to the widget's menu.
     */
    void addDefaultActions();
25
    UASInterface *uas;
26 27

    /** List of enabled properties */
28
    QList<QString> uasEnabledPropertyList;
29 30

    /** Maps from the property name to the current value */
31
    QMap<QString,double> uasPropertyValueMap;
32 33

    /** Maps from property name to the display item */
34
    QMap<QString,UASQuickViewItem*> uasPropertyToLabelMap;
35 36

    /** Timer for updating the UI */
37
    QTimer *updateTimer;
38
    Ui::UASQuickView* m_ui;
39 40

    /** Selection dialog for selectin/deselecting gauge items */
41
    UASQuickViewItemSelect *quickViewSelectDialog;
42 43 44 45 46 47

    /** Saves gauge layout to settings file */
    void saveSettings();

    /** Loads gauge layout from settings file */
    void loadSettings();
48 49
protected:
signals:
50

51
public slots:
52 53 54 55 56 57 58 59 60
    void valueChanged(const int uasId, const QString& name, const QString& unit, const quint8 value, const quint64 msec);
    void valueChanged(const int uasId, const QString& name, const QString& unit, const qint8 value, const quint64 msec);
    void valueChanged(const int uasId, const QString& name, const QString& unit, const quint16 value, const quint64 msec);
    void valueChanged(const int uasId, const QString& name, const QString& unit, const qint16 value, const quint64 msec);
    void valueChanged(const int uasId, const QString& name, const QString& unit, const quint32 value, const quint64 msec);
    void valueChanged(const int uasId, const QString& name, const QString& unit, const qint32 value, const quint64 msec);
    void valueChanged(const int uasId, const QString& name, const QString& unit, const quint64 value, const quint64 msec);
    void valueChanged(const int uasId, const QString& name, const QString& unit, const qint64 value, const quint64 msec);
    void valueChanged(const int uasId, const QString& name, const QString& unit, const double value, const quint64 msec);
61
    void valueChanged(const int uasId, const QString& name, const QString& unit, const QVariant value, const quint64 msec);
62

63
    void actionTriggered(bool checked);
64
    void actionTriggered();
65 66 67 68
    void updateTimerTick();
    void addUAS(UASInterface* uas);
    void setActiveUAS(UASInterface* uas);
    void valChanged(double val,QString type);
69 70 71
    void selectDialogClosed();
    void valueEnabled(QString value);
    void valueDisabled(QString value);
72 73 74
};

#endif // UASQUICKVIEW_H