forked from vranki/ExtPlane-Panel
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpanelitemfactory.cpp
More file actions
47 lines (44 loc) · 1.84 KB
/
panelitemfactory.cpp
File metadata and controls
47 lines (44 loc) · 1.84 KB
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
#include "panelitemfactory.h"
PanelItemFactory::PanelItemFactory(ExtPlaneConnection *conn)
{
connection = conn;
}
PanelItem *PanelItemFactory::itemForName(QString name, QObject *parentObject) {
PanelItem *g = 0;
if(name == AirspeedIndicator::typeNameStatic()) {
g = new AirspeedIndicator(parentObject, connection);
} else if(name == Compass::typeNameStatic()) {
g = new Compass(parentObject, connection);
} else if(name == Variometer::typeNameStatic()) {
g = new Variometer(parentObject, connection);
} else if(name == Altimeter::typeNameStatic()) {
g = new Altimeter(parentObject, connection);
} else if(name == DirectionIndicator::typeNameStatic()) {
g = new DirectionIndicator(parentObject, connection);
} else if(name == HSI::typeNameStatic()) {
g = new HSI(parentObject, connection);
} else if(name == AttitudeIndicator::typeNameStatic()) {
g = new AttitudeIndicator(parentObject, connection);
} else if(name == TurnAndBank::typeNameStatic()) {
g = new TurnAndBank(parentObject, connection);
} else if(name == EngineRPM::typeNameStatic()) {
g = new EngineRPM(parentObject, connection);
} else if(name == Button::typeNameStatic()) {
g = new Button(parentObject, connection);
}
return g;
}
QStringList PanelItemFactory::itemNames() {
QStringList items;
items << AirspeedIndicator::typeNameStatic() <<
Altimeter::typeNameStatic() <<
AttitudeIndicator::typeNameStatic() <<
Compass::typeNameStatic() <<
DirectionIndicator::typeNameStatic() <<
EngineRPM::typeNameStatic() <<
HSI::typeNameStatic() <<
TurnAndBank::typeNameStatic() <<
Variometer::typeNameStatic() <<
Button::typeNameStatic();
return items;
}