blob: 34444b52475399655ae6a57c15720e9ba2ff3702 (
plain)
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
|
#ifndef LOCATIONUI_H
#define LOCATIONUI_H
#include "remotecontrolwidget_global.h"
#include "toolbox.h"
#include <QtCore/QDateTime>
class LocationScriptInterface;
class QLineEdit;
class QDateTimeEdit;
class REMOTECONTROLWIDGETSHARED_EXPORT LocationUi : public ToolBoxPage
{
Q_OBJECT
public:
struct LocationData
{
double latitude;
double longitude;
double altitude;
QDateTime timestamp;
};
public:
explicit LocationUi(QWidget *parent = 0);
virtual ~LocationUi();
LocationScriptInterface *scriptInterface() const;
public slots:
void setDisplayedLocation(const LocationData &location);
signals:
void locationChanged(const LocationData &location) const;
private slots:
void updateLocationTime();
void emitLocationChange() const;
private:
QLineEdit *mLatitudeEdit;
QLineEdit *mLongitudeEdit;
QLineEdit *mAltitudeEdit;
QDateTimeEdit *mTimeEdit;
friend class LocationScriptInterface;
LocationScriptInterface *mScriptInterface;
};
class LocationScriptInterface : public QObject
{
Q_OBJECT
public:
LocationScriptInterface(LocationUi *ui);
virtual ~LocationScriptInterface();
Q_PROPERTY(double latitude READ latitude WRITE setLatitude)
Q_PROPERTY(double longitude READ longitude WRITE setLongitude)
Q_PROPERTY(double altitude READ altitude WRITE setAltitude)
Q_PROPERTY(QDateTime timestamp READ timestamp WRITE setTimestamp)
double latitude() const;
void setLatitude(double);
double longitude() const;
void setLongitude(double);
double altitude() const;
void setAltitude(double);
QDateTime timestamp() const;
void setTimestamp(const QDateTime &dt);
private:
LocationUi *ui;
};
#endif // LOCATIONUI_H
|