-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathSituPlugin.h
58 lines (47 loc) · 1.5 KB
/
SituPlugin.h
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
#pragma once
#include <EuroScopePlugIn.h>
#include <vector>
#include <string>
struct ACList {
POINT p{ 0, 0 };
int listType{ 0 };
bool collapsed{ false };
};
struct inactiveRunway {
EuroScopePlugIn::CPosition end1;
EuroScopePlugIn::CPosition end2;
};
struct ACRoute {
std::vector<EuroScopePlugIn::CPosition> route_fix_positions;
std::vector<std::string> fix_names;
int nearestPtIdx;
int directPtIdx;
int selectIdx;
};
class SituPlugin :
public EuroScopePlugIn::CPlugIn
{
public:
SituPlugin();
virtual ~SituPlugin();
EuroScopePlugIn::CRadarScreen* OnRadarScreenCreated(const char* sDisplayName, bool NeedRadarContent, bool GeoReferenced, bool CanBeSaved, bool CanBeCreated);
virtual void OnGetTagItem(EuroScopePlugIn::CFlightPlan FlightPlan,
EuroScopePlugIn::CRadarTarget RadarTarget,
int ItemCode,
int TagData,
char sItemString[16],
int* pColorCode,
COLORREF* pRGB,
double* pFontSize);
inline virtual void OnFunctionCall(int FunctionId,
const char* sItemString,
POINT Pt,
RECT Area);
virtual void OnAirportRunwayActivityChanged();
inline virtual void OnCompilePrivateChat(const char* sSenderCallsign, const char* sReceiverCallsign, const char* sChatMessage);
static void SendKeyboardPresses(std::vector<WORD> message);
static void SendKeyboardString(std::string str);
static POINT prevMousePt;
static int prevMouseDelta;
static bool mouseAtRest;
};