Compare commits
10 Commits
c32e2b71cd
...
3f67d1571b
Author | SHA1 | Date |
---|---|---|
Julian Marmier | 3f67d1571b | |
Jasper Blanckenburg | 8905d173b3 | |
Jasper Blanckenburg | b8d8d70bfb | |
Jasper Blanckenburg | fd4ee51fd6 | |
Jasper Blanckenburg | 698c6a24c4 | |
Jasper Blanckenburg | 61656942f9 | |
Jasper Blanckenburg | f191946a90 | |
Jasper Blanckenburg | 58ce5b06c6 | |
Jasper Blanckenburg | a6c55d9869 | |
Jasper Blanckenburg | d5b65828aa |
|
@ -1,3 +1,3 @@
|
|||
[submodule "Core/Lib/FT_CAN_AL"]
|
||||
path = Core/Lib/can-halal
|
||||
url = ssh://git@git.fasttube.de:313/FaSTTUBe/FT_CAN_AL.git
|
||||
url = ssh://git@git.fasttube.de:313/FaSTTUBe/can-halal.git
|
||||
|
|
|
@ -48,7 +48,10 @@ extern FDCAN_HandleTypeDef hfdcan1;
|
|||
|
||||
#define GUI_UPDATE_VEHICLE_STATE (1 << 0)
|
||||
#define GUI_UPDATE_NEXT_SCREEN (1 << 1)
|
||||
#define GUI_UPDATE_ALL (GUI_UPDATE_VEHICLE_STATE | GUI_UPDATE_NEXT_SCREEN)
|
||||
#define GUI_UPDATE_PARAM_CONFIRMED (1 << 2)
|
||||
#define GUI_UPDATE_ALL \
|
||||
(GUI_UPDATE_VEHICLE_STATE | GUI_UPDATE_NEXT_SCREEN | \
|
||||
GUI_UPDATE_PARAM_CONFIRMED)
|
||||
/* USER CODE END EC */
|
||||
|
||||
/* Exported macro ------------------------------------------------------------*/
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
extern "C" {
|
||||
#endif
|
||||
|
||||
#include "params.h"
|
||||
#include "stw_defines.h"
|
||||
#include <stdint.h>
|
||||
|
||||
|
@ -45,15 +46,23 @@ typedef enum {
|
|||
INICHK_START = 0,
|
||||
INICHK_WD_CHECK = 1,
|
||||
INICHK_WD_OK = 2,
|
||||
INICHK_ASB_CHECK_1 = 3,
|
||||
INICHK_ASB_CHECK_2 = 4,
|
||||
INICHK_WAIT_TS = 5,
|
||||
INICHK_EBS_CHECK_A = 6,
|
||||
INICHK_EBS_CHECK_B = 7,
|
||||
INICHK_DONE = 8,
|
||||
INICHK_ERROR = 9
|
||||
INICHK_POS_CHK_1 = 3,
|
||||
INICHK_ASB_CHECK_A_1 = 4,
|
||||
INICHK_ASB_CHECK_A_2 = 5,
|
||||
INICHK_SWITCH_B = 6,
|
||||
INICHK_ASB_CHECK_B_1 = 7,
|
||||
INICHK_ASB_CHECK_B_2 = 8,
|
||||
INICHK_SWITCH_A = 9,
|
||||
INICHK_ASB_CHECK_AB_1 = 10,
|
||||
INICHK_ASB_CHECK_AB_2 = 11,
|
||||
INICHK_POS_CHK_2 = 12,
|
||||
INICHK_WAIT_TS = 13,
|
||||
INICHK_DONE = 14,
|
||||
INICHK_ERROR = 15
|
||||
} IniChkState;
|
||||
|
||||
const char *inichkstate_str(IniChkState state);
|
||||
|
||||
typedef enum {
|
||||
AMS_ERROR_NONE = 0x00,
|
||||
AMS_ERROR_SLAVE_TIMEOUT = 0x01,
|
||||
|
@ -101,6 +110,9 @@ typedef struct {
|
|||
Mission active_mission;
|
||||
|
||||
int sdc_closed;
|
||||
int pdu_sdc_active;
|
||||
int imd_ok;
|
||||
int sdcl_state[3];
|
||||
|
||||
R2DProgress r2d_progress;
|
||||
struct {
|
||||
|
@ -163,11 +175,14 @@ typedef struct {
|
|||
|
||||
uint32_t last_jetson_msg;
|
||||
uint32_t last_epsc_msg;
|
||||
int as_ok;
|
||||
float desired_angle;
|
||||
float measured_angle;
|
||||
float desired_speed;
|
||||
|
||||
ConePosition cone_pos[NUM_CONES];
|
||||
|
||||
ParamType last_param_confirmed;
|
||||
} VehicleState;
|
||||
|
||||
extern VehicleState vehicle_state;
|
||||
|
|
|
@ -36,8 +36,11 @@ void ui_thread_entry(ULONG _) {
|
|||
button_states[i] = state;
|
||||
}
|
||||
}
|
||||
if ((press_event == 1 || press_event == 2) && button_states[1] &&
|
||||
button_states[2]) {
|
||||
// FIXME: The right button doesn't work :(
|
||||
|
||||
// if ((press_event == 1 || press_event == 2) && button_states[1] &&
|
||||
// button_states[2]) {
|
||||
if (press_event == 1 && button_states[1]) {
|
||||
tx_event_flags_set(&gui_update_events, GUI_UPDATE_NEXT_SCREEN, TX_OR);
|
||||
}
|
||||
vehicle_broadcast_buttons(button_states);
|
||||
|
|
|
@ -15,6 +15,8 @@
|
|||
#define CAN_ID_AMS_SLAVE_PANIC 0x9
|
||||
#define CAN_ID_AMS_STATUS 0xA
|
||||
#define CAN_ID_AMS_ERROR 0xC
|
||||
#define CAN_ID_SDCL_TX 0x10
|
||||
#define CAN_ID_PDU_RESPONSE 0xC9
|
||||
#define CAN_ID_JETSON_TX 0xE1
|
||||
#define CAN_ID_ABX_DRIVER 0x101
|
||||
#define CAN_ID_ABX_TIMINGS 0x102
|
||||
|
@ -28,6 +30,7 @@
|
|||
#define CAN_ID_STW_PARAM_SET 0x402
|
||||
#define CAN_ID_AS_MISSION_FB 0x410
|
||||
#define CAN_ID_STW_STATUS 0x412
|
||||
#define CAN_ID_ABX_PARAM_CONFIRMED 0x413
|
||||
#define CAN_ID_STW_CONES_BASE 0x414
|
||||
#define CAN_ID_STW_CONES_MASK 0x7FC
|
||||
#define CAN_ID_SHUNT_CURRENT 0x521
|
||||
|
@ -35,6 +38,11 @@
|
|||
#define CAN_ID_SHUNT_VOLTAGE2 0x523
|
||||
#define CAN_AMS_STATUS_VOLTAGE_FACTOR 1e-4
|
||||
#define CAN_AMS_STATUS_TEMP_FACTOR 0.0625
|
||||
#define CAN_SDCL_STATE_1_MASK (1 << 1)
|
||||
#define CAN_SDCL_STATE_2_MASK (1 << 2)
|
||||
#define CAN_SDCL_STATE_3_MASK (1 << 3)
|
||||
#define CAN_PDU_RESPONSE_SDC_TX_MASK (1 << 4)
|
||||
#define CAN_JETSON_TX_AS_OK_MASK (1 << 1)
|
||||
#define CAN_JETSON_TX_ANGLE_FACTOR 0.00784314f
|
||||
#define CAN_JETSON_TX_SPEED_FACTOR (0.2 * 3.6)
|
||||
#define CAN_ABX_DRIVER_SPEED_FACTOR (0.2 * 3.6)
|
||||
|
@ -52,6 +60,8 @@ void vehicle_thread_entry(ULONG hfdcan_addr) {
|
|||
ftcan_add_filter(CAN_ID_AMS_SLAVE_PANIC, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_AMS_STATUS, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_AMS_ERROR, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_SDCL_TX, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_PDU_RESPONSE, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_JETSON_TX, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_ABX_DRIVER, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_ABX_TIMINGS, 0x7FF);
|
||||
|
@ -62,6 +72,7 @@ void vehicle_thread_entry(ULONG hfdcan_addr) {
|
|||
ftcan_add_filter(CAN_ID_EPSC_OUT, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_AS_MISSION_FB, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_STW_STATUS, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_ABX_PARAM_CONFIRMED, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_STW_CONES_BASE, CAN_ID_STW_CONES_MASK);
|
||||
ftcan_add_filter(CAN_ID_SHUNT_CURRENT, 0x7FF);
|
||||
ftcan_add_filter(CAN_ID_SHUNT_VOLTAGE1, 0x7FF);
|
||||
|
@ -117,16 +128,26 @@ void ftcan_msg_received_cb(uint16_t id, size_t datalen, const uint8_t *data) {
|
|||
ftcan_unmarshal_unsigned(&ptr, 2) * CAN_AMS_STATUS_VOLTAGE_FACTOR;
|
||||
vehicle_state.max_cell_temp =
|
||||
ftcan_unmarshal_signed(&ptr, 2) * CAN_AMS_STATUS_TEMP_FACTOR;
|
||||
vehicle_state.imd_ok = (data[6] >> 7);
|
||||
// TODO: Separate temperatures for left and right side of battery
|
||||
vehicle_state.temps.bat_l = vehicle_state.max_cell_temp;
|
||||
vehicle_state.temps.bat_r = vehicle_state.max_cell_temp;
|
||||
break;
|
||||
case CAN_ID_SDCL_TX:
|
||||
vehicle_state.sdcl_state[0] = data[0] & CAN_SDCL_STATE_1_MASK;
|
||||
vehicle_state.sdcl_state[1] = data[0] & CAN_SDCL_STATE_2_MASK;
|
||||
vehicle_state.sdcl_state[2] = data[0] & CAN_SDCL_STATE_3_MASK;
|
||||
break;
|
||||
case CAN_ID_PDU_RESPONSE:
|
||||
vehicle_state.pdu_sdc_active = data[0] & CAN_PDU_RESPONSE_SDC_TX_MASK;
|
||||
break;
|
||||
case CAN_ID_AMS_ERROR:
|
||||
vehicle_state.last_ams_error.kind = data[0];
|
||||
vehicle_state.last_ams_error.arg = data[1];
|
||||
break;
|
||||
case CAN_ID_JETSON_TX:
|
||||
vehicle_state.last_jetson_msg = HAL_GetTick();
|
||||
vehicle_state.as_ok = data[0] & CAN_JETSON_TX_AS_OK_MASK;
|
||||
vehicle_state.desired_speed =
|
||||
((int8_t)data[1]) * CAN_JETSON_TX_SPEED_FACTOR;
|
||||
vehicle_state.desired_angle =
|
||||
|
@ -205,6 +226,10 @@ void ftcan_msg_received_cb(uint16_t id, size_t datalen, const uint8_t *data) {
|
|||
vehicle_state.errors.err_invl = (data[5] >> 3) & 1;
|
||||
vehicle_state.errors.err_invr = (data[5] >> 4) & 1;
|
||||
break;
|
||||
case CAN_ID_ABX_PARAM_CONFIRMED:
|
||||
vehicle_state.last_param_confirmed = data[0];
|
||||
tx_event_flags_set(&gui_update_events, GUI_UPDATE_PARAM_CONFIRMED, TX_OR);
|
||||
break;
|
||||
case CAN_ID_SHUNT_CURRENT: {
|
||||
// The first two bytes of shunt result messages are metadata
|
||||
const uint8_t *result_ptr = &data[2];
|
||||
|
|
|
@ -1,3 +1,41 @@
|
|||
#include "vehicle_state.h"
|
||||
|
||||
VehicleState vehicle_state = {0};
|
||||
VehicleState vehicle_state;
|
||||
|
||||
const char *inichkstate_str(IniChkState state) {
|
||||
switch (vehicle_state.ini_chk_state) {
|
||||
case INICHK_START:
|
||||
return "START";
|
||||
case INICHK_WD_CHECK:
|
||||
return "WD CHK";
|
||||
case INICHK_WD_OK:
|
||||
return "WD OK";
|
||||
case INICHK_POS_CHK_1:
|
||||
return "POS CHK 1";
|
||||
case INICHK_ASB_CHECK_A_1:
|
||||
return "ASB CHK A1";
|
||||
case INICHK_ASB_CHECK_A_2:
|
||||
return "ASB CHK A2";
|
||||
case INICHK_SWITCH_B:
|
||||
return "SWITCH B";
|
||||
case INICHK_ASB_CHECK_B_1:
|
||||
return "ASB CHK B1";
|
||||
case INICHK_ASB_CHECK_B_2:
|
||||
return "ASB CHK B2";
|
||||
case INICHK_SWITCH_A:
|
||||
return "SWITCH A";
|
||||
case INICHK_ASB_CHECK_AB_1:
|
||||
return "ASB CHK AB1";
|
||||
case INICHK_ASB_CHECK_AB_2:
|
||||
return "ASB CHK AB2";
|
||||
case INICHK_POS_CHK_2:
|
||||
return "POS CHK 2";
|
||||
case INICHK_WAIT_TS:
|
||||
return "WAIT TS";
|
||||
case INICHK_DONE:
|
||||
return "DONE";
|
||||
case INICHK_ERROR:
|
||||
return "ERROR";
|
||||
}
|
||||
return "UNKNOWN";
|
||||
}
|
||||
|
|
|
@ -171,6 +171,33 @@
|
|||
</Text>
|
||||
</TextGroup>
|
||||
<TextGroup Id="Unsorted">
|
||||
<Text Id="__SingleUse_C17G" Alignment="Left" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">AS <value></Translation>
|
||||
</Text>
|
||||
<Text Id="__SingleUse_XFW7" Alignment="Left" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB"> AMS</Translation>
|
||||
</Text>
|
||||
<Text Id="__SingleUse_N50J" Alignment="Left" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB"> IMD</Translation>
|
||||
</Text>
|
||||
<Text Id="__SingleUse_V38H" Alignment="Left" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">ACC</Translation>
|
||||
</Text>
|
||||
<Text Id="__SingleUse_XC1X" Alignment="Left" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">TSMS</Translation>
|
||||
</Text>
|
||||
<Text Id="__SingleUse_KI1B" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">BSPD HVD</Translation>
|
||||
</Text>
|
||||
<Text Id="__SingleUse_QNHI" Alignment="Right" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">SDB RES SDCL</Translation>
|
||||
</Text>
|
||||
<Text Id="__SingleUse_43KA" Alignment="Center" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB">DASH BOTS INERTIA</Translation>
|
||||
</Text>
|
||||
<Text Id="__SingleUse_YRU7" Alignment="Left" TypographyId="Chinat_Small">
|
||||
<Translation Language="GB"> PDU</Translation>
|
||||
</Text>
|
||||
<Text Id="__SingleUse_E6D7" Alignment="Left" TypographyId="Chinat_Large">
|
||||
<Translation Language="GB">INIT</Translation>
|
||||
</Text>
|
||||
|
|
|
@ -3,6 +3,6 @@
|
|||
touchgfx_path := ../Middlewares/ST/touchgfx
|
||||
|
||||
# Location of the TouchGFX Environment
|
||||
touchgfx_env := ../../../../../TouchGFX/4.22.0/env
|
||||
touchgfx_env := C:/TouchGFX/4.22.0/env
|
||||
# Optional additional compiler flags
|
||||
user_cflags := -DUSE_BPP=16 -std=gnu++1z -Wno-cast-qual -Wno-missing-declarations -Wno-format-truncation -Wno-unused-variable
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
10
|
||||
32
|
||||
37
|
||||
46
|
||||
|
|
|
@ -67,6 +67,7 @@ protected:
|
|||
touchgfx::Shape<3> ft;
|
||||
touchgfx::PainterRGB565 ftPainter;
|
||||
touchgfx::Container init;
|
||||
touchgfx::TextAreaWithOneWildcard asOK;
|
||||
touchgfx::TextArea textArea8;
|
||||
touchgfx::TextArea textArea7;
|
||||
touchgfx::TextAreaWithOneWildcard pressRear;
|
||||
|
|
|
@ -35,6 +35,9 @@ public:
|
|||
// VehicleConfig
|
||||
void gotoVehicleConfigScreenNoTransition();
|
||||
|
||||
// SDC
|
||||
void gotoSDCScreenNoTransition();
|
||||
|
||||
protected:
|
||||
touchgfx::Callback<FrontendApplicationBase> transitionCallback;
|
||||
FrontendHeap& frontendHeap;
|
||||
|
@ -54,6 +57,9 @@ protected:
|
|||
|
||||
// VehicleConfig
|
||||
void gotoVehicleConfigScreenNoTransitionImpl();
|
||||
|
||||
// SDC
|
||||
void gotoSDCScreenNoTransitionImpl();
|
||||
};
|
||||
|
||||
#endif // FRONTENDAPPLICATIONBASE_HPP
|
||||
|
|
|
@ -22,6 +22,8 @@
|
|||
#include <gui/debugview_screen/DebugViewPresenter.hpp>
|
||||
#include <gui/vehicleconfig_screen/VehicleConfigView.hpp>
|
||||
#include <gui/vehicleconfig_screen/VehicleConfigPresenter.hpp>
|
||||
#include <gui/sdc_screen/SDCView.hpp>
|
||||
#include <gui/sdc_screen/SDCPresenter.hpp>
|
||||
|
||||
|
||||
/**
|
||||
|
@ -49,7 +51,8 @@ public:
|
|||
touchgfx::meta::TypeList< DriverViewView,
|
||||
touchgfx::meta::TypeList< DebugViewView,
|
||||
touchgfx::meta::TypeList< VehicleConfigView,
|
||||
touchgfx::meta::Nil > > > >
|
||||
touchgfx::meta::TypeList< SDCView,
|
||||
touchgfx::meta::Nil > > > > >
|
||||
> GeneratedViewTypes;
|
||||
|
||||
/**
|
||||
|
@ -66,7 +69,8 @@ public:
|
|||
touchgfx::meta::TypeList< DriverViewPresenter,
|
||||
touchgfx::meta::TypeList< DebugViewPresenter,
|
||||
touchgfx::meta::TypeList< VehicleConfigPresenter,
|
||||
touchgfx::meta::Nil > > > >
|
||||
touchgfx::meta::TypeList< SDCPresenter,
|
||||
touchgfx::meta::Nil > > > > >
|
||||
> GeneratedPresenterTypes;
|
||||
|
||||
/**
|
||||
|
|
|
@ -0,0 +1,56 @@
|
|||
/*********************************************************************************/
|
||||
/********** THIS FILE IS GENERATED BY TOUCHGFX DESIGNER, DO NOT MODIFY ***********/
|
||||
/*********************************************************************************/
|
||||
#ifndef SDCVIEWBASE_HPP
|
||||
#define SDCVIEWBASE_HPP
|
||||
|
||||
#include <gui/common/FrontendApplication.hpp>
|
||||
#include <mvp/View.hpp>
|
||||
#include <gui/sdc_screen/SDCPresenter.hpp>
|
||||
#include <touchgfx/widgets/Box.hpp>
|
||||
#include <touchgfx/widgets/TextArea.hpp>
|
||||
#include <touchgfx/widgets/canvas/Line.hpp>
|
||||
#include <touchgfx/widgets/canvas/PainterRGB565.hpp>
|
||||
|
||||
class SDCViewBase : public touchgfx::View<SDCPresenter>
|
||||
{
|
||||
public:
|
||||
SDCViewBase();
|
||||
virtual ~SDCViewBase();
|
||||
virtual void setupScreen();
|
||||
|
||||
protected:
|
||||
FrontendApplication& application() {
|
||||
return *static_cast<FrontendApplication*>(touchgfx::Application::getInstance());
|
||||
}
|
||||
|
||||
/*
|
||||
* Member Declarations
|
||||
*/
|
||||
touchgfx::Box __background;
|
||||
touchgfx::TextArea pdu;
|
||||
touchgfx::TextArea inertia;
|
||||
touchgfx::TextArea sdcl;
|
||||
touchgfx::TextArea hvb;
|
||||
touchgfx::TextArea tsms;
|
||||
touchgfx::TextArea acc;
|
||||
touchgfx::TextArea imd;
|
||||
touchgfx::TextArea ams;
|
||||
touchgfx::Line line1;
|
||||
touchgfx::PainterRGB565 line1Painter;
|
||||
touchgfx::Line line2;
|
||||
touchgfx::PainterRGB565 line2Painter;
|
||||
touchgfx::Line line3;
|
||||
touchgfx::PainterRGB565 line3Painter;
|
||||
|
||||
private:
|
||||
|
||||
/*
|
||||
* Canvas Buffer Size
|
||||
*/
|
||||
static const uint32_t CANVAS_BUFFER_SIZE = 7200;
|
||||
uint8_t canvasBuffer[CANVAS_BUFFER_SIZE];
|
||||
|
||||
};
|
||||
|
||||
#endif // SDCVIEWBASE_HPP
|
|
@ -21,7 +21,7 @@ AMIViewBase::AMIViewBase()
|
|||
add(logo);
|
||||
|
||||
currentMission.setPosition(0, 15, 480, 49);
|
||||
currentMission.setColor(touchgfx::Color::getColorFromRGB(197, 14, 31));
|
||||
currentMission.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
currentMission.setLinespacing(0);
|
||||
currentMission.setTypedText(touchgfx::TypedText(T_INVALID_HUGE));
|
||||
add(currentMission);
|
||||
|
@ -202,6 +202,12 @@ AMIViewBase::AMIViewBase()
|
|||
add(driving);
|
||||
|
||||
init.setPosition(0, 0, 480, 320);
|
||||
asOK.setPosition(68, 279, 169, 24);
|
||||
asOK.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
asOK.setLinespacing(0);
|
||||
asOK.setTypedText(touchgfx::TypedText(T___SINGLEUSE_C17G));
|
||||
init.add(asOK);
|
||||
|
||||
textArea8.setXY(68, 247);
|
||||
textArea8.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
textArea8.setLinespacing(0);
|
||||
|
|
|
@ -19,6 +19,8 @@
|
|||
#include <gui/debugview_screen/DebugViewPresenter.hpp>
|
||||
#include <gui/vehicleconfig_screen/VehicleConfigView.hpp>
|
||||
#include <gui/vehicleconfig_screen/VehicleConfigPresenter.hpp>
|
||||
#include <gui/sdc_screen/SDCView.hpp>
|
||||
#include <gui/sdc_screen/SDCPresenter.hpp>
|
||||
|
||||
using namespace touchgfx;
|
||||
|
||||
|
@ -102,3 +104,16 @@ void FrontendApplicationBase::gotoVehicleConfigScreenNoTransitionImpl()
|
|||
{
|
||||
touchgfx::makeTransition<VehicleConfigView, VehicleConfigPresenter, touchgfx::NoTransition, Model >(¤tScreen, ¤tPresenter, frontendHeap, ¤tTransition, &model);
|
||||
}
|
||||
|
||||
// SDC
|
||||
|
||||
void FrontendApplicationBase::gotoSDCScreenNoTransition()
|
||||
{
|
||||
transitionCallback = touchgfx::Callback<FrontendApplicationBase>(this, &FrontendApplicationBase::gotoSDCScreenNoTransitionImpl);
|
||||
pendingScreenTransitionCallback = &transitionCallback;
|
||||
}
|
||||
|
||||
void FrontendApplicationBase::gotoSDCScreenNoTransitionImpl()
|
||||
{
|
||||
touchgfx::makeTransition<SDCView, SDCPresenter, touchgfx::NoTransition, Model >(¤tScreen, ¤tPresenter, frontendHeap, ¤tTransition, &model);
|
||||
}
|
||||
|
|
|
@ -135,4 +135,13 @@ void MissionSelectViewBase::handleKeyEvent(uint8_t key)
|
|||
application().gotoVehicleConfigScreenNoTransition();
|
||||
|
||||
}
|
||||
|
||||
if(250 == key)
|
||||
{
|
||||
//DummyChangeSDCView
|
||||
//When hardware button 250 clicked change screen to SDC
|
||||
//Go to SDC with no screen transition
|
||||
application().gotoSDCScreenNoTransition();
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,101 @@
|
|||
/*********************************************************************************/
|
||||
/********** THIS FILE IS GENERATED BY TOUCHGFX DESIGNER, DO NOT MODIFY ***********/
|
||||
/*********************************************************************************/
|
||||
#include <gui_generated/sdc_screen/SDCViewBase.hpp>
|
||||
#include <touchgfx/canvas_widget_renderer/CanvasWidgetRenderer.hpp>
|
||||
#include <touchgfx/Color.hpp>
|
||||
#include <texts/TextKeysAndLanguages.hpp>
|
||||
|
||||
SDCViewBase::SDCViewBase()
|
||||
{
|
||||
touchgfx::CanvasWidgetRenderer::setupBuffer(canvasBuffer, CANVAS_BUFFER_SIZE);
|
||||
|
||||
__background.setPosition(0, 0, 480, 320);
|
||||
__background.setColor(touchgfx::Color::getColorFromRGB(0, 0, 0));
|
||||
add(__background);
|
||||
|
||||
pdu.setXY(15, 40);
|
||||
pdu.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
pdu.setLinespacing(0);
|
||||
pdu.setTypedText(touchgfx::TypedText(T___SINGLEUSE_YRU7));
|
||||
add(pdu);
|
||||
|
||||
inertia.setXY(128, 40);
|
||||
inertia.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
inertia.setLinespacing(0);
|
||||
inertia.setTypedText(touchgfx::TypedText(T___SINGLEUSE_43KA));
|
||||
add(inertia);
|
||||
|
||||
sdcl.setPosition(363, 217, 102, 72);
|
||||
sdcl.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
sdcl.setLinespacing(0);
|
||||
sdcl.setTypedText(touchgfx::TypedText(T___SINGLEUSE_QNHI));
|
||||
add(sdcl);
|
||||
|
||||
hvb.setXY(240, 241);
|
||||
hvb.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
hvb.setLinespacing(0);
|
||||
hvb.setTypedText(touchgfx::TypedText(T___SINGLEUSE_KI1B));
|
||||
add(hvb);
|
||||
|
||||
tsms.setXY(120, 265);
|
||||
tsms.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
tsms.setLinespacing(0);
|
||||
tsms.setTypedText(touchgfx::TypedText(T___SINGLEUSE_XC1X));
|
||||
add(tsms);
|
||||
|
||||
acc.setXY(15, 265);
|
||||
acc.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
acc.setLinespacing(0);
|
||||
acc.setTypedText(touchgfx::TypedText(T___SINGLEUSE_V38H));
|
||||
add(acc);
|
||||
|
||||
imd.setXY(291, 40);
|
||||
imd.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
imd.setLinespacing(0);
|
||||
imd.setTypedText(touchgfx::TypedText(T___SINGLEUSE_N50J));
|
||||
add(imd);
|
||||
|
||||
ams.setXY(404, 40);
|
||||
ams.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
ams.setLinespacing(0);
|
||||
ams.setTypedText(touchgfx::TypedText(T___SINGLEUSE_XFW7));
|
||||
add(ams);
|
||||
|
||||
line1.setPosition(15, 122, 450, 10);
|
||||
line1Painter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
line1.setPainter(line1Painter);
|
||||
line1.setStart(5, 5);
|
||||
line1.setEnd(450, 5);
|
||||
line1.setLineWidth(10);
|
||||
line1.setLineEndingStyle(touchgfx::Line::SQUARE_CAP_ENDING);
|
||||
add(line1);
|
||||
|
||||
line2.setPosition(15, 193, 450, 10);
|
||||
line2Painter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
line2.setPainter(line2Painter);
|
||||
line2.setStart(10, 5);
|
||||
line2.setEnd(450, 5);
|
||||
line2.setLineWidth(10);
|
||||
line2.setLineEndingStyle(touchgfx::Line::ROUND_CAP_ENDING);
|
||||
add(line2);
|
||||
|
||||
line3.setPosition(455, 122, 10, 81);
|
||||
line3Painter.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
|
||||
line3.setPainter(line3Painter);
|
||||
line3.setStart(5, 5);
|
||||
line3.setEnd(5, 100);
|
||||
line3.setLineWidth(10);
|
||||
line3.setLineEndingStyle(touchgfx::Line::SQUARE_CAP_ENDING);
|
||||
add(line3);
|
||||
}
|
||||
|
||||
SDCViewBase::~SDCViewBase()
|
||||
{
|
||||
touchgfx::CanvasWidgetRenderer::resetBuffer();
|
||||
}
|
||||
|
||||
void SDCViewBase::setupScreen()
|
||||
{
|
||||
|
||||
}
|
|
@ -1 +1 @@
|
|||
{"remap":"yes","language":"GB","language_index":0,"indices":[["428","T_LV"],["412","T_PDU"],["420","T_SCS"],["424","T_SDC"],["416","T_R2D"],["409","T_TS"],["404","T_INV"],["400","T_AMS"],["174","T_ERROR_AMS"],["216","T_DEBUGVIEWFIELD_TITLE"],["216","T_DRIVERVIEWFIELD_TITLE"],["216","T_NUMBERSMALLWILDCARD"],["355","T_FIELD_BBAL"],["312","T_FIELD_TSVOLTVEH"],["305","T_FIELD_TSVOLTBAT"],["331","T_FIELD_LVSOC"],["349","T_FIELD_TSSOC"],["370","T_FIELD_MAXCELLTEMP"],["375","T_FIELD_TIREFL"],["380","T_FIELD_TIREFR"],["385","T_FIELD_TIRERL"],["390","T_FIELD_TIRERR"],["365","T_FIELD_LAPCOUNT"],["234","T_FIELD_INICHKSTATE"],["325","T_FIELD_ERR"],["424","T_FIELD_SDC"],["250","T_FIELD_INVRREADY"],["242","T_FIELD_INVLREADY"],["274","T_FIELD_R2DPROGRESS"],["258","T_FIELD_ACTIVEMISSION"],["218","T_FIELD_ASSTATE"],["290","T_FIELD_TSSTATE"],["216","T_NUMBERWILDCARD"],["216","T_DEFAULTWILDCARD_CENTERED"],["216","T_DEFAULTWILDCARD_RIGHTALIGNED"],["408","T_FIELD_TSCURRENT"],["395","T_FIELD_MINCELLVOLT"],["343","T_FIELD_SPEED"],["141","T_INSPECTION_HUGE"],["207","T_EBS_HUGE"],["163","T_TRACKDRIVE_HUGE"],["184","T_AUTOX_HUGE"],["282","T_SKIDPAD_HUGE"],["128","T_ACCEL_HUGE"],["17","T_INVALID_HUGE"],["98","T_MANUAL"],["141","T_INSPECTION"],["207","T_EBS"],["163","T_TRACKDRIVE"],["184","T_AUTOX"],["282","T_SKIDPAD"],["128","T_ACCEL"],["360","T___SINGLEUSE_E6D7"],["216","T___SINGLEUSE_ZEKA"],["113","T___SINGLEUSE_0L75"],["82","T___SINGLEUSE_GA13"],["216","T___SINGLEUSE_THUG"],["216","T___SINGLEUSE_CO7A"],["216","T___SINGLEUSE_A0LF"],["216","T___SINGLEUSE_166C"],["66","T___SINGLEUSE_OOU3"],["50","T___SINGLEUSE_2FPP"],["216","T___SINGLEUSE_2S21"],["216","T___SINGLEUSE_OQ6P"],["266","T___SINGLEUSE_590R"],["226","T___SINGLEUSE_Z78U"],["216","T___SINGLEUSE_LLOZ"],["216","T___SINGLEUSE_232C"],["337","T___SINGLEUSE_JFR7"],["319","T___SINGLEUSE_3MDX"],["16","T___SINGLEUSE_F9I5"],["216","T___SINGLEUSE_9L8R"],["16","T___SINGLEUSE_1NKF"],["216","T___SINGLEUSE_J5UH"],["416","T___SINGLEUSE_NGUK"],["216","T___SINGLEUSE_4E84"],["216","T___SINGLEUSE_YTAB"],["152","T___SINGLEUSE_RWCE"],["194","T___SINGLEUSE_HMH2"],["204","T___SINGLEUSE_PHFD"],["298","T___SINGLEUSE_H6UX"],["216","T___SINGLEUSE_20H3"],["34","T___SINGLEUSE_M5X7"],["0","T___SINGLEUSE_6GPV"]]}
|
||||
{"remap":"yes","language":"GB","language_index":0,"indices":[["490","T_LV"],["376","T_PDU"],["482","T_SCS"],["486","T_SDC"],["478","T_R2D"],["475","T_TS"],["470","T_INV"],["364","T_AMS"],["210","T_ERROR_AMS"],["175","T_DEBUGVIEWFIELD_TITLE"],["175","T_DRIVERVIEWFIELD_TITLE"],["175","T_NUMBERSMALLWILDCARD"],["416","T_FIELD_BBAL"],["355","T_FIELD_TSVOLTVEH"],["348","T_FIELD_TSVOLTBAT"],["392","T_FIELD_LVSOC"],["410","T_FIELD_TSSOC"],["431","T_FIELD_MAXCELLTEMP"],["441","T_FIELD_TIREFL"],["446","T_FIELD_TIREFR"],["451","T_FIELD_TIRERL"],["456","T_FIELD_TIRERR"],["426","T_FIELD_LAPCOUNT"],["277","T_FIELD_INICHKSTATE"],["386","T_FIELD_ERR"],["486","T_FIELD_SDC"],["293","T_FIELD_INVRREADY"],["285","T_FIELD_INVLREADY"],["317","T_FIELD_R2DPROGRESS"],["301","T_FIELD_ACTIVEMISSION"],["261","T_FIELD_ASSTATE"],["333","T_FIELD_TSSTATE"],["175","T_NUMBERWILDCARD"],["175","T_DEFAULTWILDCARD_CENTERED"],["175","T_DEFAULTWILDCARD_RIGHTALIGNED"],["474","T_FIELD_TSCURRENT"],["461","T_FIELD_MINCELLVOLT"],["404","T_FIELD_SPEED"],["177","T_INSPECTION_HUGE"],["252","T_EBS_HUGE"],["199","T_TRACKDRIVE_HUGE"],["220","T_AUTOX_HUGE"],["325","T_SKIDPAD_HUGE"],["146","T_ACCEL_HUGE"],["35","T_INVALID_HUGE"],["116","T_MANUAL"],["177","T_INSPECTION"],["252","T_EBS"],["199","T_TRACKDRIVE"],["220","T_AUTOX"],["325","T_SKIDPAD"],["146","T_ACCEL"],["172","T___SINGLEUSE_C17G"],["362","T___SINGLEUSE_XFW7"],["368","T___SINGLEUSE_N50J"],["466","T___SINGLEUSE_V38H"],["436","T___SINGLEUSE_XC1X"],["243","T___SINGLEUSE_KI1B"],["159","T___SINGLEUSE_QNHI"],["0","T___SINGLEUSE_43KA"],["374","T___SINGLEUSE_YRU7"],["421","T___SINGLEUSE_E6D7"],["175","T___SINGLEUSE_ZEKA"],["131","T___SINGLEUSE_0L75"],["100","T___SINGLEUSE_GA13"],["175","T___SINGLEUSE_THUG"],["175","T___SINGLEUSE_CO7A"],["175","T___SINGLEUSE_A0LF"],["175","T___SINGLEUSE_166C"],["84","T___SINGLEUSE_OOU3"],["68","T___SINGLEUSE_2FPP"],["175","T___SINGLEUSE_2S21"],["175","T___SINGLEUSE_OQ6P"],["309","T___SINGLEUSE_590R"],["269","T___SINGLEUSE_Z78U"],["175","T___SINGLEUSE_LLOZ"],["175","T___SINGLEUSE_232C"],["398","T___SINGLEUSE_JFR7"],["380","T___SINGLEUSE_3MDX"],["17","T___SINGLEUSE_F9I5"],["175","T___SINGLEUSE_9L8R"],["17","T___SINGLEUSE_1NKF"],["175","T___SINGLEUSE_J5UH"],["478","T___SINGLEUSE_NGUK"],["175","T___SINGLEUSE_4E84"],["175","T___SINGLEUSE_YTAB"],["188","T___SINGLEUSE_RWCE"],["230","T___SINGLEUSE_HMH2"],["240","T___SINGLEUSE_PHFD"],["341","T___SINGLEUSE_H6UX"],["175","T___SINGLEUSE_20H3"],["52","T___SINGLEUSE_M5X7"],["18","T___SINGLEUSE_6GPV"]]}
|
|
@ -1 +1 @@
|
|||
{"languages":["GB"],"textids":["T_LV","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_E6D7","T___SINGLEUSE_ZEKA","T___SINGLEUSE_0L75","T___SINGLEUSE_GA13","T___SINGLEUSE_THUG","T___SINGLEUSE_CO7A","T___SINGLEUSE_A0LF","T___SINGLEUSE_166C","T___SINGLEUSE_OOU3","T___SINGLEUSE_2FPP","T___SINGLEUSE_2S21","T___SINGLEUSE_OQ6P","T___SINGLEUSE_590R","T___SINGLEUSE_Z78U","T___SINGLEUSE_LLOZ","T___SINGLEUSE_232C","T___SINGLEUSE_JFR7","T___SINGLEUSE_3MDX","T___SINGLEUSE_F9I5","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_PHFD","T___SINGLEUSE_H6UX","T___SINGLEUSE_20H3","T___SINGLEUSE_M5X7","T___SINGLEUSE_6GPV"]}
|
||||
{"languages":["GB"],"textids":["T_LV","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_C17G","T___SINGLEUSE_XFW7","T___SINGLEUSE_N50J","T___SINGLEUSE_V38H","T___SINGLEUSE_XC1X","T___SINGLEUSE_KI1B","T___SINGLEUSE_QNHI","T___SINGLEUSE_43KA","T___SINGLEUSE_YRU7","T___SINGLEUSE_E6D7","T___SINGLEUSE_ZEKA","T___SINGLEUSE_0L75","T___SINGLEUSE_GA13","T___SINGLEUSE_THUG","T___SINGLEUSE_CO7A","T___SINGLEUSE_A0LF","T___SINGLEUSE_166C","T___SINGLEUSE_OOU3","T___SINGLEUSE_2FPP","T___SINGLEUSE_2S21","T___SINGLEUSE_OQ6P","T___SINGLEUSE_590R","T___SINGLEUSE_Z78U","T___SINGLEUSE_LLOZ","T___SINGLEUSE_232C","T___SINGLEUSE_JFR7","T___SINGLEUSE_3MDX","T___SINGLEUSE_F9I5","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_PHFD","T___SINGLEUSE_H6UX","T___SINGLEUSE_20H3","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,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,80,114,101,115,115,117,114,101,32,65,99,99,32,65,58,0,80,114,101,115,115,117,114,101,32,65,99,99,32,66,58,0,80,114,101,115,115,117,114,101,32,70,114,111,110,116,58,0,77,97,110,117,97,108,32,68,114,105,118,105,110,103,0,80,114,101,115,115,117,114,101,32,82,101,97,114,58,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,2,37,0,69,66,83,32,84,101,115,116,0,2,0,65,83,83,84,65,84,69,0,68,83,80,69,69,68,58,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,77,83,80,69,69,68,58,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,68,65,78,71,58,0,69,82,82,79,82,0,76,86,83,79,67,0,77,65,78,71,58,0,83,80,69,69,68,0,84,83,83,79,67,0,66,66,65,76,0,73,78,73,84,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]}
|
||||
{"remap":"yes","languages":["Gb"],"characters":[68,65,83,72,10,66,79,84,83,10,73,78,69,82,84,73,65,0,67,104,111,111,115,101,32,97,32,109,105,115,115,105,111,110,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,80,114,101,115,115,117,114,101,32,65,99,99,32,65,58,0,80,114,101,115,115,117,114,101,32,65,99,99,32,66,58,0,80,114,101,115,115,117,114,101,32,70,114,111,110,116,58,0,77,97,110,117,97,108,32,68,114,105,118,105,110,103,0,80,114,101,115,115,117,114,101,32,82,101,97,114,58,0,65,99,99,101,108,101,114,97,116,105,111,110,0,83,68,66,10,82,69,83,10,83,68,67,76,0,65,83,32,2,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,2,37,0,66,83,80,68,10,72,86,68,0,69,66,83,32,84,101,115,116,0,65,83,83,84,65,84,69,0,68,83,80,69,69,68,58,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,77,83,80,69,69,68,58,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,10,10,65,77,83,0,10,10,73,77,68,0,10,10,80,68,85,0,68,65,78,71,58,0,69,82,82,79,82,0,76,86,83,79,67,0,77,65,78,71,58,0,83,80,69,69,68,0,84,83,83,79,67,0,66,66,65,76,0,73,78,73,84,0,76,65,80,83,0,84,77,65,88,0,84,83,77,83,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,67,67,0,73,78,86,0,73,84,83,0,82,50,68,0,83,67,83,0,83,68,67,0,76,86,0]}
|
|
@ -1 +1 @@
|
|||
{"databases":{"GB":[[2,"CENTER","LTR"],[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"],[1,"LEFT","LTR"],[1,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","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"],[4,"CENTER","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"],[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"],[1,"LEFT","LTR"],[1,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","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"],[4,"CENTER","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,"getFont_lucon_TTF_20_4bpp":7},"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"],[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,"LEFT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"LEFT","LTR"],[1,"LEFT","LTR"],[1,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","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"],[4,"CENTER","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"],[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,"LEFT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[2,"CENTER","LTR"],[2,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"LEFT","LTR"],[1,"LEFT","LTR"],[1,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[7,"RIGHT","LTR"],[7,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","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"],[4,"CENTER","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,"getFont_lucon_TTF_20_4bpp":7},"generate_font_format":"0"}
|
|
@ -64,6 +64,15 @@ enum TEXTS
|
|||
T_AUTOX,
|
||||
T_SKIDPAD,
|
||||
T_ACCEL,
|
||||
T___SINGLEUSE_C17G,
|
||||
T___SINGLEUSE_XFW7,
|
||||
T___SINGLEUSE_N50J,
|
||||
T___SINGLEUSE_V38H,
|
||||
T___SINGLEUSE_XC1X,
|
||||
T___SINGLEUSE_KI1B,
|
||||
T___SINGLEUSE_QNHI,
|
||||
T___SINGLEUSE_43KA,
|
||||
T___SINGLEUSE_YRU7,
|
||||
T___SINGLEUSE_E6D7,
|
||||
T___SINGLEUSE_ZEKA,
|
||||
T___SINGLEUSE_0L75,
|
||||
|
|
|
@ -10,88 +10,97 @@ 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 = {
|
||||
428, // T_LV: "LV"
|
||||
412, // T_PDU: "PDU"
|
||||
420, // T_SCS: "SCS"
|
||||
424, // T_SDC: "SDC"
|
||||
416, // T_R2D: "R2D"
|
||||
409, // T_TS: "TS"
|
||||
404, // T_INV: "INV"
|
||||
400, // T_AMS: "AMS"
|
||||
174, // T_ERROR_AMS: "AMS ErrOr"
|
||||
216, // T_DEBUGVIEWFIELD_TITLE: "<>"
|
||||
216, // T_DRIVERVIEWFIELD_TITLE: "<>"
|
||||
216, // T_NUMBERSMALLWILDCARD: "<>"
|
||||
355, // T_FIELD_BBAL: "BBAL"
|
||||
312, // T_FIELD_TSVOLTVEH: "TSVVEH"
|
||||
305, // T_FIELD_TSVOLTBAT: "TSVBAT"
|
||||
331, // T_FIELD_LVSOC: "LVSOC"
|
||||
349, // T_FIELD_TSSOC: "TSSOC"
|
||||
370, // T_FIELD_MAXCELLTEMP: "TMAX"
|
||||
375, // T_FIELD_TIREFL: "TTFL"
|
||||
380, // T_FIELD_TIREFR: "TTFR"
|
||||
385, // T_FIELD_TIRERL: "TTRL"
|
||||
390, // T_FIELD_TIRERR: "TTRR"
|
||||
365, // T_FIELD_LAPCOUNT: "LAPS"
|
||||
234, // T_FIELD_INICHKSTATE: "ICSTATE"
|
||||
325, // T_FIELD_ERR: "ERROR"
|
||||
424, // T_FIELD_SDC: "SDC"
|
||||
250, // T_FIELD_INVRREADY: "INVRRDY"
|
||||
242, // T_FIELD_INVLREADY: "INVLRDY"
|
||||
274, // T_FIELD_R2DPROGRESS: "R2DPROG"
|
||||
258, // T_FIELD_ACTIVEMISSION: "MISSION"
|
||||
218, // T_FIELD_ASSTATE: "ASSTATE"
|
||||
290, // T_FIELD_TSSTATE: "TSSTATE"
|
||||
216, // T_NUMBERWILDCARD: "<>"
|
||||
216, // T_DEFAULTWILDCARD_CENTERED: "<>"
|
||||
216, // T_DEFAULTWILDCARD_RIGHTALIGNED: "<>"
|
||||
408, // T_FIELD_TSCURRENT: "ITS"
|
||||
395, // T_FIELD_MINCELLVOLT: "VMIN"
|
||||
343, // T_FIELD_SPEED: "SPEED"
|
||||
141, // T_INSPECTION_HUGE: "Inspection"
|
||||
207, // T_EBS_HUGE: "EBS Test"
|
||||
163, // T_TRACKDRIVE_HUGE: "Trackdrive"
|
||||
184, // T_AUTOX_HUGE: "Autocross"
|
||||
282, // T_SKIDPAD_HUGE: "Skidpad"
|
||||
128, // T_ACCEL_HUGE: "Acceleration"
|
||||
17, // T_INVALID_HUGE: "Invalid Mission!"
|
||||
98, // T_MANUAL: "Manual Driving"
|
||||
141, // T_INSPECTION: "Inspection"
|
||||
207, // T_EBS: "EBS Test"
|
||||
163, // T_TRACKDRIVE: "Trackdrive"
|
||||
184, // T_AUTOX: "Autocross"
|
||||
282, // T_SKIDPAD: "Skidpad"
|
||||
128, // T_ACCEL: "Acceleration"
|
||||
360, // T___SINGLEUSE_E6D7: "INIT"
|
||||
216, // T___SINGLEUSE_ZEKA: "<>"
|
||||
113, // T___SINGLEUSE_0L75: "Pressure Rear:"
|
||||
82, // T___SINGLEUSE_GA13: "Pressure Front:"
|
||||
216, // T___SINGLEUSE_THUG: "<>"
|
||||
216, // T___SINGLEUSE_CO7A: "<>"
|
||||
216, // T___SINGLEUSE_A0LF: "<>"
|
||||
216, // T___SINGLEUSE_166C: "<>"
|
||||
66, // T___SINGLEUSE_OOU3: "Pressure Acc B:"
|
||||
50, // T___SINGLEUSE_2FPP: "Pressure Acc A:"
|
||||
216, // T___SINGLEUSE_2S21: "<>"
|
||||
216, // T___SINGLEUSE_OQ6P: "<>"
|
||||
266, // T___SINGLEUSE_590R: "MSPEED:"
|
||||
226, // T___SINGLEUSE_Z78U: "DSPEED:"
|
||||
216, // T___SINGLEUSE_LLOZ: "<>"
|
||||
216, // T___SINGLEUSE_232C: "<>"
|
||||
337, // T___SINGLEUSE_JFR7: "MANG:"
|
||||
319, // T___SINGLEUSE_3MDX: "DANG:"
|
||||
16, // T___SINGLEUSE_F9I5: ""
|
||||
216, // T___SINGLEUSE_9L8R: "<>"
|
||||
16, // T___SINGLEUSE_1NKF: ""
|
||||
216, // T___SINGLEUSE_J5UH: "<>"
|
||||
416, // T___SINGLEUSE_NGUK: "R2D"
|
||||
216, // T___SINGLEUSE_4E84: "<>"
|
||||
216, // T___SINGLEUSE_YTAB: "<>"
|
||||
152, // T___SINGLEUSE_RWCE: "PARAMETERS"
|
||||
194, // T___SINGLEUSE_HMH2: "PRECHARGE"
|
||||
204, // T___SINGLEUSE_PHFD: "<>%"
|
||||
298, // T___SINGLEUSE_H6UX: "BRAKES"
|
||||
216, // T___SINGLEUSE_20H3: "<>"
|
||||
34, // T___SINGLEUSE_M5X7: "Invalid Mission"
|
||||
0 // T___SINGLEUSE_6GPV: "Choose a mission"
|
||||
490, // T_LV: "LV"
|
||||
376, // T_PDU: "PDU"
|
||||
482, // T_SCS: "SCS"
|
||||
486, // T_SDC: "SDC"
|
||||
478, // T_R2D: "R2D"
|
||||
475, // T_TS: "TS"
|
||||
470, // T_INV: "INV"
|
||||
364, // T_AMS: "AMS"
|
||||
210, // T_ERROR_AMS: "AMS ErrOr"
|
||||
175, // T_DEBUGVIEWFIELD_TITLE: "<>"
|
||||
175, // T_DRIVERVIEWFIELD_TITLE: "<>"
|
||||
175, // T_NUMBERSMALLWILDCARD: "<>"
|
||||
416, // T_FIELD_BBAL: "BBAL"
|
||||
355, // T_FIELD_TSVOLTVEH: "TSVVEH"
|
||||
348, // T_FIELD_TSVOLTBAT: "TSVBAT"
|
||||
392, // T_FIELD_LVSOC: "LVSOC"
|
||||
410, // T_FIELD_TSSOC: "TSSOC"
|
||||
431, // T_FIELD_MAXCELLTEMP: "TMAX"
|
||||
441, // T_FIELD_TIREFL: "TTFL"
|
||||
446, // T_FIELD_TIREFR: "TTFR"
|
||||
451, // T_FIELD_TIRERL: "TTRL"
|
||||
456, // T_FIELD_TIRERR: "TTRR"
|
||||
426, // T_FIELD_LAPCOUNT: "LAPS"
|
||||
277, // T_FIELD_INICHKSTATE: "ICSTATE"
|
||||
386, // T_FIELD_ERR: "ERROR"
|
||||
486, // T_FIELD_SDC: "SDC"
|
||||
293, // T_FIELD_INVRREADY: "INVRRDY"
|
||||
285, // T_FIELD_INVLREADY: "INVLRDY"
|
||||
317, // T_FIELD_R2DPROGRESS: "R2DPROG"
|
||||
301, // T_FIELD_ACTIVEMISSION: "MISSION"
|
||||
261, // T_FIELD_ASSTATE: "ASSTATE"
|
||||
333, // T_FIELD_TSSTATE: "TSSTATE"
|
||||
175, // T_NUMBERWILDCARD: "<>"
|
||||
175, // T_DEFAULTWILDCARD_CENTERED: "<>"
|
||||
175, // T_DEFAULTWILDCARD_RIGHTALIGNED: "<>"
|
||||
474, // T_FIELD_TSCURRENT: "ITS"
|
||||
461, // T_FIELD_MINCELLVOLT: "VMIN"
|
||||
404, // T_FIELD_SPEED: "SPEED"
|
||||
177, // T_INSPECTION_HUGE: "Inspection"
|
||||
252, // T_EBS_HUGE: "EBS Test"
|
||||
199, // T_TRACKDRIVE_HUGE: "Trackdrive"
|
||||
220, // T_AUTOX_HUGE: "Autocross"
|
||||
325, // T_SKIDPAD_HUGE: "Skidpad"
|
||||
146, // T_ACCEL_HUGE: "Acceleration"
|
||||
35, // T_INVALID_HUGE: "Invalid Mission!"
|
||||
116, // T_MANUAL: "Manual Driving"
|
||||
177, // T_INSPECTION: "Inspection"
|
||||
252, // T_EBS: "EBS Test"
|
||||
199, // T_TRACKDRIVE: "Trackdrive"
|
||||
220, // T_AUTOX: "Autocross"
|
||||
325, // T_SKIDPAD: "Skidpad"
|
||||
146, // T_ACCEL: "Acceleration"
|
||||
172, // T___SINGLEUSE_C17G: "AS <>"
|
||||
362, // T___SINGLEUSE_XFW7: "\n\nAMS"
|
||||
368, // T___SINGLEUSE_N50J: "\n\nIMD"
|
||||
466, // T___SINGLEUSE_V38H: "ACC"
|
||||
436, // T___SINGLEUSE_XC1X: "TSMS"
|
||||
243, // T___SINGLEUSE_KI1B: "BSPD\nHVD"
|
||||
159, // T___SINGLEUSE_QNHI: "SDB\nRES\nSDCL"
|
||||
0, // T___SINGLEUSE_43KA: "DASH\nBOTS\nINERTIA"
|
||||
374, // T___SINGLEUSE_YRU7: "\n\nPDU"
|
||||
421, // T___SINGLEUSE_E6D7: "INIT"
|
||||
175, // T___SINGLEUSE_ZEKA: "<>"
|
||||
131, // T___SINGLEUSE_0L75: "Pressure Rear:"
|
||||
100, // T___SINGLEUSE_GA13: "Pressure Front:"
|
||||
175, // T___SINGLEUSE_THUG: "<>"
|
||||
175, // T___SINGLEUSE_CO7A: "<>"
|
||||
175, // T___SINGLEUSE_A0LF: "<>"
|
||||
175, // T___SINGLEUSE_166C: "<>"
|
||||
84, // T___SINGLEUSE_OOU3: "Pressure Acc B:"
|
||||
68, // T___SINGLEUSE_2FPP: "Pressure Acc A:"
|
||||
175, // T___SINGLEUSE_2S21: "<>"
|
||||
175, // T___SINGLEUSE_OQ6P: "<>"
|
||||
309, // T___SINGLEUSE_590R: "MSPEED:"
|
||||
269, // T___SINGLEUSE_Z78U: "DSPEED:"
|
||||
175, // T___SINGLEUSE_LLOZ: "<>"
|
||||
175, // T___SINGLEUSE_232C: "<>"
|
||||
398, // T___SINGLEUSE_JFR7: "MANG:"
|
||||
380, // T___SINGLEUSE_3MDX: "DANG:"
|
||||
17, // T___SINGLEUSE_F9I5: ""
|
||||
175, // T___SINGLEUSE_9L8R: "<>"
|
||||
17, // T___SINGLEUSE_1NKF: ""
|
||||
175, // T___SINGLEUSE_J5UH: "<>"
|
||||
478, // T___SINGLEUSE_NGUK: "R2D"
|
||||
175, // T___SINGLEUSE_4E84: "<>"
|
||||
175, // T___SINGLEUSE_YTAB: "<>"
|
||||
188, // T___SINGLEUSE_RWCE: "PARAMETERS"
|
||||
230, // T___SINGLEUSE_HMH2: "PRECHARGE"
|
||||
240, // T___SINGLEUSE_PHFD: "<>%"
|
||||
341, // T___SINGLEUSE_H6UX: "BRAKES"
|
||||
175, // T___SINGLEUSE_20H3: "<>"
|
||||
52, // T___SINGLEUSE_M5X7: "Invalid Mission"
|
||||
18 // T___SINGLEUSE_6GPV: "Choose a mission"
|
||||
};
|
||||
|
|
|
@ -60,60 +60,66 @@ extern const touchgfx::TypedText::TypedTextData* const typedTextDatabaseArray[];
|
|||
|
||||
TEXT_LOCATION_FLASH_PRAGMA
|
||||
KEEP extern const touchgfx::Unicode::UnicodeChar texts_all_languages[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
|
||||
0x43, 0x68, 0x6f, 0x6f, 0x73, 0x65, 0x20, 0x61, 0x20, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x0, // @0 "Choose a mission"
|
||||
0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x21, 0x0, // @17 "Invalid Mission!"
|
||||
0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x0, // @34 "Invalid Mission"
|
||||
0x50, 0x72, 0x65, 0x73, 0x73, 0x75, 0x72, 0x65, 0x20, 0x41, 0x63, 0x63, 0x20, 0x41, 0x3a, 0x0, // @50 "Pressure Acc A:"
|
||||
0x50, 0x72, 0x65, 0x73, 0x73, 0x75, 0x72, 0x65, 0x20, 0x41, 0x63, 0x63, 0x20, 0x42, 0x3a, 0x0, // @66 "Pressure Acc B:"
|
||||
0x50, 0x72, 0x65, 0x73, 0x73, 0x75, 0x72, 0x65, 0x20, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x3a, 0x0, // @82 "Pressure Front:"
|
||||
0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x20, 0x44, 0x72, 0x69, 0x76, 0x69, 0x6e, 0x67, 0x0, // @98 "Manual Driving"
|
||||
0x50, 0x72, 0x65, 0x73, 0x73, 0x75, 0x72, 0x65, 0x20, 0x52, 0x65, 0x61, 0x72, 0x3a, 0x0, // @113 "Pressure Rear:"
|
||||
0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0, // @128 "Acceleration"
|
||||
0x49, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x0, // @141 "Inspection"
|
||||
0x50, 0x41, 0x52, 0x41, 0x4d, 0x45, 0x54, 0x45, 0x52, 0x53, 0x0, // @152 "PARAMETERS"
|
||||
0x54, 0x72, 0x61, 0x63, 0x6b, 0x64, 0x72, 0x69, 0x76, 0x65, 0x0, // @163 "Trackdrive"
|
||||
0x41, 0x4d, 0x53, 0x20, 0x45, 0x72, 0x72, 0x4f, 0x72, 0x0, // @174 "AMS ErrOr"
|
||||
0x41, 0x75, 0x74, 0x6f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x0, // @184 "Autocross"
|
||||
0x50, 0x52, 0x45, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45, 0x0, // @194 "PRECHARGE"
|
||||
0x2, 0x25, 0x0, // @204 "<>%"
|
||||
0x45, 0x42, 0x53, 0x20, 0x54, 0x65, 0x73, 0x74, 0x0, // @207 "EBS Test"
|
||||
0x2, 0x0, // @216 "<>"
|
||||
0x41, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x0, // @218 "ASSTATE"
|
||||
0x44, 0x53, 0x50, 0x45, 0x45, 0x44, 0x3a, 0x0, // @226 "DSPEED:"
|
||||
0x49, 0x43, 0x53, 0x54, 0x41, 0x54, 0x45, 0x0, // @234 "ICSTATE"
|
||||
0x49, 0x4e, 0x56, 0x4c, 0x52, 0x44, 0x59, 0x0, // @242 "INVLRDY"
|
||||
0x49, 0x4e, 0x56, 0x52, 0x52, 0x44, 0x59, 0x0, // @250 "INVRRDY"
|
||||
0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x0, // @258 "MISSION"
|
||||
0x4d, 0x53, 0x50, 0x45, 0x45, 0x44, 0x3a, 0x0, // @266 "MSPEED:"
|
||||
0x52, 0x32, 0x44, 0x50, 0x52, 0x4f, 0x47, 0x0, // @274 "R2DPROG"
|
||||
0x53, 0x6b, 0x69, 0x64, 0x70, 0x61, 0x64, 0x0, // @282 "Skidpad"
|
||||
0x54, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x0, // @290 "TSSTATE"
|
||||
0x42, 0x52, 0x41, 0x4b, 0x45, 0x53, 0x0, // @298 "BRAKES"
|
||||
0x54, 0x53, 0x56, 0x42, 0x41, 0x54, 0x0, // @305 "TSVBAT"
|
||||
0x54, 0x53, 0x56, 0x56, 0x45, 0x48, 0x0, // @312 "TSVVEH"
|
||||
0x44, 0x41, 0x4e, 0x47, 0x3a, 0x0, // @319 "DANG:"
|
||||
0x45, 0x52, 0x52, 0x4f, 0x52, 0x0, // @325 "ERROR"
|
||||
0x4c, 0x56, 0x53, 0x4f, 0x43, 0x0, // @331 "LVSOC"
|
||||
0x4d, 0x41, 0x4e, 0x47, 0x3a, 0x0, // @337 "MANG:"
|
||||
0x53, 0x50, 0x45, 0x45, 0x44, 0x0, // @343 "SPEED"
|
||||
0x54, 0x53, 0x53, 0x4f, 0x43, 0x0, // @349 "TSSOC"
|
||||
0x42, 0x42, 0x41, 0x4c, 0x0, // @355 "BBAL"
|
||||
0x49, 0x4e, 0x49, 0x54, 0x0, // @360 "INIT"
|
||||
0x4c, 0x41, 0x50, 0x53, 0x0, // @365 "LAPS"
|
||||
0x54, 0x4d, 0x41, 0x58, 0x0, // @370 "TMAX"
|
||||
0x54, 0x54, 0x46, 0x4c, 0x0, // @375 "TTFL"
|
||||
0x54, 0x54, 0x46, 0x52, 0x0, // @380 "TTFR"
|
||||
0x54, 0x54, 0x52, 0x4c, 0x0, // @385 "TTRL"
|
||||
0x54, 0x54, 0x52, 0x52, 0x0, // @390 "TTRR"
|
||||
0x56, 0x4d, 0x49, 0x4e, 0x0, // @395 "VMIN"
|
||||
0x41, 0x4d, 0x53, 0x0, // @400 "AMS"
|
||||
0x49, 0x4e, 0x56, 0x0, // @404 "INV"
|
||||
0x49, 0x54, 0x53, 0x0, // @408 "ITS"
|
||||
0x50, 0x44, 0x55, 0x0, // @412 "PDU"
|
||||
0x52, 0x32, 0x44, 0x0, // @416 "R2D"
|
||||
0x53, 0x43, 0x53, 0x0, // @420 "SCS"
|
||||
0x53, 0x44, 0x43, 0x0, // @424 "SDC"
|
||||
0x4c, 0x56, 0x0 // @428 "LV"
|
||||
0x44, 0x41, 0x53, 0x48, 0xa, 0x42, 0x4f, 0x54, 0x53, 0xa, 0x49, 0x4e, 0x45, 0x52, 0x54, 0x49, 0x41, 0x0, // @0 "DASH\nBOTS\nINERTIA"
|
||||
0x43, 0x68, 0x6f, 0x6f, 0x73, 0x65, 0x20, 0x61, 0x20, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x0, // @18 "Choose a mission"
|
||||
0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x21, 0x0, // @35 "Invalid Mission!"
|
||||
0x49, 0x6e, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x20, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x0, // @52 "Invalid Mission"
|
||||
0x50, 0x72, 0x65, 0x73, 0x73, 0x75, 0x72, 0x65, 0x20, 0x41, 0x63, 0x63, 0x20, 0x41, 0x3a, 0x0, // @68 "Pressure Acc A:"
|
||||
0x50, 0x72, 0x65, 0x73, 0x73, 0x75, 0x72, 0x65, 0x20, 0x41, 0x63, 0x63, 0x20, 0x42, 0x3a, 0x0, // @84 "Pressure Acc B:"
|
||||
0x50, 0x72, 0x65, 0x73, 0x73, 0x75, 0x72, 0x65, 0x20, 0x46, 0x72, 0x6f, 0x6e, 0x74, 0x3a, 0x0, // @100 "Pressure Front:"
|
||||
0x4d, 0x61, 0x6e, 0x75, 0x61, 0x6c, 0x20, 0x44, 0x72, 0x69, 0x76, 0x69, 0x6e, 0x67, 0x0, // @116 "Manual Driving"
|
||||
0x50, 0x72, 0x65, 0x73, 0x73, 0x75, 0x72, 0x65, 0x20, 0x52, 0x65, 0x61, 0x72, 0x3a, 0x0, // @131 "Pressure Rear:"
|
||||
0x41, 0x63, 0x63, 0x65, 0x6c, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x0, // @146 "Acceleration"
|
||||
0x53, 0x44, 0x42, 0xa, 0x52, 0x45, 0x53, 0xa, 0x53, 0x44, 0x43, 0x4c, 0x0, // @159 "SDB\nRES\nSDCL"
|
||||
0x41, 0x53, 0x20, 0x2, 0x0, // @172 "AS <>"
|
||||
0x49, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x0, // @177 "Inspection"
|
||||
0x50, 0x41, 0x52, 0x41, 0x4d, 0x45, 0x54, 0x45, 0x52, 0x53, 0x0, // @188 "PARAMETERS"
|
||||
0x54, 0x72, 0x61, 0x63, 0x6b, 0x64, 0x72, 0x69, 0x76, 0x65, 0x0, // @199 "Trackdrive"
|
||||
0x41, 0x4d, 0x53, 0x20, 0x45, 0x72, 0x72, 0x4f, 0x72, 0x0, // @210 "AMS ErrOr"
|
||||
0x41, 0x75, 0x74, 0x6f, 0x63, 0x72, 0x6f, 0x73, 0x73, 0x0, // @220 "Autocross"
|
||||
0x50, 0x52, 0x45, 0x43, 0x48, 0x41, 0x52, 0x47, 0x45, 0x0, // @230 "PRECHARGE"
|
||||
0x2, 0x25, 0x0, // @240 "<>%"
|
||||
0x42, 0x53, 0x50, 0x44, 0xa, 0x48, 0x56, 0x44, 0x0, // @243 "BSPD\nHVD"
|
||||
0x45, 0x42, 0x53, 0x20, 0x54, 0x65, 0x73, 0x74, 0x0, // @252 "EBS Test"
|
||||
0x41, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x0, // @261 "ASSTATE"
|
||||
0x44, 0x53, 0x50, 0x45, 0x45, 0x44, 0x3a, 0x0, // @269 "DSPEED:"
|
||||
0x49, 0x43, 0x53, 0x54, 0x41, 0x54, 0x45, 0x0, // @277 "ICSTATE"
|
||||
0x49, 0x4e, 0x56, 0x4c, 0x52, 0x44, 0x59, 0x0, // @285 "INVLRDY"
|
||||
0x49, 0x4e, 0x56, 0x52, 0x52, 0x44, 0x59, 0x0, // @293 "INVRRDY"
|
||||
0x4d, 0x49, 0x53, 0x53, 0x49, 0x4f, 0x4e, 0x0, // @301 "MISSION"
|
||||
0x4d, 0x53, 0x50, 0x45, 0x45, 0x44, 0x3a, 0x0, // @309 "MSPEED:"
|
||||
0x52, 0x32, 0x44, 0x50, 0x52, 0x4f, 0x47, 0x0, // @317 "R2DPROG"
|
||||
0x53, 0x6b, 0x69, 0x64, 0x70, 0x61, 0x64, 0x0, // @325 "Skidpad"
|
||||
0x54, 0x53, 0x53, 0x54, 0x41, 0x54, 0x45, 0x0, // @333 "TSSTATE"
|
||||
0x42, 0x52, 0x41, 0x4b, 0x45, 0x53, 0x0, // @341 "BRAKES"
|
||||
0x54, 0x53, 0x56, 0x42, 0x41, 0x54, 0x0, // @348 "TSVBAT"
|
||||
0x54, 0x53, 0x56, 0x56, 0x45, 0x48, 0x0, // @355 "TSVVEH"
|
||||
0xa, 0xa, 0x41, 0x4d, 0x53, 0x0, // @362 "\n\nAMS"
|
||||
0xa, 0xa, 0x49, 0x4d, 0x44, 0x0, // @368 "\n\nIMD"
|
||||
0xa, 0xa, 0x50, 0x44, 0x55, 0x0, // @374 "\n\nPDU"
|
||||
0x44, 0x41, 0x4e, 0x47, 0x3a, 0x0, // @380 "DANG:"
|
||||
0x45, 0x52, 0x52, 0x4f, 0x52, 0x0, // @386 "ERROR"
|
||||
0x4c, 0x56, 0x53, 0x4f, 0x43, 0x0, // @392 "LVSOC"
|
||||
0x4d, 0x41, 0x4e, 0x47, 0x3a, 0x0, // @398 "MANG:"
|
||||
0x53, 0x50, 0x45, 0x45, 0x44, 0x0, // @404 "SPEED"
|
||||
0x54, 0x53, 0x53, 0x4f, 0x43, 0x0, // @410 "TSSOC"
|
||||
0x42, 0x42, 0x41, 0x4c, 0x0, // @416 "BBAL"
|
||||
0x49, 0x4e, 0x49, 0x54, 0x0, // @421 "INIT"
|
||||
0x4c, 0x41, 0x50, 0x53, 0x0, // @426 "LAPS"
|
||||
0x54, 0x4d, 0x41, 0x58, 0x0, // @431 "TMAX"
|
||||
0x54, 0x53, 0x4d, 0x53, 0x0, // @436 "TSMS"
|
||||
0x54, 0x54, 0x46, 0x4c, 0x0, // @441 "TTFL"
|
||||
0x54, 0x54, 0x46, 0x52, 0x0, // @446 "TTFR"
|
||||
0x54, 0x54, 0x52, 0x4c, 0x0, // @451 "TTRL"
|
||||
0x54, 0x54, 0x52, 0x52, 0x0, // @456 "TTRR"
|
||||
0x56, 0x4d, 0x49, 0x4e, 0x0, // @461 "VMIN"
|
||||
0x41, 0x43, 0x43, 0x0, // @466 "ACC"
|
||||
0x49, 0x4e, 0x56, 0x0, // @470 "INV"
|
||||
0x49, 0x54, 0x53, 0x0, // @474 "ITS"
|
||||
0x52, 0x32, 0x44, 0x0, // @478 "R2D"
|
||||
0x53, 0x43, 0x53, 0x0, // @482 "SCS"
|
||||
0x53, 0x44, 0x43, 0x0, // @486 "SDC"
|
||||
0x4c, 0x56, 0x0 // @490 "LV"
|
||||
};
|
||||
|
||||
TEXT_LOCATION_FLASH_PRAGMA
|
||||
|
|
|
@ -82,6 +82,15 @@ 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::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 1, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
|
@ -169,6 +178,15 @@ 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::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 1, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
{ 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
|
||||
|
|
|
@ -28,6 +28,7 @@ public:
|
|||
virtual ~AMIPresenter(){};
|
||||
|
||||
void vehicleStateUpdated() override;
|
||||
void nextScreen() override;
|
||||
|
||||
private:
|
||||
AMIPresenter();
|
||||
|
|
|
@ -51,6 +51,7 @@ protected:
|
|||
AMIDataField measuredSpeedField;
|
||||
|
||||
touchgfx::Unicode::UnicodeChar progressBuffer[16];
|
||||
touchgfx::Unicode::UnicodeChar asOKBuffer[16];
|
||||
touchgfx::Shape<3> cones[NUM_CONES] = {cone0, cone1, cone2, cone3, cone4,
|
||||
cone5, cone6, cone7, cone8, cone9};
|
||||
};
|
||||
|
|
|
@ -17,7 +17,11 @@ public:
|
|||
model.tick();
|
||||
}
|
||||
|
||||
void setBackToMissionSelect(bool backToMissionSelect);
|
||||
bool getBackToMissionSelect() const;
|
||||
|
||||
private:
|
||||
bool backToMissionSelect;
|
||||
};
|
||||
|
||||
#endif // FRONTENDAPPLICATION_HPP
|
||||
|
|
|
@ -14,6 +14,7 @@ public:
|
|||
virtual void initialize() override;
|
||||
|
||||
void setSelected(int selected);
|
||||
void setDirty(bool dirty);
|
||||
|
||||
protected:
|
||||
private:
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
#ifndef MISSIONSELECTPRESENTER_HPP
|
||||
#define MISSIONSELECTPRESENTER_HPP
|
||||
|
||||
#include "stw_defines.h"
|
||||
#include <gui/model/ModelListener.hpp>
|
||||
#include <mvp/Presenter.hpp>
|
||||
|
||||
|
@ -30,10 +31,14 @@ public:
|
|||
|
||||
void vehicleStateUpdated() override;
|
||||
|
||||
void nextScreen() override;
|
||||
|
||||
private:
|
||||
MissionSelectPresenter();
|
||||
|
||||
MissionSelectView &view;
|
||||
|
||||
Mission initialMission;
|
||||
};
|
||||
|
||||
#endif // MISSIONSELECTPRESENTER_HPP
|
||||
|
|
|
@ -15,6 +15,7 @@ public:
|
|||
|
||||
virtual void vehicleStateUpdated(){};
|
||||
virtual void nextScreen(){};
|
||||
virtual void paramConfirmed(){};
|
||||
|
||||
protected:
|
||||
Model *model;
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
#ifndef SDCPRESENTER_HPP
|
||||
#define SDCPRESENTER_HPP
|
||||
|
||||
#include <gui/model/ModelListener.hpp>
|
||||
#include <mvp/Presenter.hpp>
|
||||
|
||||
using namespace touchgfx;
|
||||
|
||||
class SDCView;
|
||||
|
||||
class SDCPresenter : public touchgfx::Presenter, public ModelListener {
|
||||
public:
|
||||
SDCPresenter(SDCView &v);
|
||||
|
||||
/**
|
||||
* The activate function is called automatically when this screen is "switched
|
||||
* in" (ie. made active). Initialization logic can be placed here.
|
||||
*/
|
||||
virtual void activate() override;
|
||||
|
||||
/**
|
||||
* The deactivate function is called automatically when this screen is
|
||||
* "switched out" (ie. made inactive). Teardown functionality can be placed
|
||||
* here.
|
||||
*/
|
||||
virtual void deactivate() override;
|
||||
|
||||
virtual ~SDCPresenter() {}
|
||||
|
||||
void vehicleStateUpdated() override;
|
||||
void nextScreen() override;
|
||||
|
||||
private:
|
||||
SDCPresenter();
|
||||
|
||||
SDCView &view;
|
||||
};
|
||||
|
||||
#endif // SDCPRESENTER_HPP
|
|
@ -0,0 +1,33 @@
|
|||
#ifndef SDCVIEW_HPP
|
||||
#define SDCVIEW_HPP
|
||||
|
||||
#include "gui/containers/DriverViewStatusItem.hpp"
|
||||
#include "touchgfx/Color.hpp"
|
||||
#include "touchgfx/hal/Types.hpp"
|
||||
#include <gui/sdc_screen/SDCPresenter.hpp>
|
||||
#include <gui_generated/sdc_screen/SDCViewBase.hpp>
|
||||
|
||||
class SDCView : public SDCViewBase {
|
||||
public:
|
||||
SDCView();
|
||||
virtual ~SDCView() {}
|
||||
virtual void setupScreen();
|
||||
virtual void tearDownScreen();
|
||||
|
||||
void setPDUClosed(bool closed);
|
||||
void setInertiaClosed(bool closed);
|
||||
void setIMDClosed(bool closed);
|
||||
void setAMSClosed(bool closed);
|
||||
void setSDCLClosed(bool closed);
|
||||
void setHVBClosed(bool closed);
|
||||
void setTSMSClosed(bool closed);
|
||||
void setAccClosed(bool closed);
|
||||
|
||||
protected:
|
||||
inline touchgfx::colortype getColor(bool closed) {
|
||||
return closed ? DriverViewStatusItem::COLOR_OK
|
||||
: DriverViewStatusItem::COLOR_ERROR;
|
||||
}
|
||||
};
|
||||
|
||||
#endif // SDCVIEW_HPP
|
|
@ -17,18 +17,19 @@ public:
|
|||
* The activate function is called automatically when this screen is "switched
|
||||
* in" (ie. made active). Initialization logic can be placed here.
|
||||
*/
|
||||
virtual void activate();
|
||||
virtual void activate() override;
|
||||
|
||||
/**
|
||||
* The deactivate function is called automatically when this screen is
|
||||
* "switched out" (ie. made inactive). Teardown functionality can be placed
|
||||
* here.
|
||||
*/
|
||||
virtual void deactivate();
|
||||
virtual void deactivate() override;
|
||||
|
||||
virtual ~VehicleConfigPresenter(){};
|
||||
|
||||
void nextScreen() override;
|
||||
void paramConfirmed() override;
|
||||
|
||||
private:
|
||||
VehicleConfigPresenter();
|
||||
|
|
|
@ -19,10 +19,14 @@ public:
|
|||
void incParam() override;
|
||||
void confirmParam() override;
|
||||
|
||||
void abxParamConfirmed(ParamType param);
|
||||
|
||||
protected:
|
||||
private:
|
||||
int selectedParam;
|
||||
|
||||
bool paramsDirty[ParamType_COUNT] = {false};
|
||||
|
||||
void updateSelectedParam(int select);
|
||||
};
|
||||
|
||||
|
|
|
@ -33,3 +33,9 @@ void AMIPresenter::vehicleStateUpdated() {
|
|||
}
|
||||
view.setConePositions(vehicle_state.cone_pos, cone_count);
|
||||
}
|
||||
|
||||
void AMIPresenter::nextScreen() {
|
||||
FrontendApplication *app =
|
||||
static_cast<FrontendApplication *>(FrontendApplication::getInstance());
|
||||
app->gotoSDCScreenNoTransition();
|
||||
}
|
||||
|
|
|
@ -80,47 +80,16 @@ void AMIView::setIniChkState(IniChkState state) {
|
|||
} else {
|
||||
if (state == INICHK_WAIT_TS) {
|
||||
progressBar.setColor(DriverViewStatusItem::COLOR_TS);
|
||||
progressBar.setValue(100);
|
||||
} else {
|
||||
progressBar.setColor(DriverViewStatusItem::COLOR_OK);
|
||||
float prog = ((float)vehicle_state.ini_chk_state) / INICHK_DONE;
|
||||
progressBar.setValue(prog * 100);
|
||||
}
|
||||
float prog = ((float)vehicle_state.ini_chk_state) / INICHK_DONE;
|
||||
progressBar.setValue(prog * 100);
|
||||
}
|
||||
progressBar.invalidate();
|
||||
|
||||
const char *label = "UNKNOWN";
|
||||
switch (vehicle_state.ini_chk_state) {
|
||||
case INICHK_START:
|
||||
label = "START";
|
||||
break;
|
||||
case INICHK_WD_CHECK:
|
||||
label = "WD CHK";
|
||||
break;
|
||||
case INICHK_WD_OK:
|
||||
label = "WD OK";
|
||||
break;
|
||||
case INICHK_ASB_CHECK_1:
|
||||
label = "ASB CHK 1";
|
||||
break;
|
||||
case INICHK_ASB_CHECK_2:
|
||||
label = "ASB CHK 2";
|
||||
break;
|
||||
case INICHK_WAIT_TS:
|
||||
label = "WAIT TS";
|
||||
break;
|
||||
case INICHK_EBS_CHECK_A:
|
||||
label = "EBS CHK A";
|
||||
break;
|
||||
case INICHK_EBS_CHECK_B:
|
||||
label = "EBS CHK B";
|
||||
break;
|
||||
case INICHK_DONE:
|
||||
label = "DONE";
|
||||
break;
|
||||
case INICHK_ERROR:
|
||||
label = "ERROR";
|
||||
break;
|
||||
}
|
||||
const char *label = inichkstate_str(state);
|
||||
touchgfx::Unicode::strncpy(progressBuffer, label,
|
||||
sizeof(progressBuffer) / sizeof(*progressBuffer));
|
||||
progressLabel.setWildcard(progressBuffer);
|
||||
|
@ -142,6 +111,9 @@ void AMIView::updateDataFields() {
|
|||
void AMIView::setJetsonTimeout(bool timeout) {
|
||||
if (timeout) {
|
||||
desiredAngle.setColor(touchgfx::Color::getColorFromRGB(0xFF, 0, 0));
|
||||
touchgfx::Unicode::fromUTF8((const uint8_t *)"TIMEOUT", asOKBuffer,
|
||||
sizeof(asOKBuffer) / sizeof(*asOKBuffer));
|
||||
asOK.setWildcard(asOKBuffer);
|
||||
} else {
|
||||
desiredAngle.setColor(touchgfx::Color::getColorFromRGB(0xFF, 0xFF, 0xFF));
|
||||
}
|
||||
|
|
|
@ -3,6 +3,14 @@
|
|||
#include "gui/common/NamedField.hpp"
|
||||
|
||||
FrontendApplication::FrontendApplication(Model &m, FrontendHeap &heap)
|
||||
: FrontendApplicationBase(m, heap) {
|
||||
: FrontendApplicationBase(m, heap), backToMissionSelect(false) {
|
||||
namedFieldSort();
|
||||
}
|
||||
|
||||
void FrontendApplication::setBackToMissionSelect(bool backToMissionSelect) {
|
||||
this->backToMissionSelect = backToMissionSelect;
|
||||
}
|
||||
|
||||
bool FrontendApplication::getBackToMissionSelect() const {
|
||||
return backToMissionSelect;
|
||||
}
|
||||
|
|
|
@ -144,42 +144,7 @@ void *get_r2dprog_text() {
|
|||
}
|
||||
|
||||
void *get_inichk_text() {
|
||||
const char *text;
|
||||
switch (vehicle_state.ini_chk_state) {
|
||||
case INICHK_START:
|
||||
text = "START";
|
||||
break;
|
||||
case INICHK_WD_CHECK:
|
||||
text = "WD CHK";
|
||||
break;
|
||||
case INICHK_WD_OK:
|
||||
text = "WD OK";
|
||||
break;
|
||||
case INICHK_ASB_CHECK_1:
|
||||
text = "ASB CHK1";
|
||||
break;
|
||||
case INICHK_ASB_CHECK_2:
|
||||
text = "ASB CHK2";
|
||||
break;
|
||||
case INICHK_WAIT_TS:
|
||||
text = "WAIT TS";
|
||||
break;
|
||||
case INICHK_EBS_CHECK_A:
|
||||
text = "EBS CHKA";
|
||||
break;
|
||||
case INICHK_EBS_CHECK_B:
|
||||
text = "EBS CHKB";
|
||||
break;
|
||||
case INICHK_DONE:
|
||||
text = "DONE";
|
||||
break;
|
||||
case INICHK_ERROR:
|
||||
text = "ERROR";
|
||||
break;
|
||||
default:
|
||||
text = "UNKNOWN";
|
||||
}
|
||||
return (void *)text;
|
||||
return (void *)inichkstate_str(vehicle_state.ini_chk_state);
|
||||
}
|
||||
|
||||
void *get_sdc_text() {
|
||||
|
|
|
@ -13,6 +13,14 @@ void ConfigItem::setSelected(int selected) {
|
|||
bg.invalidate();
|
||||
}
|
||||
|
||||
void ConfigItem::setDirty(bool dirty) {
|
||||
if (dirty) {
|
||||
value.setColor(touchgfx::Color::getColorFromRGB(0xFF, 0x00, 0x00));
|
||||
} else {
|
||||
value.setColor(touchgfx::Color::getColorFromRGB(0xFF, 0xFF, 0xFF));
|
||||
}
|
||||
}
|
||||
|
||||
void ConfigItem::typeUpdated() {
|
||||
switch (desc->kind) {
|
||||
case NamedFieldKind::Float:
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
#include "gui/common/FrontendApplication.hpp"
|
||||
#include <gui/debugview_screen/DebugViewPresenter.hpp>
|
||||
#include <gui/debugview_screen/DebugViewView.hpp>
|
||||
|
||||
|
@ -10,6 +11,8 @@ void DebugViewPresenter::deactivate() {}
|
|||
void DebugViewPresenter::vehicleStateUpdated() { view.updateFieldValues(); }
|
||||
|
||||
void DebugViewPresenter::nextScreen() {
|
||||
static_cast<FrontendApplication *>(Application::getInstance())
|
||||
->gotoDriverViewScreenNoTransition();
|
||||
FrontendApplication *app =
|
||||
static_cast<FrontendApplication *>(Application::getInstance());
|
||||
app->setBackToMissionSelect(true);
|
||||
app->gotoMissionSelectScreenNoTransition();
|
||||
}
|
||||
|
|
|
@ -9,13 +9,19 @@
|
|||
MissionSelectPresenter::MissionSelectPresenter(MissionSelectView &v)
|
||||
: view(v) {}
|
||||
|
||||
void MissionSelectPresenter::activate() {}
|
||||
void MissionSelectPresenter::activate() {
|
||||
initialMission = vehicle_state.active_mission;
|
||||
}
|
||||
|
||||
void MissionSelectPresenter::deactivate() {}
|
||||
|
||||
void MissionSelectPresenter::vehicleStateUpdated() {
|
||||
FrontendApplication *app =
|
||||
static_cast<FrontendApplication *>(FrontendApplication::getInstance());
|
||||
if (app->getBackToMissionSelect() &&
|
||||
vehicle_state.active_mission == initialMission) {
|
||||
return;
|
||||
}
|
||||
switch (vehicle_state.active_mission) {
|
||||
case MISSION_NONE:
|
||||
// Do nothing
|
||||
|
@ -27,3 +33,16 @@ void MissionSelectPresenter::vehicleStateUpdated() {
|
|||
app->gotoAMIScreenNoTransition();
|
||||
}
|
||||
}
|
||||
|
||||
void MissionSelectPresenter::nextScreen() {
|
||||
FrontendApplication *app =
|
||||
static_cast<FrontendApplication *>(FrontendApplication::getInstance());
|
||||
if (app->getBackToMissionSelect()) {
|
||||
if (vehicle_state.active_mission == MISSION_MANUAL) {
|
||||
app->gotoDriverViewScreenNoTransition();
|
||||
} else {
|
||||
app->gotoAMIScreenNoTransition();
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -17,9 +17,8 @@ void Model::tick() { modelListener->vehicleStateUpdated(); }
|
|||
|
||||
void Model::tick() {
|
||||
ULONG events;
|
||||
if (tx_event_flags_get(&gui_update_events,
|
||||
GUI_UPDATE_VEHICLE_STATE | GUI_UPDATE_NEXT_SCREEN,
|
||||
TX_OR_CLEAR, &events, TX_NO_WAIT) != TX_SUCCESS) {
|
||||
if (tx_event_flags_get(&gui_update_events, GUI_UPDATE_ALL, TX_OR_CLEAR,
|
||||
&events, TX_NO_WAIT) != TX_SUCCESS) {
|
||||
return;
|
||||
}
|
||||
if (events & GUI_UPDATE_NEXT_SCREEN) {
|
||||
|
@ -28,6 +27,9 @@ void Model::tick() {
|
|||
if (events & GUI_UPDATE_VEHICLE_STATE) {
|
||||
modelListener->vehicleStateUpdated();
|
||||
}
|
||||
if (events & GUI_UPDATE_PARAM_CONFIRMED) {
|
||||
modelListener->paramConfirmed();
|
||||
}
|
||||
}
|
||||
|
||||
#endif // SIMULATOR
|
||||
|
|
|
@ -0,0 +1,27 @@
|
|||
#include "gui/common/FrontendApplication.hpp"
|
||||
#include "vehicle_state.h"
|
||||
#include <gui/sdc_screen/SDCPresenter.hpp>
|
||||
#include <gui/sdc_screen/SDCView.hpp>
|
||||
|
||||
SDCPresenter::SDCPresenter(SDCView &v) : view(v) {}
|
||||
|
||||
void SDCPresenter::activate() { vehicleStateUpdated(); }
|
||||
|
||||
void SDCPresenter::deactivate() {}
|
||||
|
||||
void SDCPresenter::vehicleStateUpdated() {
|
||||
view.setPDUClosed(vehicle_state.pdu_sdc_active);
|
||||
view.setInertiaClosed(vehicle_state.sdcl_state[1]);
|
||||
view.setIMDClosed(vehicle_state.imd_ok);
|
||||
view.setAMSClosed(vehicle_state.ts_state != TS_ERROR);
|
||||
view.setSDCLClosed(vehicle_state.sdcl_state[0]);
|
||||
view.setHVBClosed(vehicle_state.sdcl_state[2]);
|
||||
view.setTSMSClosed(true);
|
||||
view.setAccClosed(vehicle_state.sdc_closed);
|
||||
}
|
||||
|
||||
void SDCPresenter::nextScreen() {
|
||||
FrontendApplication *app =
|
||||
static_cast<FrontendApplication *>(FrontendApplication::getInstance());
|
||||
app->gotoDebugViewScreenNoTransition();
|
||||
}
|
|
@ -0,0 +1,26 @@
|
|||
#include "gui/driverview_screen/DriverViewView.hpp"
|
||||
#include <gui/sdc_screen/SDCView.hpp>
|
||||
|
||||
SDCView::SDCView() {}
|
||||
|
||||
void SDCView::setupScreen() { SDCViewBase::setupScreen(); }
|
||||
|
||||
void SDCView::tearDownScreen() { SDCViewBase::tearDownScreen(); }
|
||||
|
||||
void SDCView::setPDUClosed(bool closed) { pdu.setColor(getColor(closed)); }
|
||||
|
||||
void SDCView::setInertiaClosed(bool closed) {
|
||||
inertia.setColor(getColor(closed));
|
||||
}
|
||||
|
||||
void SDCView::setIMDClosed(bool closed) { imd.setColor(getColor(closed)); }
|
||||
|
||||
void SDCView::setAMSClosed(bool closed) { ams.setColor(getColor(closed)); }
|
||||
|
||||
void SDCView::setSDCLClosed(bool closed) { sdcl.setColor(getColor(closed)); }
|
||||
|
||||
void SDCView::setHVBClosed(bool closed) { hvb.setColor(getColor(closed)); }
|
||||
|
||||
void SDCView::setTSMSClosed(bool closed) { tsms.setColor(getColor(closed)); }
|
||||
|
||||
void SDCView::setAccClosed(bool closed) { acc.setColor(getColor(closed)); }
|
|
@ -1,3 +1,4 @@
|
|||
#include "vehicle_state.h"
|
||||
#include <gui/vehicleconfig_screen/VehicleConfigPresenter.hpp>
|
||||
#include <gui/vehicleconfig_screen/VehicleConfigView.hpp>
|
||||
|
||||
|
@ -10,5 +11,9 @@ void VehicleConfigPresenter::deactivate() {}
|
|||
|
||||
void VehicleConfigPresenter::nextScreen() {
|
||||
static_cast<FrontendApplication *>(Application::getInstance())
|
||||
->gotoDebugViewScreenNoTransition();
|
||||
->gotoSDCScreenNoTransition();
|
||||
}
|
||||
|
||||
void VehicleConfigPresenter::paramConfirmed() {
|
||||
view.abxParamConfirmed(vehicle_state.last_param_confirmed);
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ void VehicleConfigView::tearDownScreen() {
|
|||
void VehicleConfigView::paramsUpdateItem(ConfigItem &item, int16_t itemIndex) {
|
||||
item.setType(static_cast<ParamType>(itemIndex));
|
||||
item.setSelected(itemIndex == selectedParam);
|
||||
item.setDirty(paramsDirty[itemIndex]);
|
||||
}
|
||||
|
||||
void VehicleConfigView::selectPrevParam() {
|
||||
|
@ -34,10 +35,12 @@ void VehicleConfigView::selectNextParam() {
|
|||
|
||||
void VehicleConfigView::decParam() {
|
||||
params_dec(static_cast<ParamType>(selectedParam));
|
||||
paramsDirty[selectedParam] = true;
|
||||
params.itemChanged(selectedParam);
|
||||
}
|
||||
void VehicleConfigView::incParam() {
|
||||
params_inc(static_cast<ParamType>(selectedParam));
|
||||
paramsDirty[selectedParam] = true;
|
||||
params.itemChanged(selectedParam);
|
||||
}
|
||||
|
||||
|
@ -45,6 +48,11 @@ void VehicleConfigView::confirmParam() {
|
|||
params_broadcast(static_cast<ParamType>(selectedParam));
|
||||
}
|
||||
|
||||
void VehicleConfigView::abxParamConfirmed(ParamType param) {
|
||||
paramsDirty[param] = false;
|
||||
params.itemChanged(param);
|
||||
}
|
||||
|
||||
void VehicleConfigView::updateSelectedParam(int select) {
|
||||
int previousSelected = selectedParam;
|
||||
selectedParam = select;
|
||||
|
|
|
@ -20,7 +20,7 @@ all clean assets:
|
|||
$(error Spaces not allowed in path)
|
||||
else
|
||||
|
||||
ADDITIONAL_SOURCES :=
|
||||
ADDITIONAL_SOURCES := $(application_path)/../Core/Src/vehicle_state.c
|
||||
ADDITIONAL_INCLUDE_PATHS := $(application_path)/../Core/Inc
|
||||
ADDITIONAL_LIBRARY_PATHS :=
|
||||
ADDITIONAL_LIBRARIES :=
|
||||
|
|
|
@ -49,7 +49,6 @@ int CALLBACK WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
|
|||
|
||||
// Stubs
|
||||
extern "C" {
|
||||
VehicleState vehicle_state;
|
||||
void params_dec(ParamType param) {}
|
||||
void params_inc(ParamType param) {}
|
||||
void params_broadcast(ParamType param) {}
|
||||
|
|
|
@ -192,6 +192,18 @@
|
|||
"ScreenTransitionType": "ScreenTransitionNone",
|
||||
"ActionComponent": "VehicleConfig"
|
||||
}
|
||||
},
|
||||
{
|
||||
"InteractionName": "DummyChangeSDCView",
|
||||
"Trigger": {
|
||||
"Type": "TriggerPhysicalButtonClicked",
|
||||
"ButtonKey": 250
|
||||
},
|
||||
"Action": {
|
||||
"Type": "ActionGotoScreen",
|
||||
"ScreenTransitionType": "ScreenTransitionNone",
|
||||
"ActionComponent": "SDC"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
|
@ -218,9 +230,9 @@
|
|||
"TextId": "Invalid_Huge",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 197,
|
||||
"Green": 14,
|
||||
"Blue": 31
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
},
|
||||
{
|
||||
|
@ -236,7 +248,7 @@
|
|||
"X": 273,
|
||||
"Y": 103,
|
||||
"Width": 84,
|
||||
"Height": 24,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_3MDX",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
|
@ -252,7 +264,7 @@
|
|||
"X": 273,
|
||||
"Y": 135,
|
||||
"Width": 85,
|
||||
"Height": 24,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_JFR7",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
|
@ -332,7 +344,7 @@
|
|||
"X": 273,
|
||||
"Y": 198,
|
||||
"Width": 129,
|
||||
"Height": 24,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_590R",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
|
@ -348,7 +360,7 @@
|
|||
"X": 273,
|
||||
"Y": 166,
|
||||
"Width": 128,
|
||||
"Height": 24,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_Z78U",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
|
@ -630,13 +642,29 @@
|
|||
"Width": 480,
|
||||
"Height": 320,
|
||||
"Components": [
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "asOK",
|
||||
"X": 68,
|
||||
"Y": 279,
|
||||
"Width": 169,
|
||||
"Height": 24,
|
||||
"TextId": "__SingleUse_C17G",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"Wildcard1": {}
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "textArea8",
|
||||
"X": 68,
|
||||
"Y": 247,
|
||||
"Width": 255,
|
||||
"Height": 24,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_0L75",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
|
@ -652,7 +680,7 @@
|
|||
"X": 68,
|
||||
"Y": 215,
|
||||
"Width": 273,
|
||||
"Height": 24,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_GA13",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
|
@ -732,7 +760,7 @@
|
|||
"X": 68,
|
||||
"Y": 184,
|
||||
"Width": 259,
|
||||
"Height": 24,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_OOU3",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
|
@ -748,7 +776,7 @@
|
|||
"X": 68,
|
||||
"Y": 152,
|
||||
"Width": 256,
|
||||
"Height": 24,
|
||||
"Height": 25,
|
||||
"TextId": "__SingleUse_2FPP",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
|
@ -1093,7 +1121,7 @@
|
|||
"X": 95,
|
||||
"Y": -2,
|
||||
"Width": 269,
|
||||
"Height": 30,
|
||||
"Height": 37,
|
||||
"Visible": false,
|
||||
"TextId": "__SingleUse_HMH2",
|
||||
"TextRotation": "0",
|
||||
|
@ -1408,6 +1436,197 @@
|
|||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"Name": "SDC",
|
||||
"CanvasBufferSize": 7200,
|
||||
"Components": [
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "pdu",
|
||||
"X": 15,
|
||||
"Y": 40,
|
||||
"Width": 60,
|
||||
"Height": 72,
|
||||
"TextId": "__SingleUse_YRU7",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"AutoSize": true
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "inertia",
|
||||
"X": 128,
|
||||
"Y": 40,
|
||||
"Width": 107,
|
||||
"Height": 72,
|
||||
"TextId": "__SingleUse_43KA",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"AutoSize": true
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "sdcl",
|
||||
"X": 363,
|
||||
"Y": 217,
|
||||
"Width": 102,
|
||||
"Height": 72,
|
||||
"TextId": "__SingleUse_QNHI",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
}
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "hvb",
|
||||
"X": 240,
|
||||
"Y": 241,
|
||||
"Width": 103,
|
||||
"Height": 48,
|
||||
"TextId": "__SingleUse_KI1B",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"AutoSize": true
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "tsms",
|
||||
"X": 120,
|
||||
"Y": 265,
|
||||
"Width": 84,
|
||||
"Height": 24,
|
||||
"TextId": "__SingleUse_XC1X",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"AutoSize": true
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "acc",
|
||||
"X": 15,
|
||||
"Y": 265,
|
||||
"Width": 58,
|
||||
"Height": 24,
|
||||
"TextId": "__SingleUse_V38H",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"AutoSize": true
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "imd",
|
||||
"X": 291,
|
||||
"Y": 40,
|
||||
"Width": 46,
|
||||
"Height": 72,
|
||||
"TextId": "__SingleUse_N50J",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"AutoSize": true
|
||||
},
|
||||
{
|
||||
"Type": "TextArea",
|
||||
"Name": "ams",
|
||||
"X": 404,
|
||||
"Y": 40,
|
||||
"Width": 61,
|
||||
"Height": 72,
|
||||
"TextId": "__SingleUse_XFW7",
|
||||
"TextRotation": "0",
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"AutoSize": true
|
||||
},
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "line1",
|
||||
"X": 15,
|
||||
"Y": 122,
|
||||
"Width": 450,
|
||||
"Height": 10,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"StartX": 5.0,
|
||||
"StartY": 5.0,
|
||||
"EndX": 450.0,
|
||||
"EndY": 5.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Square"
|
||||
},
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "line2",
|
||||
"X": 15,
|
||||
"Y": 193,
|
||||
"Width": 450,
|
||||
"Height": 10,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"StartX": 10.0,
|
||||
"StartY": 5.0,
|
||||
"EndX": 450.0,
|
||||
"EndY": 5.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Round"
|
||||
},
|
||||
{
|
||||
"Type": "Line",
|
||||
"Name": "line3",
|
||||
"X": 455,
|
||||
"Y": 122,
|
||||
"Width": 10,
|
||||
"Height": 81,
|
||||
"Color": {
|
||||
"Red": 255,
|
||||
"Green": 255,
|
||||
"Blue": 255
|
||||
},
|
||||
"StartX": 5.0,
|
||||
"StartY": 5.0,
|
||||
"EndX": 5.0,
|
||||
"EndY": 100.0,
|
||||
"LineWidth": 10.0,
|
||||
"LineEndingStyle": "Square"
|
||||
}
|
||||
],
|
||||
"Interactions": []
|
||||
}
|
||||
],
|
||||
"CustomContainerDefinitions": [
|
||||
|
|
Loading…
Reference in New Issue