3 #include "../Displays/DeviceObject.h" 4 #include "../Displays/Font.h" 6 #include "../Displays/Sprite.h" 41 void DrawText(
const WCHAR* str,
int relativeX,
int relativeY,
float prmZ,
int flags, D3DXCOLOR color,
int font = -1, std::string elementName =
"",
int width = 0,
int height = 0)
56 rc.left = relativeX +
x;
57 rc.top = relativeY +
y;
58 rc.bottom = rc.top + height;
59 rc.right = rc.left + width;
61 if (font < 0 || font >= static_cast<int>(
fonts.size()))
62 throw std::exception(
"Tried to DrawText with a font that is outside of the fonts collection!");
65 1.0f, 0.0f, 0.0f, 0.0f,
66 0.0f, 1.0f, 0.0f, 0.0f,
67 0.0f, 0.0f, 1.0f, 0.0f,
68 0.0f, 0.0f, prmZ, 1.0f);
73 if (FAILED(hr =
fonts.at(font)->pFont->DrawTextW(
pDevice->
pSprite, str, -1, &rc, flags, color)))
102 void RenderRow(
const WCHAR* row, DWORD color,
int rowId, std::string type =
"",
int value = 0);
113 Intermedia(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
125 LineInput(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts, std::string prmPageName);
140 Scanner(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
175 EngineBox(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts,
int prmEngineIndex);
190 EngineBar(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts,
int prmEngineIndex);
236 Flaps(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
273 MovingMap(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
285 Wind(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
321 FMA(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
343 Orbit(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
356 CarRadio(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
407 StreetView(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
437 Altimeter(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
447 Compass(
int prmX,
int prmY,
float prmXScale,
float prmYScale,
Bus* prmBus,
Logger* prmLogger,
DeviceObject* prmDevice, std::vector<Font*> prmFonts);
void FrameMove(float fElapsed) override
virtual bool HandleKeyPress(short key, bool shift)
Compass(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
Scanner(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
std::vector< Font * > fonts
void FrameMove(float fElapsed) override
void FrameMove(float fElapsed) override
CargoManagement(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
void FrameMove(float fElapsed) override
Sprite * failFlagLocalizer
virtual void FrameMove(float fElapsed)
void FrameMove(float fElapsed) override
Instrument(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
void FrameMove(float fElapsed) override
Diagnostics(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
DWORD verticalSetBackColor
void FrameMove(float fElapsed) override
float oldVerticalSetValue
WCHAR verticalSetText[10]
TCASOverlay(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
void FrameMove(float fElapsed) override
void FrameMove(float fElapsed) override
EngineBar(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts, int prmEngineIndex)
IndicatedAirSpeed(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
AttitudeIndicator(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
FMA(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
AlertMessageStack(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
void FrameMove(float fElapsed) override
void FrameMove(float fElapsed) override
RadioAltimeter(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
WCHAR verticalModeText[10]
virtual void OnPageChanged()
int oldActiveVerticalMode
void RenderRow(const WCHAR *row, DWORD color, int rowId, std::string type="", int value=0)
HeadlightIcon(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
void FrameMove(float fElapsed) override
Sprite * lateralModeBarCurrent
Wind(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
DWORD lateralSetTextColor
EngineBox(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts, int prmEngineIndex)
std::vector< s_network_objects > targets
LandingStrut(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
HeadlightBox(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
DWORD verticalSetTextColor
VECTOR2SHORT assayGrid[21]
DWORD lateralModeBackColor
StreetView(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
MovingMap(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
const D3DXVECTOR3 centerC
Orbit(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
WCHAR lateralModeText[10]
void Log(const char *msg, Level level=Info, int errorCode=0)
Sprite * artificialHorizon
DWORD verticalModeTextColor
DWORD lateralSetBackColor
ElevatorTrim(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
D3DXVECTOR2 relativeCenter
LandingGear(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
DWORD lateralModeTextColor
void FrameMove(float fElapsed) override
std::vector< Swaypoint > waypoints
Flaps(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
void FrameMove(float fElapsed) override
void AddToCallStack(const char *msg)
void FrameMove(float fElapsed) override
Sprite * failFlagGlideslope
DWORD verticalModeBackColor
bool HandleKeyPress(short key, bool shift) override
Altimeter(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)
void DrawText(const WCHAR *str, int relativeX, int relativeY, float prmZ, int flags, D3DXCOLOR color, int font=-1, std::string elementName="", int width=0, int height=0)
Sprite * verticalModeBarCurrent
void FrameMove(float fElapsed) override
bool HandleKeyPress(short key, bool shift) override
D3DXVECTOR2 relativeCenter
CarRadio(int prmX, int prmY, float prmXScale, float prmYScale, Bus *prmBus, Logger *prmLogger, DeviceObject *prmDevice, std::vector< Font *> prmFonts)