Compare commits
5 Commits
0a180764f9
...
bf1b81122e
Author | SHA1 | Date |
---|---|---|
Jasper Blanckenburg | bf1b81122e | |
Jasper Blanckenburg | efa36eab5f | |
Jasper Blanckenburg | d1d0c3df1d | |
Jasper Blanckenburg | b5c457c84a | |
Jasper Blanckenburg | 6893c23a6c |
|
@ -94,6 +94,8 @@ typedef struct {
|
|||
ASState as_state;
|
||||
Mission active_mission;
|
||||
|
||||
int sdc_closed;
|
||||
|
||||
R2DProgress r2d_progress;
|
||||
struct {
|
||||
int invl_ready : 1;
|
||||
|
|
|
@ -85,6 +85,7 @@ void ftcan_msg_received_cb(uint16_t id, size_t datalen, const uint8_t *data) {
|
|||
break;
|
||||
case CAN_ID_AMS_STATUS:
|
||||
vehicle_state.ts_state = data[0] & 0x7F;
|
||||
vehicle_state.sdc_closed = (data[0] & 0x80) >> 7;
|
||||
vehicle_state.soc = data[1];
|
||||
ptr = &data[2];
|
||||
vehicle_state.min_cell_volt =
|
||||
|
|
|
@ -363,6 +363,7 @@ TouchGFX/generated/gui_generated/src/containers/DebugViewItemBase.cpp \
|
|||
TouchGFX/generated/gui_generated/src/containers/DebugViewLineBase.cpp \
|
||||
TouchGFX/generated/gui_generated/src/containers/DriverViewFieldBase.cpp \
|
||||
TouchGFX/generated/gui_generated/src/containers/DriverViewFieldSelectionBase.cpp \
|
||||
TouchGFX/generated/gui_generated/src/containers/DriverViewStatusItemBase.cpp \
|
||||
TouchGFX/generated/gui_generated/src/containers/ErrorPopupBase.cpp \
|
||||
TouchGFX/generated/gui_generated/src/containers/MissionSelectElementBase.cpp \
|
||||
TouchGFX/generated/gui_generated/src/containers/TemperatureBase.cpp \
|
||||
|
@ -380,6 +381,7 @@ TouchGFX/generated/images/src/image_bat_bar_bg.cpp \
|
|||
TouchGFX/generated/images/src/image_logo_dv_small.cpp \
|
||||
TouchGFX/generated/images/src/image_logo_dv_small_white.cpp \
|
||||
TouchGFX/generated/images/src/image_precharge_bg.cpp \
|
||||
TouchGFX/generated/images/src/image_prog_horiz_bg.cpp \
|
||||
TouchGFX/generated/texts/src/LanguageGb.cpp \
|
||||
TouchGFX/generated/texts/src/Texts.cpp \
|
||||
TouchGFX/generated/texts/src/TypedTextDatabase.cpp \
|
||||
|
@ -392,6 +394,7 @@ TouchGFX/gui/src/containers/DebugViewItem.cpp \
|
|||
TouchGFX/gui/src/containers/DebugViewLine.cpp \
|
||||
TouchGFX/gui/src/containers/DriverViewField.cpp \
|
||||
TouchGFX/gui/src/containers/DriverViewFieldSelection.cpp \
|
||||
TouchGFX/gui/src/containers/DriverViewStatusItem.cpp \
|
||||
TouchGFX/gui/src/containers/ErrorPopup.cpp \
|
||||
TouchGFX/gui/src/containers/MissionSelectElement.cpp \
|
||||
TouchGFX/gui/src/containers/Temperature.cpp \
|
||||
|
|
Binary file not shown.
After Width: | Height: | Size: 95 B |
|
@ -4,6 +4,29 @@
|
|||
<Language Id="GB" />
|
||||
</Languages>
|
||||
<Texts>
|
||||
<TextGroup Id="Status">
|
||||
<Text Id="PDU" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">PDU</Translation>
|
||||
</Text>
|
||||
<Text Id="SCS" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">SCS</Translation>
|
||||
</Text>
|
||||
<Text Id="SDC" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">SDC</Translation>
|
||||
</Text>
|
||||
<Text Id="R2D" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">R2D</Translation>
|
||||
</Text>
|
||||
<Text Id="TS" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">TS</Translation>
|
||||
</Text>
|
||||
<Text Id="INV" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">INV</Translation>
|
||||
</Text>
|
||||
<Text Id="AMS" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">AMS</Translation>
|
||||
</Text>
|
||||
</TextGroup>
|
||||
<TextGroup Id="Errors">
|
||||
<Text Id="Error_AMS" Alignment="Center" TypographyId="Chinat_Huge">
|
||||
<Translation Language="GB">AMS ErrOr</Translation>
|
||||
|
@ -145,6 +168,9 @@
|
|||
</Text>
|
||||
</TextGroup>
|
||||
<TextGroup Id="Unsorted">
|
||||
<Text Id="__SingleUse_F9I5" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB" />
|
||||
</Text>
|
||||
<Text Id="__SingleUse_JN2J" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">MOTOR</Translation>
|
||||
</Text>
|
||||
|
|
|
@ -6,6 +6,6 @@
|
|||
|
||||
static unsigned short SIM_WIDTH = 320;
|
||||
static unsigned short SIM_HEIGHT = 480;
|
||||
#define SIM_TITLE "MyApplication"
|
||||
#define SIM_TITLE "SteeringWheel"
|
||||
|
||||
#endif // SIMCONSTANTS_HPP
|
||||
|
|
|
@ -0,0 +1,34 @@
|
|||
/*********************************************************************************/
|
||||
/********** THIS FILE IS GENERATED BY TOUCHGFX DESIGNER, DO NOT MODIFY ***********/
|
||||
/*********************************************************************************/
|
||||
#ifndef DRIVERVIEWSTATUSITEMBASE_HPP
|
||||
#define DRIVERVIEWSTATUSITEMBASE_HPP
|
||||
|
||||
#include <gui/common/FrontendApplication.hpp>
|
||||
#include <touchgfx/containers/Container.hpp>
|
||||
#include <touchgfx/widgets/BoxWithBorder.hpp>
|
||||
#include <touchgfx/widgets/TextArea.hpp>
|
||||
|
||||
class DriverViewStatusItemBase : public touchgfx::Container
|
||||
{
|
||||
public:
|
||||
DriverViewStatusItemBase();
|
||||
virtual ~DriverViewStatusItemBase();
|
||||
virtual void initialize();
|
||||
|
||||
protected:
|
||||
FrontendApplication& application() {
|
||||
return *static_cast<FrontendApplication*>(touchgfx::Application::getInstance());
|
||||
}
|
||||
|
||||
/*
|
||||
* Member Declarations
|
||||
*/
|
||||
touchgfx::BoxWithBorder bg;
|
||||
touchgfx::TextArea text;
|
||||
|
||||
private:
|
||||
|
||||
};
|
||||
|
||||
#endif // DRIVERVIEWSTATUSITEMBASE_HPP
|
|
@ -8,14 +8,17 @@
|
|||
#include <mvp/View.hpp>
|
||||
#include <gui/driverview_screen/DriverViewPresenter.hpp>
|
||||
#include <touchgfx/widgets/Box.hpp>
|
||||
#include <touchgfx/containers/progress_indicators/LineProgress.hpp>
|
||||
#include <touchgfx/widgets/canvas/PainterRGB565.hpp>
|
||||
#include <touchgfx/widgets/TextArea.hpp>
|
||||
#include <touchgfx/containers/Container.hpp>
|
||||
#include <gui/containers/Temperature.hpp>
|
||||
#include <touchgfx/widgets/canvas/Line.hpp>
|
||||
#include <touchgfx/widgets/canvas/PainterRGB565.hpp>
|
||||
#include <touchgfx/containers/progress_indicators/LineProgress.hpp>
|
||||
#include <gui/containers/DriverViewField.hpp>
|
||||
#include <touchgfx/containers/scrollers/ScrollWheel.hpp>
|
||||
#include <gui/containers/DriverViewFieldSelection.hpp>
|
||||
#include <gui/containers/DriverViewField.hpp>
|
||||
#include <touchgfx/containers/ListLayout.hpp>
|
||||
#include <gui/containers/DriverViewStatusItem.hpp>
|
||||
#include <touchgfx/containers/progress_indicators/BoxProgress.hpp>
|
||||
#include <touchgfx/widgets/TextAreaWithWildcard.hpp>
|
||||
#include <gui/containers/ErrorPopup.hpp>
|
||||
|
@ -66,6 +69,13 @@ protected:
|
|||
* Member Declarations
|
||||
*/
|
||||
touchgfx::Box __background;
|
||||
touchgfx::LineProgress tsSoC;
|
||||
touchgfx::PainterRGB565 tsSoCPainter;
|
||||
touchgfx::LineProgress lvSoC;
|
||||
touchgfx::PainterRGB565 lvSoCPainter;
|
||||
touchgfx::TextArea tsSoCLabel;
|
||||
touchgfx::TextArea lvSoCLabel;
|
||||
touchgfx::Container drivetrainTemps;
|
||||
touchgfx::TextArea motorTempLabel;
|
||||
Temperature motorTempL;
|
||||
Temperature motorTempR;
|
||||
|
@ -76,26 +86,30 @@ protected:
|
|||
Temperature invTempR;
|
||||
Temperature invTempL;
|
||||
touchgfx::TextArea invTempLabel;
|
||||
touchgfx::Line ttDivVert;
|
||||
touchgfx::PainterRGB565 ttDivVertPainter;
|
||||
touchgfx::Line ttDivHoriz;
|
||||
touchgfx::PainterRGB565 ttDivHorizPainter;
|
||||
Temperature tireTempRR;
|
||||
Temperature tireTempFR;
|
||||
Temperature tireTempRL;
|
||||
Temperature tireTempFL;
|
||||
touchgfx::LineProgress tsSoC;
|
||||
touchgfx::PainterRGB565 tsSoCPainter;
|
||||
touchgfx::LineProgress lvSoC;
|
||||
touchgfx::PainterRGB565 lvSoCPainter;
|
||||
touchgfx::TextArea tireLabel;
|
||||
touchgfx::TextArea tsSoCLabel;
|
||||
touchgfx::TextArea lvSoCLabel;
|
||||
DriverViewField field1;
|
||||
DriverViewField field2;
|
||||
DriverViewField field3;
|
||||
touchgfx::Container brakeTemps;
|
||||
touchgfx::Line btDivVert;
|
||||
touchgfx::PainterRGB565 btDivVertPainter;
|
||||
touchgfx::Line btDivHoriz;
|
||||
touchgfx::PainterRGB565 btDivHorizPainter;
|
||||
Temperature brakeTempRR;
|
||||
Temperature brakeTempFR;
|
||||
Temperature brakeTempRL;
|
||||
Temperature brakeTempFL;
|
||||
touchgfx::TextArea brakeLabel;
|
||||
touchgfx::Container dataFields;
|
||||
touchgfx::ScrollWheel fieldTypeSelection;
|
||||
touchgfx::DrawableListItems<DriverViewFieldSelection, 10> fieldTypeSelectionListItems;
|
||||
DriverViewField field3;
|
||||
DriverViewField field2;
|
||||
DriverViewField field1;
|
||||
touchgfx::Container statusBar;
|
||||
touchgfx::ListLayout statusItems;
|
||||
DriverViewStatusItem statusTS_R2D;
|
||||
DriverViewStatusItem statusAMS;
|
||||
DriverViewStatusItem statusSDC;
|
||||
DriverViewStatusItem statusSCS;
|
||||
DriverViewStatusItem statusPDU;
|
||||
DriverViewStatusItem statusINV;
|
||||
touchgfx::BoxProgress progressBar;
|
||||
touchgfx::TextArea prechargeLabel;
|
||||
touchgfx::TextArea r2dLabel;
|
||||
|
|
|
@ -0,0 +1,33 @@
|
|||
/*********************************************************************************/
|
||||
/********** THIS FILE IS GENERATED BY TOUCHGFX DESIGNER, DO NOT MODIFY ***********/
|
||||
/*********************************************************************************/
|
||||
#include <gui_generated/containers/DriverViewStatusItemBase.hpp>
|
||||
#include <touchgfx/Color.hpp>
|
||||
#include <texts/TextKeysAndLanguages.hpp>
|
||||
|
||||
DriverViewStatusItemBase::DriverViewStatusItemBase()
|
||||
{
|
||||
setWidth(75);
|
||||
setHeight(33);
|
||||
bg.setPosition(0, 0, 75, 33);
|
||||
bg.setColor(touchgfx::Color::getColorFromRGB(0, 0, 0));
|
||||
bg.setBorderColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
bg.setBorderSize(1);
|
||||
add(bg);
|
||||
|
||||
text.setPosition(0, 4, 75, 25);
|
||||
text.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
text.setLinespacing(0);
|
||||
text.setTypedText(touchgfx::TypedText(T___SINGLEUSE_F9I5));
|
||||
add(text);
|
||||
}
|
||||
|
||||
DriverViewStatusItemBase::~DriverViewStatusItemBase()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void DriverViewStatusItemBase::initialize()
|
||||
{
|
||||
|
||||
}
|
|
@ -4,8 +4,8 @@
|
|||
#include <gui_generated/driverview_screen/DriverViewViewBase.hpp>
|
||||
#include <touchgfx/canvas_widget_renderer/CanvasWidgetRenderer.hpp>
|
||||
#include <touchgfx/Color.hpp>
|
||||
#include <texts/TextKeysAndLanguages.hpp>
|
||||
#include <images/BitmapDatabase.hpp>
|
||||
#include <texts/TextKeysAndLanguages.hpp>
|
||||
|
||||
DriverViewViewBase::DriverViewViewBase() :
|
||||
updateItemCallback(this, &DriverViewViewBase::updateItemCallbackHandler)
|
||||
|
@ -16,79 +16,7 @@ DriverViewViewBase::DriverViewViewBase() :
|
|||
__background.setColor(touchgfx::Color::getColorFromRGB(0, 0, 0));
|
||||
add(__background);
|
||||
|
||||
motorTempLabel.setPosition(315, 187, 150, 25);
|
||||
motorTempLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
motorTempLabel.setLinespacing(0);
|
||||
motorTempLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_JN2J));
|
||||
add(motorTempLabel);
|
||||
|
||||
motorTempL.setXY(329, 212);
|
||||
add(motorTempL);
|
||||
|
||||
motorTempR.setXY(392, 212);
|
||||
add(motorTempR);
|
||||
|
||||
motorTempDiv.setPosition(389, 212, 3, 60);
|
||||
motorTempDivPainter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
motorTempDiv.setPainter(motorTempDivPainter);
|
||||
motorTempDiv.setStart(0, 0);
|
||||
motorTempDiv.setEnd(0, 320);
|
||||
motorTempDiv.setLineWidth(10);
|
||||
motorTempDiv.setLineEndingStyle(touchgfx::Line::ROUND_CAP_ENDING);
|
||||
add(motorTempDiv);
|
||||
|
||||
invTempDiv.setPosition(389, 122, 3, 60);
|
||||
invTempDivPainter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
invTempDiv.setPainter(invTempDivPainter);
|
||||
invTempDiv.setStart(0, 0);
|
||||
invTempDiv.setEnd(0, 320);
|
||||
invTempDiv.setLineWidth(10);
|
||||
invTempDiv.setLineEndingStyle(touchgfx::Line::ROUND_CAP_ENDING);
|
||||
add(invTempDiv);
|
||||
|
||||
invTempR.setXY(392, 122);
|
||||
add(invTempR);
|
||||
|
||||
invTempL.setXY(329, 122);
|
||||
add(invTempL);
|
||||
|
||||
invTempLabel.setPosition(315, 97, 150, 25);
|
||||
invTempLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
invTempLabel.setLinespacing(0);
|
||||
invTempLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_ZP7N));
|
||||
add(invTempLabel);
|
||||
|
||||
ttDivVert.setPosition(239, 122, 3, 123);
|
||||
ttDivVertPainter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
ttDivVert.setPainter(ttDivVertPainter);
|
||||
ttDivVert.setStart(0, 0);
|
||||
ttDivVert.setEnd(0, 320);
|
||||
ttDivVert.setLineWidth(10);
|
||||
ttDivVert.setLineEndingStyle(touchgfx::Line::ROUND_CAP_ENDING);
|
||||
add(ttDivVert);
|
||||
|
||||
ttDivHoriz.setPosition(179, 182, 123, 3);
|
||||
ttDivHorizPainter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
ttDivHoriz.setPainter(ttDivHorizPainter);
|
||||
ttDivHoriz.setStart(0, 0);
|
||||
ttDivHoriz.setEnd(480, 0);
|
||||
ttDivHoriz.setLineWidth(10);
|
||||
ttDivHoriz.setLineEndingStyle(touchgfx::Line::ROUND_CAP_ENDING);
|
||||
add(ttDivHoriz);
|
||||
|
||||
tireTempRR.setXY(242, 185);
|
||||
add(tireTempRR);
|
||||
|
||||
tireTempFR.setXY(242, 122);
|
||||
add(tireTempFR);
|
||||
|
||||
tireTempRL.setXY(179, 185);
|
||||
add(tireTempRL);
|
||||
|
||||
tireTempFL.setXY(179, 122);
|
||||
add(tireTempFL);
|
||||
|
||||
tsSoC.setXY(15, 122);
|
||||
tsSoC.setXY(15, 155);
|
||||
tsSoC.setProgressIndicatorPosition(0, 0, 40, 150);
|
||||
tsSoC.setRange(0, 100);
|
||||
tsSoC.setBackground(touchgfx::Bitmap(BITMAP_BAT_BAR_BG_ID));
|
||||
|
@ -101,7 +29,7 @@ DriverViewViewBase::DriverViewViewBase() :
|
|||
tsSoC.setValue(60);
|
||||
add(tsSoC);
|
||||
|
||||
lvSoC.setXY(110, 122);
|
||||
lvSoC.setXY(110, 155);
|
||||
lvSoC.setProgressIndicatorPosition(0, 0, 40, 150);
|
||||
lvSoC.setRange(0, 100);
|
||||
lvSoC.setBackground(touchgfx::Bitmap(BITMAP_BAT_BAR_BG_ID));
|
||||
|
@ -114,34 +42,104 @@ DriverViewViewBase::DriverViewViewBase() :
|
|||
lvSoC.setValue(80);
|
||||
add(lvSoC);
|
||||
|
||||
tireLabel.setPosition(165, 97, 150, 25);
|
||||
tireLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
tireLabel.setLinespacing(0);
|
||||
tireLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_H6UX));
|
||||
add(tireLabel);
|
||||
|
||||
tsSoCLabel.setPosition(15, 97, 40, 25);
|
||||
tsSoCLabel.setPosition(15, 130, 40, 25);
|
||||
tsSoCLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
tsSoCLabel.setLinespacing(0);
|
||||
tsSoCLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_PHFD));
|
||||
add(tsSoCLabel);
|
||||
|
||||
lvSoCLabel.setPosition(110, 97, 40, 25);
|
||||
lvSoCLabel.setPosition(110, 130, 40, 25);
|
||||
lvSoCLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
lvSoCLabel.setLinespacing(0);
|
||||
lvSoCLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_4OBM));
|
||||
add(lvSoCLabel);
|
||||
|
||||
field1.setXY(15, 15);
|
||||
add(field1);
|
||||
drivetrainTemps.setPosition(315, 130, 150, 175);
|
||||
motorTempLabel.setPosition(0, 90, 150, 25);
|
||||
motorTempLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
motorTempLabel.setLinespacing(0);
|
||||
motorTempLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_JN2J));
|
||||
drivetrainTemps.add(motorTempLabel);
|
||||
|
||||
field2.setXY(165, 15);
|
||||
add(field2);
|
||||
motorTempL.setXY(14, 115);
|
||||
drivetrainTemps.add(motorTempL);
|
||||
|
||||
field3.setXY(315, 15);
|
||||
add(field3);
|
||||
motorTempR.setXY(77, 115);
|
||||
drivetrainTemps.add(motorTempR);
|
||||
|
||||
fieldTypeSelection.setPosition(15, 95, 150, 225);
|
||||
motorTempDiv.setPosition(74, 115, 3, 60);
|
||||
motorTempDivPainter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
motorTempDiv.setPainter(motorTempDivPainter);
|
||||
motorTempDiv.setStart(0, 0);
|
||||
motorTempDiv.setEnd(0, 320);
|
||||
motorTempDiv.setLineWidth(10);
|
||||
motorTempDiv.setLineEndingStyle(touchgfx::Line::ROUND_CAP_ENDING);
|
||||
drivetrainTemps.add(motorTempDiv);
|
||||
|
||||
invTempDiv.setPosition(74, 25, 3, 60);
|
||||
invTempDivPainter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
invTempDiv.setPainter(invTempDivPainter);
|
||||
invTempDiv.setStart(0, 0);
|
||||
invTempDiv.setEnd(0, 320);
|
||||
invTempDiv.setLineWidth(10);
|
||||
invTempDiv.setLineEndingStyle(touchgfx::Line::ROUND_CAP_ENDING);
|
||||
drivetrainTemps.add(invTempDiv);
|
||||
|
||||
invTempR.setXY(77, 25);
|
||||
drivetrainTemps.add(invTempR);
|
||||
|
||||
invTempL.setXY(14, 25);
|
||||
drivetrainTemps.add(invTempL);
|
||||
|
||||
invTempLabel.setPosition(0, 0, 150, 25);
|
||||
invTempLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
invTempLabel.setLinespacing(0);
|
||||
invTempLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_ZP7N));
|
||||
drivetrainTemps.add(invTempLabel);
|
||||
|
||||
add(drivetrainTemps);
|
||||
|
||||
brakeTemps.setPosition(165, 130, 150, 150);
|
||||
btDivVert.setPosition(74, 25, 3, 123);
|
||||
btDivVertPainter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
btDivVert.setPainter(btDivVertPainter);
|
||||
btDivVert.setStart(0, 0);
|
||||
btDivVert.setEnd(0, 320);
|
||||
btDivVert.setLineWidth(10);
|
||||
btDivVert.setLineEndingStyle(touchgfx::Line::ROUND_CAP_ENDING);
|
||||
brakeTemps.add(btDivVert);
|
||||
|
||||
btDivHoriz.setPosition(14, 85, 123, 3);
|
||||
btDivHorizPainter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
btDivHoriz.setPainter(btDivHorizPainter);
|
||||
btDivHoriz.setStart(0, 0);
|
||||
btDivHoriz.setEnd(480, 0);
|
||||
btDivHoriz.setLineWidth(10);
|
||||
btDivHoriz.setLineEndingStyle(touchgfx::Line::ROUND_CAP_ENDING);
|
||||
brakeTemps.add(btDivHoriz);
|
||||
|
||||
brakeTempRR.setXY(77, 88);
|
||||
brakeTemps.add(brakeTempRR);
|
||||
|
||||
brakeTempFR.setXY(77, 25);
|
||||
brakeTemps.add(brakeTempFR);
|
||||
|
||||
brakeTempRL.setXY(14, 88);
|
||||
brakeTemps.add(brakeTempRL);
|
||||
|
||||
brakeTempFL.setXY(14, 25);
|
||||
brakeTemps.add(brakeTempFL);
|
||||
|
||||
brakeLabel.setPosition(0, 0, 150, 25);
|
||||
brakeLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
brakeLabel.setLinespacing(0);
|
||||
brakeLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_H6UX));
|
||||
brakeTemps.add(brakeLabel);
|
||||
|
||||
add(brakeTemps);
|
||||
|
||||
dataFields.setPosition(15, 48, 450, 305);
|
||||
fieldTypeSelection.setPosition(0, 80, 150, 225);
|
||||
fieldTypeSelection.setHorizontal(false);
|
||||
fieldTypeSelection.setCircular(true);
|
||||
fieldTypeSelection.setEasingEquation(touchgfx::EasingEquations::linearEaseOut);
|
||||
|
@ -153,40 +151,75 @@ DriverViewViewBase::DriverViewViewBase() :
|
|||
fieldTypeSelection.setDrawables(fieldTypeSelectionListItems, updateItemCallback);
|
||||
fieldTypeSelection.animateToItem(0, 0);
|
||||
fieldTypeSelection.setVisible(false);
|
||||
add(fieldTypeSelection);
|
||||
dataFields.add(fieldTypeSelection);
|
||||
|
||||
progressBar.setXY(15, 280);
|
||||
field3.setXY(300, 0);
|
||||
dataFields.add(field3);
|
||||
|
||||
field2.setXY(150, 0);
|
||||
dataFields.add(field2);
|
||||
|
||||
field1.setXY(0, 0);
|
||||
dataFields.add(field1);
|
||||
|
||||
add(dataFields);
|
||||
|
||||
statusBar.setPosition(15, 15, 450, 33);
|
||||
statusItems.setXY(0, 0);
|
||||
statusItems.setDirection(touchgfx::EAST);
|
||||
statusTS_R2D.setXY(0, 0);
|
||||
statusItems.add(statusTS_R2D);
|
||||
|
||||
|
||||
statusItems.add(statusAMS);
|
||||
|
||||
statusSDC.setXY(150, 0);
|
||||
statusItems.add(statusSDC);
|
||||
|
||||
statusSCS.setXY(225, 0);
|
||||
statusItems.add(statusSCS);
|
||||
|
||||
statusItems.add(statusPDU);
|
||||
|
||||
statusINV.setXY(375, 0);
|
||||
statusItems.add(statusINV);
|
||||
|
||||
statusBar.add(statusItems);
|
||||
|
||||
progressBar.setXY(0, 0);
|
||||
progressBar.setProgressIndicatorPosition(0, 0, 480, 55);
|
||||
progressBar.setRange(0, 100);
|
||||
progressBar.setDirection(touchgfx::AbstractDirectionProgress::RIGHT);
|
||||
progressBar.setBackground(touchgfx::Bitmap(BITMAP_PRECHARGE_BG_ID));
|
||||
progressBar.setBackground(touchgfx::Bitmap(BITMAP_PROG_HORIZ_BG_ID));
|
||||
progressBar.setColor(touchgfx::Color::getColorFromRGB(99, 186, 0));
|
||||
progressBar.setValue(0);
|
||||
progressBar.setVisible(false);
|
||||
add(progressBar);
|
||||
statusBar.add(progressBar);
|
||||
|
||||
prechargeLabel.setXY(105, 275);
|
||||
prechargeLabel.setXY(90, -2);
|
||||
prechargeLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
prechargeLabel.setLinespacing(0);
|
||||
prechargeLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_HMH2));
|
||||
prechargeLabel.setVisible(false);
|
||||
add(prechargeLabel);
|
||||
statusBar.add(prechargeLabel);
|
||||
|
||||
r2dLabel.setPosition(82, 275, 317, 37);
|
||||
r2dLabel.setPosition(67, -2, 317, 37);
|
||||
r2dLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
r2dLabel.setLinespacing(0);
|
||||
r2dLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_NGUK));
|
||||
r2dLabel.setVisible(false);
|
||||
add(r2dLabel);
|
||||
statusBar.add(r2dLabel);
|
||||
|
||||
r2dProgressLabel.setPosition(180, 275, 219, 37);
|
||||
r2dProgressLabel.setPosition(165, -2, 219, 37);
|
||||
r2dProgressLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
r2dProgressLabel.setLinespacing(0);
|
||||
r2dProgressLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_J5UH));
|
||||
r2dProgressLabel.setVisible(false);
|
||||
add(r2dProgressLabel);
|
||||
statusBar.add(r2dProgressLabel);
|
||||
|
||||
errorPopup.setXY(15, 122);
|
||||
add(statusBar);
|
||||
|
||||
errorPopup.setXY(15, 155);
|
||||
errorPopup.setVisible(false);
|
||||
add(errorPopup);
|
||||
}
|
||||
|
@ -202,18 +235,24 @@ void DriverViewViewBase::setupScreen()
|
|||
motorTempR.initialize();
|
||||
invTempR.initialize();
|
||||
invTempL.initialize();
|
||||
tireTempRR.initialize();
|
||||
tireTempFR.initialize();
|
||||
tireTempRL.initialize();
|
||||
tireTempFL.initialize();
|
||||
field1.initialize();
|
||||
field2.initialize();
|
||||
field3.initialize();
|
||||
brakeTempRR.initialize();
|
||||
brakeTempFR.initialize();
|
||||
brakeTempRL.initialize();
|
||||
brakeTempFL.initialize();
|
||||
fieldTypeSelection.initialize();
|
||||
for (int i = 0; i < fieldTypeSelectionListItems.getNumberOfDrawables(); i++)
|
||||
{
|
||||
fieldTypeSelectionListItems[i].initialize();
|
||||
}
|
||||
field3.initialize();
|
||||
field2.initialize();
|
||||
field1.initialize();
|
||||
statusTS_R2D.initialize();
|
||||
statusAMS.initialize();
|
||||
statusSDC.initialize();
|
||||
statusSCS.initialize();
|
||||
statusPDU.initialize();
|
||||
statusINV.initialize();
|
||||
errorPopup.initialize();
|
||||
}
|
||||
|
||||
|
|
|
@ -14,6 +14,7 @@ const uint16_t BITMAP_FASTTUBE_LOGO_WHITE_ID = 4;
|
|||
const uint16_t BITMAP_LOGO_DV_SMALL_ID = 5;
|
||||
const uint16_t BITMAP_LOGO_DV_SMALL_WHITE_ID = 6;
|
||||
const uint16_t BITMAP_PRECHARGE_BG_ID = 7;
|
||||
const uint16_t BITMAP_PROG_HORIZ_BG_ID = 8;
|
||||
|
||||
namespace BitmapDatabase
|
||||
{
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
// 4.21.2 0x4415ad56
|
||||
// 4.21.2 0xf98ee735
|
||||
// Generated by imageconverter. Please, do not edit!
|
||||
|
||||
#include <images/BitmapDatabase.hpp>
|
||||
|
@ -12,6 +12,7 @@ extern const unsigned char image_fasttube_logo_white[]; // BITMAP_FASTTUBE_LOGO_
|
|||
extern const unsigned char image_logo_dv_small[]; // BITMAP_LOGO_DV_SMALL_ID = 5, Size: 160x55 pixels
|
||||
extern const unsigned char image_logo_dv_small_white[]; // BITMAP_LOGO_DV_SMALL_WHITE_ID = 6, Size: 160x39 pixels
|
||||
extern const unsigned char image_precharge_bg[]; // BITMAP_PRECHARGE_BG_ID = 7, Size: 450x29 pixels
|
||||
extern const unsigned char image_prog_horiz_bg[]; // BITMAP_PROG_HORIZ_BG_ID = 8, Size: 450x33 pixels
|
||||
|
||||
const touchgfx::Bitmap::BitmapData bitmap_database[] = {
|
||||
{ image_bat_bar_bg, 0, 40, 150, 0, 0, 40, ((uint8_t)touchgfx::Bitmap::RGB565) >> 3, 150, ((uint8_t)touchgfx::Bitmap::RGB565) & 0x7 },
|
||||
|
@ -21,7 +22,8 @@ const touchgfx::Bitmap::BitmapData bitmap_database[] = {
|
|||
{ image_fasttube_logo_white, 0, 480, 165, 0, 0, 480, ((uint8_t)touchgfx::Bitmap::RGB565) >> 3, 165, ((uint8_t)touchgfx::Bitmap::RGB565) & 0x7 },
|
||||
{ image_logo_dv_small, 0, 160, 55, 62, 42, 37, ((uint8_t)touchgfx::Bitmap::ARGB8888) >> 3, 2, ((uint8_t)touchgfx::Bitmap::ARGB8888) & 0x7 },
|
||||
{ image_logo_dv_small_white, 0, 160, 39, 47, 0, 1, ((uint8_t)touchgfx::Bitmap::ARGB8888) >> 3, 17, ((uint8_t)touchgfx::Bitmap::ARGB8888) & 0x7 },
|
||||
{ image_precharge_bg, 0, 450, 29, 0, 0, 450, ((uint8_t)touchgfx::Bitmap::RGB565) >> 3, 29, ((uint8_t)touchgfx::Bitmap::RGB565) & 0x7 }
|
||||
{ image_precharge_bg, 0, 450, 29, 0, 0, 450, ((uint8_t)touchgfx::Bitmap::RGB565) >> 3, 29, ((uint8_t)touchgfx::Bitmap::RGB565) & 0x7 },
|
||||
{ image_prog_horiz_bg, 0, 450, 33, 0, 0, 450, ((uint8_t)touchgfx::Bitmap::RGB565) >> 3, 33, ((uint8_t)touchgfx::Bitmap::RGB565) & 0x7 }
|
||||
};
|
||||
|
||||
namespace BitmapDatabase
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -16,7 +16,7 @@ void setupSimulator(int argc, char** argv, touchgfx::HAL& hal)
|
|||
{
|
||||
// Simulate hardware running at 60Hz generating a vsync every 16.6667 ms
|
||||
static_cast<touchgfx::HALSDL2&>(hal).setVsyncInterval(16.6667f);
|
||||
static_cast<touchgfx::HALSDL2&>(hal).setWindowTitle("MyApplication");
|
||||
static_cast<touchgfx::HALSDL2&>(hal).setWindowTitle("SteeringWheel");
|
||||
|
||||
// Initialize SDL
|
||||
bool sdl_init_result = static_cast<touchgfx::HALSDL2&>(hal).sdl_init(argc, argv);
|
||||
|
|
|
@ -1 +1 @@
|
|||
{"remap":"yes","language":"GB","language_index":0,"indices":[["128","T_ERROR_AMS"],["176","T_DEBUGVIEWFIELD_TITLE"],["176","T_DRIVERVIEWFIELD_TITLE"],["176","T_NUMBERSMALLWILDCARD"],["293","T_FIELD_BBAL"],["256","T_FIELD_TSVOLTVEH"],["249","T_FIELD_TSVOLTBAT"],["269","T_FIELD_LVSOC"],["287","T_FIELD_TSSOC"],["303","T_FIELD_MAXCELLTEMP"],["308","T_FIELD_TIREFL"],["313","T_FIELD_TIREFR"],["318","T_FIELD_TIRERL"],["323","T_FIELD_TIRERR"],["298","T_FIELD_LAPCOUNT"],["186","T_FIELD_INICHKSTATE"],["263","T_FIELD_ERR"],["341","T_FIELD_SDC"],["202","T_FIELD_INVRREADY"],["194","T_FIELD_INVLREADY"],["218","T_FIELD_R2DPROGRESS"],["210","T_FIELD_ACTIVEMISSION"],["178","T_FIELD_ASSTATE"],["234","T_FIELD_TSSTATE"],["176","T_NUMBERWILDCARD"],["176","T_DEFAULTWILDCARD_CENTERED"],["176","T_DEFAULTWILDCARD_RIGHTALIGNED"],["333","T_FIELD_TSCURRENT"],["328","T_FIELD_MINCELLVOLT"],["281","T_FIELD_SPEED"],["95","T_INSPECTION_HUGE"],["158","T_EBS_HUGE"],["117","T_TRACKDRIVE_HUGE"],["138","T_AUTOX_HUGE"],["226","T_SKIDPAD_HUGE"],["82","T_ACCEL_HUGE"],["34","T_INVALID_HUGE"],["67","T_MANUAL"],["95","T_INSPECTION"],["158","T_EBS"],["117","T_TRACKDRIVE"],["138","T_AUTOX"],["226","T_SKIDPAD"],["82","T_ACCEL"],["275","T___SINGLEUSE_JN2J"],["167","T___SINGLEUSE_ZP7N"],["176","T___SINGLEUSE_9L8R"],["16","T___SINGLEUSE_1NKF"],["176","T___SINGLEUSE_J5UH"],["337","T___SINGLEUSE_NGUK"],["176","T___SINGLEUSE_4E84"],["176","T___SINGLEUSE_YTAB"],["106","T___SINGLEUSE_RWCE"],["148","T___SINGLEUSE_HMH2"],["345","T___SINGLEUSE_4OBM"],["334","T___SINGLEUSE_PHFD"],["242","T___SINGLEUSE_H6UX"],["176","T___SINGLEUSE_20H3"],["17","T___SINGLEUSE_SDGP"],["51","T___SINGLEUSE_M5X7"],["0","T___SINGLEUSE_6GPV"]]}
|
||||
{"remap":"yes","language":"GB","language_index":0,"indices":[["345","T_PDU"],["353","T_SCS"],["357","T_SDC"],["349","T_R2D"],["342","T_TS"],["337","T_INV"],["333","T_AMS"],["128","T_ERROR_AMS"],["176","T_DEBUGVIEWFIELD_TITLE"],["176","T_DRIVERVIEWFIELD_TITLE"],["176","T_NUMBERSMALLWILDCARD"],["293","T_FIELD_BBAL"],["256","T_FIELD_TSVOLTVEH"],["249","T_FIELD_TSVOLTBAT"],["269","T_FIELD_LVSOC"],["287","T_FIELD_TSSOC"],["303","T_FIELD_MAXCELLTEMP"],["308","T_FIELD_TIREFL"],["313","T_FIELD_TIREFR"],["318","T_FIELD_TIRERL"],["323","T_FIELD_TIRERR"],["298","T_FIELD_LAPCOUNT"],["186","T_FIELD_INICHKSTATE"],["263","T_FIELD_ERR"],["357","T_FIELD_SDC"],["202","T_FIELD_INVRREADY"],["194","T_FIELD_INVLREADY"],["218","T_FIELD_R2DPROGRESS"],["210","T_FIELD_ACTIVEMISSION"],["178","T_FIELD_ASSTATE"],["234","T_FIELD_TSSTATE"],["176","T_NUMBERWILDCARD"],["176","T_DEFAULTWILDCARD_CENTERED"],["176","T_DEFAULTWILDCARD_RIGHTALIGNED"],["341","T_FIELD_TSCURRENT"],["328","T_FIELD_MINCELLVOLT"],["281","T_FIELD_SPEED"],["95","T_INSPECTION_HUGE"],["158","T_EBS_HUGE"],["117","T_TRACKDRIVE_HUGE"],["138","T_AUTOX_HUGE"],["226","T_SKIDPAD_HUGE"],["82","T_ACCEL_HUGE"],["34","T_INVALID_HUGE"],["67","T_MANUAL"],["95","T_INSPECTION"],["158","T_EBS"],["117","T_TRACKDRIVE"],["138","T_AUTOX"],["226","T_SKIDPAD"],["82","T_ACCEL"],["16","T___SINGLEUSE_F9I5"],["275","T___SINGLEUSE_JN2J"],["167","T___SINGLEUSE_ZP7N"],["176","T___SINGLEUSE_9L8R"],["16","T___SINGLEUSE_1NKF"],["176","T___SINGLEUSE_J5UH"],["349","T___SINGLEUSE_NGUK"],["176","T___SINGLEUSE_4E84"],["176","T___SINGLEUSE_YTAB"],["106","T___SINGLEUSE_RWCE"],["148","T___SINGLEUSE_HMH2"],["361","T___SINGLEUSE_4OBM"],["342","T___SINGLEUSE_PHFD"],["242","T___SINGLEUSE_H6UX"],["176","T___SINGLEUSE_20H3"],["17","T___SINGLEUSE_SDGP"],["51","T___SINGLEUSE_M5X7"],["0","T___SINGLEUSE_6GPV"]]}
|
|
@ -1 +1 @@
|
|||
{"languages":["GB"],"textids":["T_ERROR_AMS","T_DEBUGVIEWFIELD_TITLE","T_DRIVERVIEWFIELD_TITLE","T_NUMBERSMALLWILDCARD","T_FIELD_BBAL","T_FIELD_TSVOLTVEH","T_FIELD_TSVOLTBAT","T_FIELD_LVSOC","T_FIELD_TSSOC","T_FIELD_MAXCELLTEMP","T_FIELD_TIREFL","T_FIELD_TIREFR","T_FIELD_TIRERL","T_FIELD_TIRERR","T_FIELD_LAPCOUNT","T_FIELD_INICHKSTATE","T_FIELD_ERR","T_FIELD_SDC","T_FIELD_INVRREADY","T_FIELD_INVLREADY","T_FIELD_R2DPROGRESS","T_FIELD_ACTIVEMISSION","T_FIELD_ASSTATE","T_FIELD_TSSTATE","T_NUMBERWILDCARD","T_DEFAULTWILDCARD_CENTERED","T_DEFAULTWILDCARD_RIGHTALIGNED","T_FIELD_TSCURRENT","T_FIELD_MINCELLVOLT","T_FIELD_SPEED","T_INSPECTION_HUGE","T_EBS_HUGE","T_TRACKDRIVE_HUGE","T_AUTOX_HUGE","T_SKIDPAD_HUGE","T_ACCEL_HUGE","T_INVALID_HUGE","T_MANUAL","T_INSPECTION","T_EBS","T_TRACKDRIVE","T_AUTOX","T_SKIDPAD","T_ACCEL","T___SINGLEUSE_JN2J","T___SINGLEUSE_ZP7N","T___SINGLEUSE_9L8R","T___SINGLEUSE_1NKF","T___SINGLEUSE_J5UH","T___SINGLEUSE_NGUK","T___SINGLEUSE_4E84","T___SINGLEUSE_YTAB","T___SINGLEUSE_RWCE","T___SINGLEUSE_HMH2","T___SINGLEUSE_4OBM","T___SINGLEUSE_PHFD","T___SINGLEUSE_H6UX","T___SINGLEUSE_20H3","T___SINGLEUSE_SDGP","T___SINGLEUSE_M5X7","T___SINGLEUSE_6GPV"]}
|
||||
{"languages":["GB"],"textids":["T_PDU","T_SCS","T_SDC","T_R2D","T_TS","T_INV","T_AMS","T_ERROR_AMS","T_DEBUGVIEWFIELD_TITLE","T_DRIVERVIEWFIELD_TITLE","T_NUMBERSMALLWILDCARD","T_FIELD_BBAL","T_FIELD_TSVOLTVEH","T_FIELD_TSVOLTBAT","T_FIELD_LVSOC","T_FIELD_TSSOC","T_FIELD_MAXCELLTEMP","T_FIELD_TIREFL","T_FIELD_TIREFR","T_FIELD_TIRERL","T_FIELD_TIRERR","T_FIELD_LAPCOUNT","T_FIELD_INICHKSTATE","T_FIELD_ERR","T_FIELD_SDC","T_FIELD_INVRREADY","T_FIELD_INVLREADY","T_FIELD_R2DPROGRESS","T_FIELD_ACTIVEMISSION","T_FIELD_ASSTATE","T_FIELD_TSSTATE","T_NUMBERWILDCARD","T_DEFAULTWILDCARD_CENTERED","T_DEFAULTWILDCARD_RIGHTALIGNED","T_FIELD_TSCURRENT","T_FIELD_MINCELLVOLT","T_FIELD_SPEED","T_INSPECTION_HUGE","T_EBS_HUGE","T_TRACKDRIVE_HUGE","T_AUTOX_HUGE","T_SKIDPAD_HUGE","T_ACCEL_HUGE","T_INVALID_HUGE","T_MANUAL","T_INSPECTION","T_EBS","T_TRACKDRIVE","T_AUTOX","T_SKIDPAD","T_ACCEL","T___SINGLEUSE_F9I5","T___SINGLEUSE_JN2J","T___SINGLEUSE_ZP7N","T___SINGLEUSE_9L8R","T___SINGLEUSE_1NKF","T___SINGLEUSE_J5UH","T___SINGLEUSE_NGUK","T___SINGLEUSE_4E84","T___SINGLEUSE_YTAB","T___SINGLEUSE_RWCE","T___SINGLEUSE_HMH2","T___SINGLEUSE_4OBM","T___SINGLEUSE_PHFD","T___SINGLEUSE_H6UX","T___SINGLEUSE_20H3","T___SINGLEUSE_SDGP","T___SINGLEUSE_M5X7","T___SINGLEUSE_6GPV"]}
|
|
@ -1 +1 @@
|
|||
{"remap":"yes","languages":["Gb"],"characters":[67,104,111,111,115,101,32,97,32,109,105,115,115,105,111,110,0,67,117,114,114,101,110,116,32,77,105,115,115,105,111,110,58,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,33,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,0,77,97,110,117,97,108,32,68,114,105,118,105,110,103,0,65,99,99,101,108,101,114,97,116,105,111,110,0,73,110,115,112,101,99,116,105,111,110,0,80,65,82,65,77,69,84,69,82,83,0,84,114,97,99,107,100,114,105,118,101,0,65,77,83,32,69,114,114,79,114,0,65,117,116,111,99,114,111,115,115,0,80,82,69,67,72,65,82,71,69,0,69,66,83,32,84,101,115,116,0,73,78,86,69,82,84,69,82,0,2,0,65,83,83,84,65,84,69,0,73,67,83,84,65,84,69,0,73,78,86,76,82,68,89,0,73,78,86,82,82,68,89,0,77,73,83,83,73,79,78,0,82,50,68,80,82,79,71,0,83,107,105,100,112,97,100,0,84,83,83,84,65,84,69,0,66,82,65,75,69,83,0,84,83,86,66,65,84,0,84,83,86,86,69,72,0,69,82,82,79,82,0,76,86,83,79,67,0,77,79,84,79,82,0,83,80,69,69,68,0,84,83,83,79,67,0,66,66,65,76,0,76,65,80,83,0,84,77,65,88,0,84,84,70,76,0,84,84,70,82,0,84,84,82,76,0,84,84,82,82,0,86,77,73,78,0,73,84,83,0,82,50,68,0,83,68,67,0,76,86,0]}
|
||||
{"remap":"yes","languages":["Gb"],"characters":[67,104,111,111,115,101,32,97,32,109,105,115,115,105,111,110,0,67,117,114,114,101,110,116,32,77,105,115,115,105,111,110,58,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,33,0,73,110,118,97,108,105,100,32,77,105,115,115,105,111,110,0,77,97,110,117,97,108,32,68,114,105,118,105,110,103,0,65,99,99,101,108,101,114,97,116,105,111,110,0,73,110,115,112,101,99,116,105,111,110,0,80,65,82,65,77,69,84,69,82,83,0,84,114,97,99,107,100,114,105,118,101,0,65,77,83,32,69,114,114,79,114,0,65,117,116,111,99,114,111,115,115,0,80,82,69,67,72,65,82,71,69,0,69,66,83,32,84,101,115,116,0,73,78,86,69,82,84,69,82,0,2,0,65,83,83,84,65,84,69,0,73,67,83,84,65,84,69,0,73,78,86,76,82,68,89,0,73,78,86,82,82,68,89,0,77,73,83,83,73,79,78,0,82,50,68,80,82,79,71,0,83,107,105,100,112,97,100,0,84,83,83,84,65,84,69,0,66,82,65,75,69,83,0,84,83,86,66,65,84,0,84,83,86,86,69,72,0,69,82,82,79,82,0,76,86,83,79,67,0,77,79,84,79,82,0,83,80,69,69,68,0,84,83,83,79,67,0,66,66,65,76,0,76,65,80,83,0,84,77,65,88,0,84,84,70,76,0,84,84,70,82,0,84,84,82,76,0,84,84,82,82,0,86,77,73,78,0,65,77,83,0,73,78,86,0,73,84,83,0,80,68,85,0,82,50,68,0,83,67,83,0,83,68,67,0,76,86,0]}
|
|
@ -1 +1 @@
|
|||
{"databases":{"GB":[[3,"CENTER","LTR"],[5,"LEFT","LTR"],[2,"CENTER","LTR"],[6,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[0,"CENTER","LTR"],[0,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[0,"LEFT","LTR"],[3,"CENTER","LTR"],[1,"RIGHT","LTR"],[1,"LEFT","LTR"],[4,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[1,"LEFT","LTR"]],"DEFAULT":[[3,"CENTER","LTR"],[5,"LEFT","LTR"],[2,"CENTER","LTR"],[6,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[0,"CENTER","LTR"],[0,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[0,"LEFT","LTR"],[3,"CENTER","LTR"],[1,"RIGHT","LTR"],[1,"LEFT","LTR"],[4,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[1,"LEFT","LTR"]]},"database_list":["GB"],"fonts":{"getFont_verdana_20_4bpp":0,"getFont_CHINN____30_4bpp":1,"getFont_CHINN____20_4bpp":2,"getFont_CHINN____40_4bpp":3,"getFont_lucon_TTF_50_4bpp":4,"getFont_verdanab_20_4bpp":5,"getFont_lucon_TTF_33_4bpp":6},"generate_font_format":"0"}
|
||||
{"databases":{"GB":[[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[5,"LEFT","LTR"],[2,"CENTER","LTR"],[6,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[0,"CENTER","LTR"],[0,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[0,"LEFT","LTR"],[3,"CENTER","LTR"],[1,"RIGHT","LTR"],[1,"LEFT","LTR"],[4,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[1,"LEFT","LTR"]],"DEFAULT":[[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[5,"LEFT","LTR"],[2,"CENTER","LTR"],[6,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[0,"CENTER","LTR"],[0,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[3,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[0,"LEFT","LTR"],[3,"CENTER","LTR"],[1,"RIGHT","LTR"],[1,"LEFT","LTR"],[4,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[2,"CENTER","LTR"],[4,"CENTER","LTR"],[1,"LEFT","LTR"],[2,"CENTER","LTR"],[1,"LEFT","LTR"]]},"database_list":["GB"],"fonts":{"getFont_verdana_20_4bpp":0,"getFont_CHINN____30_4bpp":1,"getFont_CHINN____20_4bpp":2,"getFont_CHINN____40_4bpp":3,"getFont_lucon_TTF_50_4bpp":4,"getFont_verdanab_20_4bpp":5,"getFont_lucon_TTF_33_4bpp":6},"generate_font_format":"0"}
|
|
@ -12,6 +12,13 @@ enum LANGUAGES
|
|||
|
||||
enum TEXTS
|
||||
{
|
||||
T_PDU,
|
||||
T_SCS,
|
||||
T_SDC,
|
||||
T_R2D,
|
||||
T_TS,
|
||||
T_INV,
|
||||
T_AMS,
|
||||
T_ERROR_AMS,
|
||||
T_DEBUGVIEWFIELD_TITLE,
|
||||
T_DRIVERVIEWFIELD_TITLE,
|
||||
|
@ -56,6 +63,7 @@ enum TEXTS
|
|||
T_AUTOX,
|
||||
T_SKIDPAD,
|
||||
T_ACCEL,
|
||||
T___SINGLEUSE_F9I5,
|
||||
T___SINGLEUSE_JN2J,
|
||||
T___SINGLEUSE_ZP7N,
|
||||
T___SINGLEUSE_9L8R,
|
||||
|
|
|
@ -10,6 +10,13 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE;
|
|||
// Remap all strings
|
||||
TEXT_LOCATION_FLASH_PRAGMA
|
||||
KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
|
||||
345, // T_PDU: "PDU"
|
||||
353, // T_SCS: "SCS"
|
||||
357, // T_SDC: "SDC"
|
||||
349, // T_R2D: "R2D"
|
||||
342, // T_TS: "TS"
|
||||
337, // T_INV: "INV"
|
||||
333, // T_AMS: "AMS"
|
||||
128, // T_ERROR_AMS: "AMS ErrOr"
|
||||
176, // T_DEBUGVIEWFIELD_TITLE: "<>"
|
||||
176, // T_DRIVERVIEWFIELD_TITLE: "<>"
|
||||
|
@ -27,7 +34,7 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
|
|||
298, // T_FIELD_LAPCOUNT: "LAPS"
|
||||
186, // T_FIELD_INICHKSTATE: "ICSTATE"
|
||||
263, // T_FIELD_ERR: "ERROR"
|
||||
341, // T_FIELD_SDC: "SDC"
|
||||
357, // T_FIELD_SDC: "SDC"
|
||||
202, // T_FIELD_INVRREADY: "INVRRDY"
|
||||
194, // T_FIELD_INVLREADY: "INVLRDY"
|
||||
218, // T_FIELD_R2DPROGRESS: "R2DPROG"
|
||||
|
@ -37,7 +44,7 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
|
|||
176, // T_NUMBERWILDCARD: "<>"
|
||||
176, // T_DEFAULTWILDCARD_CENTERED: "<>"
|
||||
176, // T_DEFAULTWILDCARD_RIGHTALIGNED: "<>"
|
||||
333, // T_FIELD_TSCURRENT: "ITS"
|
||||
341, // T_FIELD_TSCURRENT: "ITS"
|
||||
328, // T_FIELD_MINCELLVOLT: "VMIN"
|
||||
281, // T_FIELD_SPEED: "SPEED"
|
||||
95, // T_INSPECTION_HUGE: "Inspection"
|
||||
|
@ -54,18 +61,19 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
|
|||
138, // T_AUTOX: "Autocross"
|
||||
226, // T_SKIDPAD: "Skidpad"
|
||||
82, // T_ACCEL: "Acceleration"
|
||||
16, // T___SINGLEUSE_F9I5: ""
|
||||
275, // T___SINGLEUSE_JN2J: "MOTOR"
|
||||
167, // T___SINGLEUSE_ZP7N: "INVERTER"
|
||||
176, // T___SINGLEUSE_9L8R: "<>"
|
||||
16, // T___SINGLEUSE_1NKF: ""
|
||||
176, // T___SINGLEUSE_J5UH: "<>"
|
||||
337, // T___SINGLEUSE_NGUK: "R2D"
|
||||
349, // T___SINGLEUSE_NGUK: "R2D"
|
||||
176, // T___SINGLEUSE_4E84: "<>"
|
||||
176, // T___SINGLEUSE_YTAB: "<>"
|
||||
106, // T___SINGLEUSE_RWCE: "PARAMETERS"
|
||||
148, // T___SINGLEUSE_HMH2: "PRECHARGE"
|
||||
345, // T___SINGLEUSE_4OBM: "LV"
|
||||
334, // T___SINGLEUSE_PHFD: "TS"
|
||||
361, // T___SINGLEUSE_4OBM: "LV"
|
||||
342, // T___SINGLEUSE_PHFD: "TS"
|
||||
242, // T___SINGLEUSE_H6UX: "BRAKES"
|
||||
176, // T___SINGLEUSE_20H3: "<>"
|
||||
17, // T___SINGLEUSE_SDGP: "Current Mission:"
|
||||
|
|
|
@ -99,10 +99,14 @@ KEEP extern const touchgfx::Unicode::UnicodeChar texts_all_languages[] TEXT_LOCA
|
|||
0x54, 0x54, 0x52, 0x4c, 0x0, // @318 "TTRL"
|
||||
0x54, 0x54, 0x52, 0x52, 0x0, // @323 "TTRR"
|
||||
0x56, 0x4d, 0x49, 0x4e, 0x0, // @328 "VMIN"
|
||||
0x49, 0x54, 0x53, 0x0, // @333 "ITS"
|
||||
0x52, 0x32, 0x44, 0x0, // @337 "R2D"
|
||||
0x53, 0x44, 0x43, 0x0, // @341 "SDC"
|
||||
0x4c, 0x56, 0x0 // @345 "LV"
|
||||
0x41, 0x4d, 0x53, 0x0, // @333 "AMS"
|
||||
0x49, 0x4e, 0x56, 0x0, // @337 "INV"
|
||||
0x49, 0x54, 0x53, 0x0, // @341 "ITS"
|
||||
0x50, 0x44, 0x55, 0x0, // @345 "PDU"
|
||||
0x52, 0x32, 0x44, 0x0, // @349 "R2D"
|
||||
0x53, 0x43, 0x53, 0x0, // @353 "SCS"
|
||||
0x53, 0x44, 0x43, 0x0, // @357 "SDC"
|
||||
0x4c, 0x56, 0x0 // @361 "LV"
|
||||
};
|
||||
|
||||
TEXT_LOCATION_FLASH_PRAGMA
|
||||
|
|
|
@ -28,6 +28,13 @@ extern const touchgfx::TypedText::TypedTextData* const typedTextDatabaseArray[];
|
|||
|
||||
TEXT_LOCATION_FLASH_PRAGMA
|
||||
const touchgfx::TypedText::TypedTextData typedText_database_GB[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 5, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
|
@ -74,6 +81,7 @@ const touchgfx::TypedText::TypedTextData typedText_database_GB[] TEXT_LOCATION_F
|
|||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 0, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 1, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
|
@ -92,6 +100,13 @@ const touchgfx::TypedText::TypedTextData typedText_database_GB[] TEXT_LOCATION_F
|
|||
};
|
||||
TEXT_LOCATION_FLASH_PRAGMA
|
||||
const touchgfx::TypedText::TypedTextData typedText_database_DEFAULT[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 5, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
|
@ -138,6 +153,7 @@ const touchgfx::TypedText::TypedTextData typedText_database_DEFAULT[] TEXT_LOCAT
|
|||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 0, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 3, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 1, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
|
|
|
@ -0,0 +1,37 @@
|
|||
#ifndef DRIVERVIEWSTATUSITEM_HPP
|
||||
#define DRIVERVIEWSTATUSITEM_HPP
|
||||
|
||||
#include "touchgfx/Color.hpp"
|
||||
#include "touchgfx/hal/Types.hpp"
|
||||
#include <gui_generated/containers/DriverViewStatusItemBase.hpp>
|
||||
|
||||
enum class DriverViewStatusType { TS_R2D, AMS, SDC, SCS, PDU, INV };
|
||||
|
||||
class DriverViewStatusItem : public DriverViewStatusItemBase {
|
||||
public:
|
||||
DriverViewStatusItem();
|
||||
virtual ~DriverViewStatusItem() {}
|
||||
|
||||
virtual void initialize();
|
||||
|
||||
virtual void setType(DriverViewStatusType type);
|
||||
|
||||
void update();
|
||||
|
||||
static inline colortype COLOR_OFF =
|
||||
touchgfx::Color::getColorFromRGB(0x00, 0x00, 0x00);
|
||||
static inline colortype COLOR_OK =
|
||||
touchgfx::Color::getColorFromRGB(0x0D, 0xBF, 0x00);
|
||||
static inline colortype COLOR_WARNING =
|
||||
touchgfx::Color::getColorFromRGB(0xEB, 0xC4, 0x00);
|
||||
static inline colortype COLOR_ERROR =
|
||||
touchgfx::Color::getColorFromRGB(0xC5, 0x0E, 0x1F);
|
||||
static inline colortype COLOR_TS =
|
||||
touchgfx::Color::getColorFromRGB(0xEB, 0x7D, 0x00);
|
||||
|
||||
protected:
|
||||
private:
|
||||
DriverViewStatusType type;
|
||||
};
|
||||
|
||||
#endif // DRIVERVIEWSTATUSITEM_HPP
|
|
@ -23,6 +23,7 @@ public:
|
|||
|
||||
void setFieldType(size_t i, DataFieldType type);
|
||||
void updateFieldValues();
|
||||
void updateStatusItems();
|
||||
|
||||
void setTemps(const Temperatures &temps);
|
||||
void setTSSoC(uint8_t soc);
|
||||
|
|
|
@ -0,0 +1,63 @@
|
|||
#include <gui/containers/DriverViewStatusItem.hpp>
|
||||
|
||||
#include "texts/TextKeysAndLanguages.hpp"
|
||||
#include "vehicle.h"
|
||||
|
||||
DriverViewStatusItem::DriverViewStatusItem() {}
|
||||
|
||||
void DriverViewStatusItem::initialize() {
|
||||
DriverViewStatusItemBase::initialize();
|
||||
}
|
||||
|
||||
void DriverViewStatusItem::setType(DriverViewStatusType type) {
|
||||
this->type = type;
|
||||
}
|
||||
|
||||
void DriverViewStatusItem::update() {
|
||||
switch (type) {
|
||||
case DriverViewStatusType::TS_R2D:
|
||||
if (vehicle_state.ts_state == TS_ERROR) {
|
||||
text.setTypedText(T_TS);
|
||||
bg.setColor(COLOR_ERROR);
|
||||
} else if (vehicle_state.ts_state == TS_INACTIVE) {
|
||||
text.setTypedText(T_TS);
|
||||
bg.setColor(COLOR_OFF);
|
||||
} else if (vehicle_state.r2d_progress == R2D_INIT_SUCCESS) {
|
||||
text.setTypedText(T_R2D);
|
||||
bg.setColor(COLOR_OK);
|
||||
} else {
|
||||
text.setTypedText(T_TS);
|
||||
bg.setColor(COLOR_TS);
|
||||
}
|
||||
break;
|
||||
case DriverViewStatusType::AMS:
|
||||
text.setTypedText(T_AMS);
|
||||
bg.setColor(vehicle_state.ts_state == TS_ERROR ? COLOR_ERROR : COLOR_OK);
|
||||
break;
|
||||
case DriverViewStatusType::SDC:
|
||||
text.setTypedText(T_SDC);
|
||||
bg.setColor(vehicle_state.sdc_closed ? COLOR_OK : COLOR_WARNING);
|
||||
break;
|
||||
case DriverViewStatusType::SCS:
|
||||
text.setTypedText(T_SCS);
|
||||
bg.setColor(vehicle_state.errors.err_scs ? COLOR_ERROR : COLOR_OK);
|
||||
break;
|
||||
case DriverViewStatusType::PDU:
|
||||
text.setTypedText(T_PDU);
|
||||
bg.setColor(vehicle_state.errors.err_pdu ? COLOR_ERROR : COLOR_OK);
|
||||
break;
|
||||
case DriverViewStatusType::INV:
|
||||
text.setTypedText(T_INV);
|
||||
if (vehicle_state.errors.err_invl || vehicle_state.errors.err_invr) {
|
||||
bg.setColor(COLOR_ERROR);
|
||||
} else if (vehicle_state.errors.invl_ready &&
|
||||
vehicle_state.errors.invr_ready) {
|
||||
bg.setColor(COLOR_OK);
|
||||
} else {
|
||||
bg.setColor(COLOR_OFF);
|
||||
}
|
||||
break;
|
||||
}
|
||||
text.invalidate();
|
||||
bg.invalidate();
|
||||
}
|
|
@ -22,6 +22,7 @@ void DriverViewPresenter::vehicleStateUpdated() {
|
|||
updateErrorPopup();
|
||||
|
||||
view.updateFieldValues();
|
||||
view.updateStatusItems();
|
||||
}
|
||||
|
||||
void DriverViewPresenter::nextScreen() {
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
#include "gui/common/NamedField.hpp"
|
||||
#include "gui/containers/DriverViewField.hpp"
|
||||
#include "gui/containers/DriverViewStatusItem.hpp"
|
||||
#include "gui/driverview_screen/DriverViewPresenter.hpp"
|
||||
#include "texts/TextKeysAndLanguages.hpp"
|
||||
#include "touchgfx/Callback.hpp"
|
||||
#include "touchgfx/Drawable.hpp"
|
||||
#include "touchgfx/Unicode.hpp"
|
||||
#include "vehicle.h"
|
||||
#include <gui/driverview_screen/DriverViewView.hpp>
|
||||
|
@ -16,6 +19,12 @@ void DriverViewView::setupScreen() {
|
|||
for (size_t i = 0; i < NUM_FIELDS; i++) {
|
||||
getField(i).setType(fieldTypes[i]);
|
||||
}
|
||||
statusTS_R2D.setType(DriverViewStatusType::TS_R2D);
|
||||
statusAMS.setType(DriverViewStatusType::AMS);
|
||||
statusSDC.setType(DriverViewStatusType::SDC);
|
||||
statusSCS.setType(DriverViewStatusType::SCS);
|
||||
statusPDU.setType(DriverViewStatusType::PDU);
|
||||
statusINV.setType(DriverViewStatusType::INV);
|
||||
fieldTypeSelection.setNumberOfItems(DataFieldType_COUNT);
|
||||
// int tireThresholds[4] = {35, 40, 50, 60};
|
||||
// tireTempFL.setTempThresholds(tireThresholds);
|
||||
|
@ -23,14 +32,14 @@ void DriverViewView::setupScreen() {
|
|||
// tireTempRL.setTempThresholds(tireThresholds);
|
||||
// tireTempRR.setTempThresholds(tireThresholds);
|
||||
int brakeThresholds[4] = {100, 150, 200, 250};
|
||||
tireTempFL.setSmallText(true);
|
||||
tireTempFL.setTempThresholds(brakeThresholds);
|
||||
tireTempFR.setSmallText(true);
|
||||
tireTempFR.setTempThresholds(brakeThresholds);
|
||||
tireTempRL.setSmallText(true);
|
||||
tireTempRL.setTempThresholds(brakeThresholds);
|
||||
tireTempRR.setSmallText(true);
|
||||
tireTempRR.setTempThresholds(brakeThresholds);
|
||||
brakeTempFL.setSmallText(true);
|
||||
brakeTempFL.setTempThresholds(brakeThresholds);
|
||||
brakeTempFR.setSmallText(true);
|
||||
brakeTempFR.setTempThresholds(brakeThresholds);
|
||||
brakeTempRL.setSmallText(true);
|
||||
brakeTempRL.setTempThresholds(brakeThresholds);
|
||||
brakeTempRR.setSmallText(true);
|
||||
brakeTempRR.setTempThresholds(brakeThresholds);
|
||||
int invThresholds[4] = {30, 40, 50, 60};
|
||||
invTempL.setTempThresholds(invThresholds);
|
||||
invTempR.setTempThresholds(invThresholds);
|
||||
|
@ -57,11 +66,27 @@ void DriverViewView::updateFieldValues() {
|
|||
}
|
||||
}
|
||||
|
||||
class StatusItemUpdateCallback
|
||||
: public touchgfx::GenericCallback<touchgfx::Drawable &> {
|
||||
virtual void execute(Drawable &item) override {
|
||||
DriverViewStatusItem &statusItem =
|
||||
static_cast<DriverViewStatusItem &>(item);
|
||||
statusItem.update();
|
||||
}
|
||||
|
||||
virtual bool isValid() const override { return true; }
|
||||
};
|
||||
|
||||
void DriverViewView::updateStatusItems() {
|
||||
StatusItemUpdateCallback cb;
|
||||
statusItems.forEachChild(&cb);
|
||||
}
|
||||
|
||||
void DriverViewView::setTemps(const Temperatures &temps) {
|
||||
tireTempFL.setTemp(roundf(temps.brake_fl));
|
||||
tireTempFR.setTemp(roundf(temps.brake_fr));
|
||||
tireTempRL.setTemp(roundf(temps.brake_rl));
|
||||
tireTempRR.setTemp(roundf(temps.brake_rr));
|
||||
brakeTempFL.setTemp(roundf(temps.brake_fl));
|
||||
brakeTempFR.setTemp(roundf(temps.brake_fr));
|
||||
brakeTempRL.setTemp(roundf(temps.brake_rl));
|
||||
brakeTempRR.setTemp(roundf(temps.brake_rr));
|
||||
invTempL.setTemp(roundf(temps.inv_l));
|
||||
invTempR.setTemp(roundf(temps.inv_r));
|
||||
motorTempL.setTemp(roundf(temps.mot_l));
|
||||
|
|
|
@ -53,6 +53,8 @@
|
|||
<ClCompile Include="..\..\generated\gui_generated\src\containers\ErrorPopupBase.cpp"/>
|
||||
<ClCompile Include="..\..\gui\src\containers\Temperature.cpp"/>
|
||||
<ClCompile Include="..\..\generated\gui_generated\src\containers\TemperatureBase.cpp"/>
|
||||
<ClCompile Include="..\..\gui\src\containers\DriverViewStatusItem.cpp"/>
|
||||
<ClCompile Include="..\..\generated\gui_generated\src\containers\DriverViewStatusItemBase.cpp"/>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="$(ApplicationRoot)\assets\texts\texts.xml"/>
|
||||
|
@ -235,6 +237,8 @@
|
|||
<ClInclude Include="..\..\generated\gui_generated\include\gui_generated\containers\ErrorPopupBase.hpp"/>
|
||||
<ClInclude Include="..\..\gui\include\gui\containers\Temperature.hpp"/>
|
||||
<ClInclude Include="..\..\generated\gui_generated\include\gui_generated\containers\TemperatureBase.hpp"/>
|
||||
<ClInclude Include="..\..\gui\include\gui\containers\DriverViewStatusItem.hpp"/>
|
||||
<ClInclude Include="..\..\generated\gui_generated\include\gui_generated\containers\DriverViewStatusItemBase.hpp"/>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="$(ApplicationRoot)\generated\simulator\touchgfx.rc"/>
|
||||
|
|
|
@ -372,6 +372,12 @@
|
|||
<ClCompile Include="..\..\generated\gui_generated\src\containers\TemperatureBase.cpp">
|
||||
<Filter>Source Files\generated\gui_generated\containers</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\gui\src\containers\DriverViewStatusItem.cpp">
|
||||
<Filter>Source Files\gui\containers</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\generated\gui_generated\src\containers\DriverViewStatusItemBase.cpp">
|
||||
<Filter>Source Files\generated\gui_generated\containers</Filter>
|
||||
</ClCompile>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="$(ApplicationRoot)\assets\texts\texts.xml">
|
||||
|
@ -910,6 +916,12 @@
|
|||
<ClInclude Include="..\..\generated\gui_generated\include\gui_generated\containers\TemperatureBase.hpp">
|
||||
<Filter>Header Files\generated\gui_generated\containers</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\gui\include\gui\containers\DriverViewStatusItem.hpp">
|
||||
<Filter>Header Files\gui\containers</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\generated\gui_generated\include\gui_generated\containers\DriverViewStatusItemBase.hpp">
|
||||
<Filter>Header Files\generated\gui_generated\containers</Filter>
|
||||
</ClInclude>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ResourceCompile Include="$(ApplicationRoot)\generated\simulator\touchgfx.rc">
|
||||
|
|
|
@ -244,177 +244,11 @@
|
|||
"Name": "DriverView",
|
||||
"CanvasBufferSize": 7200,
|
||||
"Components": [
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "motorTempLabel",
|
||||
"X": 315,
|
||||
"Y": 187,
|
||||
"Width": 150,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_JN2J",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "motorTempL",
|
||||
"X": 329,
|
||||
"Y": 212,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "motorTempR",
|
||||
"X": 392,
|
||||
"Y": 212,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "motorTempDiv",
|
||||
"X": 389,
|
||||
"Y": 212,
|
||||
"Width": 3,
|
||||
"Height": 60,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"EndY": 320.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Round"
|
||||
},
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "invTempDiv",
|
||||
"X": 389,
|
||||
"Y": 122,
|
||||
"Width": 3,
|
||||
"Height": 60,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"EndY": 320.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Round"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "invTempR",
|
||||
"X": 392,
|
||||
"Y": 122,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "invTempL",
|
||||
"X": 329,
|
||||
"Y": 122,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "invTempLabel",
|
||||
"X": 315,
|
||||
"Y": 97,
|
||||
"Width": 150,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_ZP7N",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
},
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "ttDivVert",
|
||||
"X": 239,
|
||||
"Y": 122,
|
||||
"Width": 3,
|
||||
"Height": 123,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"EndY": 320.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Round"
|
||||
},
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "ttDivHoriz",
|
||||
"X": 179,
|
||||
"Y": 182,
|
||||
"Width": 123,
|
||||
"Height": 3,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"EndX": 480.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Round"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "tireTempRR",
|
||||
"X": 242,
|
||||
"Y": 185,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "tireTempFR",
|
||||
"X": 242,
|
||||
"Y": 122,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "tireTempRL",
|
||||
"X": 179,
|
||||
"Y": 185,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "tireTempFL",
|
||||
"X": 179,
|
||||
"Y": 122,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "LineProgress",
|
||||
"Name": "tsSoC",
|
||||
"X": 15,
|
||||
"Y": 122,
|
||||
"Y": 155,
|
||||
"Width": 40,
|
||||
"Height": 150,
|
||||
"Color": {
|
||||
|
@ -434,7 +268,7 @@
|
|||
"Type": "LineProgress",
|
||||
"Name": "lvSoC",
|
||||
"X": 110,
|
||||
"Y": 122,
|
||||
"Y": 155,
|
||||
"Width": 40,
|
||||
"Height": 150,
|
||||
"Color": {
|
||||
|
@ -450,26 +284,11 @@
|
|||
"ProgressRangeMax": 100,
|
||||
"ProgressInitialValue": 80
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "tireLabel",
|
||||
"X": 165,
|
||||
"Y": 97,
|
||||
"Width": 150,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_H6UX",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "tsSoCLabel",
|
||||
"X": 15,
|
||||
"Y": 97,
|
||||
"Y": 130,
|
||||
"Width": 40,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_PHFD",
|
||||
|
@ -484,7 +303,7 @@
|
|||
"Type": "TextArea",
|
||||
"Name": "lvSoCLabel",
|
||||
"X": 110,
|
||||
"Y": 97,
|
||||
"Y": 130,
|
||||
"Width": 40,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_4OBM",
|
||||
|
@ -496,122 +315,387 @@
|
|||
}
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "field1",
|
||||
"X": 15,
|
||||
"Y": 15,
|
||||
"Width": 150,
|
||||
"Height": 80,
|
||||
"CustomContainerDefinitionName": "DriverViewField"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "field2",
|
||||
"X": 165,
|
||||
"Y": 15,
|
||||
"Width": 150,
|
||||
"Height": 80,
|
||||
"CustomContainerDefinitionName": "DriverViewField"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "field3",
|
||||
"Type": "Container",
|
||||
"Name": "drivetrainTemps",
|
||||
"X": 315,
|
||||
"Y": 15,
|
||||
"Y": 130,
|
||||
"Width": 150,
|
||||
"Height": 80,
|
||||
"CustomContainerDefinitionName": "DriverViewField"
|
||||
"Height": 175,
|
||||
"Components": [
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "motorTempLabel",
|
||||
"Y": 90,
|
||||
"Width": 150,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_JN2J",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "motorTempL",
|
||||
"X": 14,
|
||||
"Y": 115,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "motorTempR",
|
||||
"X": 77,
|
||||
"Y": 115,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "motorTempDiv",
|
||||
"X": 74,
|
||||
"Y": 115,
|
||||
"Width": 3,
|
||||
"Height": 60,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"EndY": 320.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Round"
|
||||
},
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "invTempDiv",
|
||||
"X": 74,
|
||||
"Y": 25,
|
||||
"Width": 3,
|
||||
"Height": 60,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"EndY": 320.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Round"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "invTempR",
|
||||
"X": 77,
|
||||
"Y": 25,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "invTempL",
|
||||
"X": 14,
|
||||
"Y": 25,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "invTempLabel",
|
||||
"Width": 150,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_ZP7N",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Type": "ScrollWheel",
|
||||
"Name": "fieldTypeSelection",
|
||||
"X": 15,
|
||||
"Y": 95,
|
||||
"Type": "Container",
|
||||
"Name": "brakeTemps",
|
||||
"X": 165,
|
||||
"Y": 130,
|
||||
"Width": 150,
|
||||
"Height": 225,
|
||||
"Visible": false,
|
||||
"SelectedItemOffset": 94,
|
||||
"IsCircular": true,
|
||||
"ItemTemplateName": "DriverViewFieldSelection",
|
||||
"NumberofItems": 1,
|
||||
"Easing": "Linear",
|
||||
"EasingOption": "Out",
|
||||
"SwipeAcceleration": 1.0,
|
||||
"DragAcceleration": 1.0
|
||||
"Height": 150,
|
||||
"Components": [
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "btDivVert",
|
||||
"X": 74,
|
||||
"Y": 25,
|
||||
"Width": 3,
|
||||
"Height": 123,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"EndY": 320.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Round"
|
||||
},
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "btDivHoriz",
|
||||
"X": 14,
|
||||
"Y": 85,
|
||||
"Width": 123,
|
||||
"Height": 3,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"EndX": 480.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Round"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "brakeTempRR",
|
||||
"X": 77,
|
||||
"Y": 88,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "brakeTempFR",
|
||||
"X": 77,
|
||||
"Y": 25,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "brakeTempRL",
|
||||
"X": 14,
|
||||
"Y": 88,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "brakeTempFL",
|
||||
"X": 14,
|
||||
"Y": 25,
|
||||
"Width": 60,
|
||||
"Height": 60,
|
||||
"CustomContainerDefinitionName": "Temperature"
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "brakeLabel",
|
||||
"Width": 150,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_H6UX",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Type": "BoxProgress",
|
||||
"Name": "progressBar",
|
||||
"Type": "Container",
|
||||
"Name": "dataFields",
|
||||
"X": 15,
|
||||
"Y": 280,
|
||||
"Y": 48,
|
||||
"Width": 450,
|
||||
"Height": 29,
|
||||
"Visible": false,
|
||||
"Color": {
|
||||
"Red": 99,
|
||||
"Green": 186
|
||||
},
|
||||
"Direction": "Right",
|
||||
"FileNameBackground": "precharge_bg.png",
|
||||
"IndicatorPositionWidth": 480,
|
||||
"IndicatorPositionHeight": 55,
|
||||
"ProgressRangeMax": 100
|
||||
"Height": 305,
|
||||
"Components": [
|
||||
{
|
||||
"Type": "ScrollWheel",
|
||||
"Name": "fieldTypeSelection",
|
||||
"Y": 80,
|
||||
"Width": 150,
|
||||
"Height": 225,
|
||||
"Visible": false,
|
||||
"SelectedItemOffset": 94,
|
||||
"IsCircular": true,
|
||||
"ItemTemplateName": "DriverViewFieldSelection",
|
||||
"NumberofItems": 1,
|
||||
"Easing": "Linear",
|
||||
"EasingOption": "Out",
|
||||
"SwipeAcceleration": 1.0,
|
||||
"DragAcceleration": 1.0
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "field3",
|
||||
"X": 300,
|
||||
"Width": 150,
|
||||
"Height": 80,
|
||||
"CustomContainerDefinitionName": "DriverViewField"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "field2",
|
||||
"X": 150,
|
||||
"Width": 150,
|
||||
"Height": 80,
|
||||
"CustomContainerDefinitionName": "DriverViewField"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "field1",
|
||||
"Width": 150,
|
||||
"Height": 80,
|
||||
"CustomContainerDefinitionName": "DriverViewField"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "prechargeLabel",
|
||||
"X": 105,
|
||||
"Y": 275,
|
||||
"Width": 269,
|
||||
"Height": 37,
|
||||
"Visible": false,
|
||||
"TextId": "__SingleUse_HMH2",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"AutoSize": true
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "r2dLabel",
|
||||
"X": 82,
|
||||
"Y": 275,
|
||||
"Width": 317,
|
||||
"Height": 37,
|
||||
"Visible": false,
|
||||
"TextId": "__SingleUse_NGUK",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "r2dProgressLabel",
|
||||
"X": 180,
|
||||
"Y": 275,
|
||||
"Width": 219,
|
||||
"Height": 37,
|
||||
"Visible": false,
|
||||
"TextId": "__SingleUse_J5UH",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"Wildcard1": {}
|
||||
"Type": "Container",
|
||||
"Name": "statusBar",
|
||||
"X": 15,
|
||||
"Y": 15,
|
||||
"Width": 450,
|
||||
"Height": 33,
|
||||
"Components": [
|
||||
{
|
||||
"Type": "ListLayout",
|
||||
"Name": "statusItems",
|
||||
"Width": 450,
|
||||
"Height": 33,
|
||||
"Direction": "East",
|
||||
"Components": [
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "statusTS_R2D",
|
||||
"Width": 75,
|
||||
"Height": 33,
|
||||
"CustomContainerDefinitionName": "DriverViewStatusItem"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "statusAMS",
|
||||
"X": 75,
|
||||
"Width": 75,
|
||||
"Height": 33,
|
||||
"CustomContainerDefinitionName": "DriverViewStatusItem"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "statusSDC",
|
||||
"X": 150,
|
||||
"Width": 75,
|
||||
"Height": 33,
|
||||
"CustomContainerDefinitionName": "DriverViewStatusItem"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "statusSCS",
|
||||
"X": 225,
|
||||
"Width": 75,
|
||||
"Height": 33,
|
||||
"CustomContainerDefinitionName": "DriverViewStatusItem"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "statusPDU",
|
||||
"X": 300,
|
||||
"Width": 75,
|
||||
"Height": 33,
|
||||
"CustomContainerDefinitionName": "DriverViewStatusItem"
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "statusINV",
|
||||
"X": 375,
|
||||
"Width": 75,
|
||||
"Height": 33,
|
||||
"CustomContainerDefinitionName": "DriverViewStatusItem"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Type": "BoxProgress",
|
||||
"Name": "progressBar",
|
||||
"Width": 450,
|
||||
"Height": 33,
|
||||
"Visible": false,
|
||||
"Color": {
|
||||
"Red": 99,
|
||||
"Green": 186
|
||||
},
|
||||
"Direction": "Right",
|
||||
"FileNameBackground": "prog_horiz_bg.png",
|
||||
"IndicatorPositionWidth": 480,
|
||||
"IndicatorPositionHeight": 55,
|
||||
"ProgressRangeMax": 100
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "prechargeLabel",
|
||||
"X": 90,
|
||||
"Y": -2,
|
||||
"Width": 269,
|
||||
"Height": 37,
|
||||
"Visible": false,
|
||||
"TextId": "__SingleUse_HMH2",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"AutoSize": true
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "r2dLabel",
|
||||
"X": 67,
|
||||
"Y": -2,
|
||||
"Width": 317,
|
||||
"Height": 37,
|
||||
"Visible": false,
|
||||
"TextId": "__SingleUse_NGUK",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "r2dProgressLabel",
|
||||
"X": 165,
|
||||
"Y": -2,
|
||||
"Width": 219,
|
||||
"Height": 37,
|
||||
"Visible": false,
|
||||
"TextId": "__SingleUse_J5UH",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"Wildcard1": {}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Type": "CustomContainerInstance",
|
||||
"Name": "errorPopup",
|
||||
"X": 15,
|
||||
"Y": 122,
|
||||
"Y": 155,
|
||||
"Width": 450,
|
||||
"Height": 150,
|
||||
"Visible": false,
|
||||
|
@ -1297,9 +1381,45 @@
|
|||
}
|
||||
],
|
||||
"Interactions": []
|
||||
},
|
||||
{
|
||||
"Name": "DriverViewStatusItem",
|
||||
"X": 35,
|
||||
"Y": 115,
|
||||
"Width": 75,
|
||||
"Height": 33,
|
||||
"Components": [
|
||||
{
|
||||
"Type": "BoxWithBorder",
|
||||
"Name": "bg",
|
||||
"Width": 75,
|
||||
"Height": 33,
|
||||
"BorderColor": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"BorderSize": 1
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "text",
|
||||
"Y": 4,
|
||||
"Width": 75,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_F9I5",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
}
|
||||
],
|
||||
"Interactions": []
|
||||
}
|
||||
],
|
||||
"Name": "MyApplication",
|
||||
"Name": "SteeringWheel",
|
||||
"Resolution": {
|
||||
"Width": 320,
|
||||
"Height": 480
|
||||
|
|
Loading…
Reference in New Issue