Move R2D/precharge bar to custom container
This commit is contained in:
		@ -171,6 +171,15 @@
 | 
			
		||||
      </Text>
 | 
			
		||||
    </TextGroup>
 | 
			
		||||
    <TextGroup Id="Unsorted">
 | 
			
		||||
      <Text Id="__SingleUse_6EXA" Alignment="Right" TypographyId="Chinat_Large">
 | 
			
		||||
        <Translation Language="GB"><value></Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
      <Text Id="__SingleUse_570K" Alignment="Left" TypographyId="Chinat_Large">
 | 
			
		||||
        <Translation Language="GB">R2D</Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
      <Text Id="__SingleUse_G2S2" Alignment="Left" TypographyId="Chinat_Large">
 | 
			
		||||
        <Translation Language="GB">PRECHARGE</Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
      <Text Id="__SingleUse_B2Q6" Alignment="Right" TypographyId="Numbers">
 | 
			
		||||
        <Translation Language="GB"><value>°</Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
@ -291,12 +300,6 @@
 | 
			
		||||
      <Text Id="__SingleUse_1NKF" Alignment="Center" TypographyId="Chinat_Huge">
 | 
			
		||||
        <Translation Language="GB"></Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
      <Text Id="__SingleUse_J5UH" Alignment="Right" TypographyId="Chinat_Large">
 | 
			
		||||
        <Translation Language="GB"><value></Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
      <Text Id="__SingleUse_NGUK" Alignment="Left" TypographyId="Chinat_Large">
 | 
			
		||||
        <Translation Language="GB">R2D</Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
      <Text Id="__SingleUse_4E84" Alignment="Right" TypographyId="Numbers">
 | 
			
		||||
        <Translation Language="GB"><value></Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
@ -306,9 +309,6 @@
 | 
			
		||||
      <Text Id="__SingleUse_RWCE" Alignment="Center" TypographyId="Chinat_Large">
 | 
			
		||||
        <Translation Language="GB">PARAMETERS</Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
      <Text Id="__SingleUse_HMH2" Alignment="Left" TypographyId="Chinat_Large">
 | 
			
		||||
        <Translation Language="GB">PRECHARGE</Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
      <Text Id="__SingleUse_PHFD" Alignment="Center" TypographyId="Chinat_Small">
 | 
			
		||||
        <Translation Language="GB"><value>%</Translation>
 | 
			
		||||
      </Text>
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,37 @@
 | 
			
		||||
/*********************************************************************************/
 | 
			
		||||
/********** THIS FILE IS GENERATED BY TOUCHGFX DESIGNER, DO NOT MODIFY ***********/
 | 
			
		||||
/*********************************************************************************/
 | 
			
		||||
#ifndef PROGRESSBARBASE_HPP
 | 
			
		||||
#define PROGRESSBARBASE_HPP
 | 
			
		||||
 | 
			
		||||
#include <gui/common/FrontendApplication.hpp>
 | 
			
		||||
#include <touchgfx/containers/Container.hpp>
 | 
			
		||||
#include <touchgfx/widgets/TextAreaWithWildcard.hpp>
 | 
			
		||||
#include <touchgfx/widgets/TextArea.hpp>
 | 
			
		||||
#include <touchgfx/containers/progress_indicators/BoxProgress.hpp>
 | 
			
		||||
 | 
			
		||||
class ProgressBarBase : public touchgfx::Container
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
    ProgressBarBase();
 | 
			
		||||
    virtual ~ProgressBarBase();
 | 
			
		||||
    virtual void initialize();
 | 
			
		||||
 | 
			
		||||
protected:
 | 
			
		||||
    FrontendApplication& application() {
 | 
			
		||||
        return *static_cast<FrontendApplication*>(touchgfx::Application::getInstance());
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * Member Declarations
 | 
			
		||||
     */
 | 
			
		||||
    touchgfx::TextAreaWithOneWildcard r2dProgressLabel;
 | 
			
		||||
    touchgfx::TextArea r2dLabel;
 | 
			
		||||
    touchgfx::TextArea prechargeLabel;
 | 
			
		||||
    touchgfx::BoxProgress progressBar;
 | 
			
		||||
 | 
			
		||||
private:
 | 
			
		||||
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#endif // PROGRESSBARBASE_HPP
 | 
			
		||||
@ -20,7 +20,7 @@
 | 
			
		||||
#include <gui/containers/DriverViewField.hpp>
 | 
			
		||||
#include <touchgfx/containers/ListLayout.hpp>
 | 
			
		||||
#include <gui/containers/DriverViewStatusItem.hpp>
 | 
			
		||||
#include <touchgfx/containers/progress_indicators/BoxProgress.hpp>
 | 
			
		||||
#include <gui/containers/ProgressBar.hpp>
 | 
			
		||||
#include <gui/containers/ErrorPopup.hpp>
 | 
			
		||||
 | 
			
		||||
class DriverViewViewBase : public touchgfx::View<DriverViewPresenter>
 | 
			
		||||
@ -98,10 +98,7 @@ protected:
 | 
			
		||||
    DriverViewStatusItem statusPDU;
 | 
			
		||||
    DriverViewStatusItem statusINV;
 | 
			
		||||
    DriverViewStatusItem statusLV;
 | 
			
		||||
    touchgfx::BoxProgress progressBar;
 | 
			
		||||
    touchgfx::TextArea prechargeLabel;
 | 
			
		||||
    touchgfx::TextArea r2dLabel;
 | 
			
		||||
    touchgfx::TextAreaWithOneWildcard r2dProgressLabel;
 | 
			
		||||
    ProgressBar progressBar;
 | 
			
		||||
    ErrorPopup errorPopup;
 | 
			
		||||
 | 
			
		||||
private:
 | 
			
		||||
 | 
			
		||||
@ -19,6 +19,27 @@ public:
 | 
			
		||||
    EnduranceViewBase();
 | 
			
		||||
    virtual ~EnduranceViewBase();
 | 
			
		||||
    virtual void setupScreen();
 | 
			
		||||
    virtual void handleKeyEvent(uint8_t key);
 | 
			
		||||
 | 
			
		||||
    /*
 | 
			
		||||
     * Virtual Action Handlers
 | 
			
		||||
     */
 | 
			
		||||
    virtual void decreasePowerLimit()
 | 
			
		||||
    {
 | 
			
		||||
        // Override and implement this function in Endurance
 | 
			
		||||
    }
 | 
			
		||||
    virtual void increasePowerLimit()
 | 
			
		||||
    {
 | 
			
		||||
        // Override and implement this function in Endurance
 | 
			
		||||
    }
 | 
			
		||||
    virtual void decreaseSpeedLimit()
 | 
			
		||||
    {
 | 
			
		||||
        // Override and implement this function in Endurance
 | 
			
		||||
    }
 | 
			
		||||
    virtual void increaseSpeedLimit()
 | 
			
		||||
    {
 | 
			
		||||
        // Override and implement this function in Endurance
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
protected:
 | 
			
		||||
    FrontendApplication& application() {
 | 
			
		||||
 | 
			
		||||
@ -0,0 +1,53 @@
 | 
			
		||||
/*********************************************************************************/
 | 
			
		||||
/********** THIS FILE IS GENERATED BY TOUCHGFX DESIGNER, DO NOT MODIFY ***********/
 | 
			
		||||
/*********************************************************************************/
 | 
			
		||||
#include <gui_generated/containers/ProgressBarBase.hpp>
 | 
			
		||||
#include <texts/TextKeysAndLanguages.hpp>
 | 
			
		||||
#include <touchgfx/Color.hpp>
 | 
			
		||||
#include <images/BitmapDatabase.hpp>
 | 
			
		||||
 | 
			
		||||
ProgressBarBase::ProgressBarBase()
 | 
			
		||||
{
 | 
			
		||||
    setWidth(456);
 | 
			
		||||
    setHeight(33);
 | 
			
		||||
    r2dProgressLabel.setPosition(168, -2, 219, 37);
 | 
			
		||||
    r2dProgressLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
 | 
			
		||||
    r2dProgressLabel.setLinespacing(0);
 | 
			
		||||
    r2dProgressLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_6EXA));
 | 
			
		||||
    r2dProgressLabel.setVisible(false);
 | 
			
		||||
    add(r2dProgressLabel);
 | 
			
		||||
 | 
			
		||||
    r2dLabel.setPosition(70, -2, 317, 37);
 | 
			
		||||
    r2dLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
 | 
			
		||||
    r2dLabel.setLinespacing(0);
 | 
			
		||||
    r2dLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_570K));
 | 
			
		||||
    r2dLabel.setVisible(false);
 | 
			
		||||
    add(r2dLabel);
 | 
			
		||||
 | 
			
		||||
    prechargeLabel.setXY(95, -2);
 | 
			
		||||
    prechargeLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
 | 
			
		||||
    prechargeLabel.setLinespacing(0);
 | 
			
		||||
    prechargeLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_G2S2));
 | 
			
		||||
    prechargeLabel.setVisible(false);
 | 
			
		||||
    add(prechargeLabel);
 | 
			
		||||
 | 
			
		||||
    progressBar.setXY(0, 0);
 | 
			
		||||
    progressBar.setProgressIndicatorPosition(0, 0, 480, 55);
 | 
			
		||||
    progressBar.setRange(0, 100);
 | 
			
		||||
    progressBar.setDirection(touchgfx::AbstractDirectionProgress::RIGHT);
 | 
			
		||||
    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);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
ProgressBarBase::~ProgressBarBase()
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void ProgressBarBase::initialize()
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@ -124,36 +124,8 @@ DriverViewViewBase::DriverViewViewBase() :
 | 
			
		||||
    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_PROG_HORIZ_BG_ID));
 | 
			
		||||
    progressBar.setColor(touchgfx::Color::getColorFromRGB(99, 186, 0));
 | 
			
		||||
    progressBar.setValue(0);
 | 
			
		||||
    progressBar.setVisible(false);
 | 
			
		||||
    statusBar.add(progressBar);
 | 
			
		||||
 | 
			
		||||
    prechargeLabel.setXY(95, -2);
 | 
			
		||||
    prechargeLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
 | 
			
		||||
    prechargeLabel.setLinespacing(0);
 | 
			
		||||
    prechargeLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_HMH2));
 | 
			
		||||
    prechargeLabel.setVisible(false);
 | 
			
		||||
    statusBar.add(prechargeLabel);
 | 
			
		||||
 | 
			
		||||
    r2dLabel.setPosition(70, -2, 317, 37);
 | 
			
		||||
    r2dLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
 | 
			
		||||
    r2dLabel.setLinespacing(0);
 | 
			
		||||
    r2dLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_NGUK));
 | 
			
		||||
    r2dLabel.setVisible(false);
 | 
			
		||||
    statusBar.add(r2dLabel);
 | 
			
		||||
 | 
			
		||||
    r2dProgressLabel.setPosition(168, -2, 219, 37);
 | 
			
		||||
    r2dProgressLabel.setColor(touchgfx::Color::getColorFromRGB(255, 255, 255));
 | 
			
		||||
    r2dProgressLabel.setLinespacing(0);
 | 
			
		||||
    r2dProgressLabel.setTypedText(touchgfx::TypedText(T___SINGLEUSE_J5UH));
 | 
			
		||||
    r2dProgressLabel.setVisible(false);
 | 
			
		||||
    statusBar.add(r2dProgressLabel);
 | 
			
		||||
 | 
			
		||||
    add(statusBar);
 | 
			
		||||
 | 
			
		||||
    errorPopup.setXY(12, 125);
 | 
			
		||||
@ -187,6 +159,7 @@ void DriverViewViewBase::setupScreen()
 | 
			
		||||
    statusPDU.initialize();
 | 
			
		||||
    statusINV.initialize();
 | 
			
		||||
    statusLV.initialize();
 | 
			
		||||
    progressBar.initialize();
 | 
			
		||||
    errorPopup.initialize();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -126,3 +126,42 @@ void EnduranceViewBase::setupScreen()
 | 
			
		||||
{
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void EnduranceViewBase::handleKeyEvent(uint8_t key)
 | 
			
		||||
{
 | 
			
		||||
    if(104 == key)
 | 
			
		||||
    {
 | 
			
		||||
        //DecreasePLim
 | 
			
		||||
        //When hardware button 104 clicked call virtual function
 | 
			
		||||
        //Call decreasePowerLimit
 | 
			
		||||
        decreasePowerLimit();
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if(108 == key)
 | 
			
		||||
    {
 | 
			
		||||
        //IncreasePLim
 | 
			
		||||
        //When hardware button 108 clicked call virtual function
 | 
			
		||||
        //Call increasePowerLimit
 | 
			
		||||
        increasePowerLimit();
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if(107 == key)
 | 
			
		||||
    {
 | 
			
		||||
        //DecreaseSLim
 | 
			
		||||
        //When hardware button 107 clicked call virtual function
 | 
			
		||||
        //Call decreaseSpeedLimit
 | 
			
		||||
        decreaseSpeedLimit();
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if(106 == key)
 | 
			
		||||
    {
 | 
			
		||||
        //IncreaseSLim
 | 
			
		||||
        //When hardware button 106 clicked call virtual function
 | 
			
		||||
        //Call increaseSpeedLimit
 | 
			
		||||
        increaseSpeedLimit();
 | 
			
		||||
    
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@ -1 +1 @@
 | 
			
		||||
{"remap":"yes","language":"GB","language_index":0,"indices":[["524","T_LV"],["404","T_PDU"],["516","T_SCS"],["520","T_SDC"],["512","T_R2D"],["509","T_TS"],["504","T_INV"],["392","T_AMS"],["235","T_ERROR_AMS"],["200","T_DEBUGVIEWFIELD_TITLE"],["200","T_DRIVERVIEWFIELD_TITLE"],["200","T_NUMBERSMALLWILDCARD"],["450","T_FIELD_BBAL"],["383","T_FIELD_TSVOLTVEH"],["376","T_FIELD_TSVOLTBAT"],["420","T_FIELD_LVSOC"],["444","T_FIELD_TSSOC"],["465","T_FIELD_MAXCELLTEMP"],["475","T_FIELD_TIREFL"],["480","T_FIELD_TIREFR"],["485","T_FIELD_TIRERL"],["490","T_FIELD_TIRERR"],["460","T_FIELD_LAPCOUNT"],["305","T_FIELD_INICHKSTATE"],["414","T_FIELD_ERR"],["520","T_FIELD_SDC"],["321","T_FIELD_INVRREADY"],["313","T_FIELD_INVLREADY"],["345","T_FIELD_R2DPROGRESS"],["329","T_FIELD_ACTIVEMISSION"],["289","T_FIELD_ASSTATE"],["361","T_FIELD_TSSTATE"],["200","T_NUMBERWILDCARD"],["200","T_DEFAULTWILDCARD_CENTERED"],["200","T_DEFAULTWILDCARD_RIGHTALIGNED"],["508","T_FIELD_TSCURRENT"],["495","T_FIELD_MINCELLVOLT"],["438","T_FIELD_SPEED"],["202","T_INSPECTION_HUGE"],["280","T_EBS_HUGE"],["224","T_TRACKDRIVE_HUGE"],["245","T_AUTOX_HUGE"],["353","T_SKIDPAD_HUGE"],["146","T_ACCEL_HUGE"],["35","T_INVALID_HUGE"],["116","T_MANUAL"],["202","T_INSPECTION"],["280","T_EBS"],["224","T_TRACKDRIVE"],["245","T_AUTOX"],["353","T_SKIDPAD"],["146","T_ACCEL"],["268","T___SINGLEUSE_B2Q6"],["265","T___SINGLEUSE_OP6C"],["438","T___SINGLEUSE_1F9T"],["432","T___SINGLEUSE_QAZ3"],["200","T___SINGLEUSE_DONW"],["200","T___SINGLEUSE_4X8X"],["265","T___SINGLEUSE_FPXE"],["265","T___SINGLEUSE_51AZ"],["185","T___SINGLEUSE_DJ62"],["159","T___SINGLEUSE_5W6Y"],["197","T___SINGLEUSE_C17G"],["390","T___SINGLEUSE_XFW7"],["396","T___SINGLEUSE_N50J"],["500","T___SINGLEUSE_V38H"],["470","T___SINGLEUSE_XC1X"],["271","T___SINGLEUSE_KI1B"],["172","T___SINGLEUSE_QNHI"],["0","T___SINGLEUSE_43KA"],["402","T___SINGLEUSE_YRU7"],["455","T___SINGLEUSE_E6D7"],["200","T___SINGLEUSE_ZEKA"],["131","T___SINGLEUSE_0L75"],["100","T___SINGLEUSE_GA13"],["200","T___SINGLEUSE_THUG"],["200","T___SINGLEUSE_CO7A"],["200","T___SINGLEUSE_A0LF"],["200","T___SINGLEUSE_166C"],["84","T___SINGLEUSE_OOU3"],["68","T___SINGLEUSE_2FPP"],["200","T___SINGLEUSE_2S21"],["200","T___SINGLEUSE_OQ6P"],["337","T___SINGLEUSE_590R"],["297","T___SINGLEUSE_Z78U"],["200","T___SINGLEUSE_LLOZ"],["200","T___SINGLEUSE_232C"],["426","T___SINGLEUSE_JFR7"],["408","T___SINGLEUSE_3MDX"],["17","T___SINGLEUSE_F9I5"],["200","T___SINGLEUSE_9L8R"],["17","T___SINGLEUSE_1NKF"],["200","T___SINGLEUSE_J5UH"],["512","T___SINGLEUSE_NGUK"],["200","T___SINGLEUSE_4E84"],["200","T___SINGLEUSE_YTAB"],["213","T___SINGLEUSE_RWCE"],["255","T___SINGLEUSE_HMH2"],["265","T___SINGLEUSE_PHFD"],["369","T___SINGLEUSE_H6UX"],["200","T___SINGLEUSE_20H3"],["52","T___SINGLEUSE_M5X7"],["18","T___SINGLEUSE_6GPV"]]}
 | 
			
		||||
{"remap":"yes","language":"GB","language_index":0,"indices":[["524","T_LV"],["404","T_PDU"],["516","T_SCS"],["520","T_SDC"],["512","T_R2D"],["509","T_TS"],["504","T_INV"],["392","T_AMS"],["235","T_ERROR_AMS"],["200","T_DEBUGVIEWFIELD_TITLE"],["200","T_DRIVERVIEWFIELD_TITLE"],["200","T_NUMBERSMALLWILDCARD"],["450","T_FIELD_BBAL"],["383","T_FIELD_TSVOLTVEH"],["376","T_FIELD_TSVOLTBAT"],["420","T_FIELD_LVSOC"],["444","T_FIELD_TSSOC"],["465","T_FIELD_MAXCELLTEMP"],["475","T_FIELD_TIREFL"],["480","T_FIELD_TIREFR"],["485","T_FIELD_TIRERL"],["490","T_FIELD_TIRERR"],["460","T_FIELD_LAPCOUNT"],["305","T_FIELD_INICHKSTATE"],["414","T_FIELD_ERR"],["520","T_FIELD_SDC"],["321","T_FIELD_INVRREADY"],["313","T_FIELD_INVLREADY"],["345","T_FIELD_R2DPROGRESS"],["329","T_FIELD_ACTIVEMISSION"],["289","T_FIELD_ASSTATE"],["361","T_FIELD_TSSTATE"],["200","T_NUMBERWILDCARD"],["200","T_DEFAULTWILDCARD_CENTERED"],["200","T_DEFAULTWILDCARD_RIGHTALIGNED"],["508","T_FIELD_TSCURRENT"],["495","T_FIELD_MINCELLVOLT"],["438","T_FIELD_SPEED"],["202","T_INSPECTION_HUGE"],["280","T_EBS_HUGE"],["224","T_TRACKDRIVE_HUGE"],["245","T_AUTOX_HUGE"],["353","T_SKIDPAD_HUGE"],["146","T_ACCEL_HUGE"],["35","T_INVALID_HUGE"],["116","T_MANUAL"],["202","T_INSPECTION"],["280","T_EBS"],["224","T_TRACKDRIVE"],["245","T_AUTOX"],["353","T_SKIDPAD"],["146","T_ACCEL"],["200","T___SINGLEUSE_6EXA"],["512","T___SINGLEUSE_570K"],["255","T___SINGLEUSE_G2S2"],["268","T___SINGLEUSE_B2Q6"],["265","T___SINGLEUSE_OP6C"],["438","T___SINGLEUSE_1F9T"],["432","T___SINGLEUSE_QAZ3"],["200","T___SINGLEUSE_DONW"],["200","T___SINGLEUSE_4X8X"],["265","T___SINGLEUSE_FPXE"],["265","T___SINGLEUSE_51AZ"],["185","T___SINGLEUSE_DJ62"],["159","T___SINGLEUSE_5W6Y"],["197","T___SINGLEUSE_C17G"],["390","T___SINGLEUSE_XFW7"],["396","T___SINGLEUSE_N50J"],["500","T___SINGLEUSE_V38H"],["470","T___SINGLEUSE_XC1X"],["271","T___SINGLEUSE_KI1B"],["172","T___SINGLEUSE_QNHI"],["0","T___SINGLEUSE_43KA"],["402","T___SINGLEUSE_YRU7"],["455","T___SINGLEUSE_E6D7"],["200","T___SINGLEUSE_ZEKA"],["131","T___SINGLEUSE_0L75"],["100","T___SINGLEUSE_GA13"],["200","T___SINGLEUSE_THUG"],["200","T___SINGLEUSE_CO7A"],["200","T___SINGLEUSE_A0LF"],["200","T___SINGLEUSE_166C"],["84","T___SINGLEUSE_OOU3"],["68","T___SINGLEUSE_2FPP"],["200","T___SINGLEUSE_2S21"],["200","T___SINGLEUSE_OQ6P"],["337","T___SINGLEUSE_590R"],["297","T___SINGLEUSE_Z78U"],["200","T___SINGLEUSE_LLOZ"],["200","T___SINGLEUSE_232C"],["426","T___SINGLEUSE_JFR7"],["408","T___SINGLEUSE_3MDX"],["17","T___SINGLEUSE_F9I5"],["200","T___SINGLEUSE_9L8R"],["17","T___SINGLEUSE_1NKF"],["200","T___SINGLEUSE_4E84"],["200","T___SINGLEUSE_YTAB"],["213","T___SINGLEUSE_RWCE"],["265","T___SINGLEUSE_PHFD"],["369","T___SINGLEUSE_H6UX"],["200","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_B2Q6","T___SINGLEUSE_OP6C","T___SINGLEUSE_1F9T","T___SINGLEUSE_QAZ3","T___SINGLEUSE_DONW","T___SINGLEUSE_4X8X","T___SINGLEUSE_FPXE","T___SINGLEUSE_51AZ","T___SINGLEUSE_DJ62","T___SINGLEUSE_5W6Y","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"]}
 | 
			
		||||
{"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_6EXA","T___SINGLEUSE_570K","T___SINGLEUSE_G2S2","T___SINGLEUSE_B2Q6","T___SINGLEUSE_OP6C","T___SINGLEUSE_1F9T","T___SINGLEUSE_QAZ3","T___SINGLEUSE_DONW","T___SINGLEUSE_4X8X","T___SINGLEUSE_FPXE","T___SINGLEUSE_51AZ","T___SINGLEUSE_DJ62","T___SINGLEUSE_5W6Y","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_4E84","T___SINGLEUSE_YTAB","T___SINGLEUSE_RWCE","T___SINGLEUSE_PHFD","T___SINGLEUSE_H6UX","T___SINGLEUSE_20H3","T___SINGLEUSE_M5X7","T___SINGLEUSE_6GPV"]}
 | 
			
		||||
@ -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"],[4,"RIGHT","LTR"],[4,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[8,"CENTER","LTR"],[8,"CENTER","LTR"],[8,"RIGHT","LTR"],[8,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"LEFT","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"],[4,"RIGHT","LTR"],[4,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[8,"CENTER","LTR"],[8,"CENTER","LTR"],[8,"RIGHT","LTR"],[8,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"LEFT","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,"getFont_lucon_TTF_80_4bpp":8},"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"],[1,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"LEFT","LTR"],[4,"RIGHT","LTR"],[4,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[8,"CENTER","LTR"],[8,"CENTER","LTR"],[8,"RIGHT","LTR"],[8,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"LEFT","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"],[4,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"CENTER","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,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"LEFT","LTR"],[4,"RIGHT","LTR"],[4,"RIGHT","LTR"],[2,"LEFT","LTR"],[2,"LEFT","LTR"],[8,"CENTER","LTR"],[8,"CENTER","LTR"],[8,"RIGHT","LTR"],[8,"RIGHT","LTR"],[2,"CENTER","LTR"],[2,"LEFT","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"],[4,"RIGHT","LTR"],[1,"LEFT","LTR"],[1,"CENTER","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,"getFont_lucon_TTF_80_4bpp":8},"generate_font_format":"0"}
 | 
			
		||||
@ -64,6 +64,9 @@ enum TEXTS
 | 
			
		||||
    T_AUTOX,
 | 
			
		||||
    T_SKIDPAD,
 | 
			
		||||
    T_ACCEL,
 | 
			
		||||
    T___SINGLEUSE_6EXA,
 | 
			
		||||
    T___SINGLEUSE_570K,
 | 
			
		||||
    T___SINGLEUSE_G2S2,
 | 
			
		||||
    T___SINGLEUSE_B2Q6,
 | 
			
		||||
    T___SINGLEUSE_OP6C,
 | 
			
		||||
    T___SINGLEUSE_1F9T,
 | 
			
		||||
@ -104,12 +107,9 @@ enum TEXTS
 | 
			
		||||
    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,
 | 
			
		||||
 | 
			
		||||
@ -62,6 +62,9 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
 | 
			
		||||
    245, // T_AUTOX: "Autocross"
 | 
			
		||||
    353, // T_SKIDPAD: "Skidpad"
 | 
			
		||||
    146, // T_ACCEL: "Acceleration"
 | 
			
		||||
    200, // T___SINGLEUSE_6EXA: "<>"
 | 
			
		||||
    512, // T___SINGLEUSE_570K: "R2D"
 | 
			
		||||
    255, // T___SINGLEUSE_G2S2: "PRECHARGE"
 | 
			
		||||
    268, // T___SINGLEUSE_B2Q6: "<>?"
 | 
			
		||||
    265, // T___SINGLEUSE_OP6C: "<>%"
 | 
			
		||||
    438, // T___SINGLEUSE_1F9T: "SPEED"
 | 
			
		||||
@ -102,12 +105,9 @@ KEEP extern const uint32_t indicesGb[] TEXT_LOCATION_FLASH_ATTRIBUTE = {
 | 
			
		||||
    17,  // T___SINGLEUSE_F9I5: ""
 | 
			
		||||
    200, // T___SINGLEUSE_9L8R: "<>"
 | 
			
		||||
    17,  // T___SINGLEUSE_1NKF: ""
 | 
			
		||||
    200, // T___SINGLEUSE_J5UH: "<>"
 | 
			
		||||
    512, // T___SINGLEUSE_NGUK: "R2D"
 | 
			
		||||
    200, // T___SINGLEUSE_4E84: "<>"
 | 
			
		||||
    200, // T___SINGLEUSE_YTAB: "<>"
 | 
			
		||||
    213, // T___SINGLEUSE_RWCE: "PARAMETERS"
 | 
			
		||||
    255, // T___SINGLEUSE_HMH2: "PRECHARGE"
 | 
			
		||||
    265, // T___SINGLEUSE_PHFD: "<>%"
 | 
			
		||||
    369, // T___SINGLEUSE_H6UX: "BRAKES"
 | 
			
		||||
    200, // T___SINGLEUSE_20H3: "<>"
 | 
			
		||||
 | 
			
		||||
@ -84,6 +84,9 @@ 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 },
 | 
			
		||||
    { 1, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 4, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 4, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
@ -124,12 +127,9 @@ const touchgfx::TypedText::TypedTextData typedText_database_GB[] TEXT_LOCATION_F
 | 
			
		||||
    { 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 },
 | 
			
		||||
    { 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 4, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 1, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 4, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
@ -190,6 +190,9 @@ 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 },
 | 
			
		||||
    { 1, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 4, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 4, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 2, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
@ -230,12 +233,9 @@ const touchgfx::TypedText::TypedTextData typedText_database_DEFAULT[] TEXT_LOCAT
 | 
			
		||||
    { 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 },
 | 
			
		||||
    { 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 4, touchgfx::RIGHT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 1, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 1, touchgfx::LEFT, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 2, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
    { 4, touchgfx::CENTER, touchgfx::TEXT_DIRECTION_LTR },
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										23
									
								
								TouchGFX/gui/include/gui/containers/ProgressBar.hpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										23
									
								
								TouchGFX/gui/include/gui/containers/ProgressBar.hpp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,23 @@
 | 
			
		||||
#ifndef PROGRESSBAR_HPP
 | 
			
		||||
#define PROGRESSBAR_HPP
 | 
			
		||||
 | 
			
		||||
#include <gui_generated/containers/ProgressBarBase.hpp>
 | 
			
		||||
 | 
			
		||||
enum class ProgressType { PRECHARGE, R2D };
 | 
			
		||||
 | 
			
		||||
class ProgressBar : public ProgressBarBase {
 | 
			
		||||
public:
 | 
			
		||||
  ProgressBar();
 | 
			
		||||
  virtual ~ProgressBar() {}
 | 
			
		||||
 | 
			
		||||
  virtual void initialize();
 | 
			
		||||
 | 
			
		||||
  void setProgress(bool active, ProgressType type, float progress);
 | 
			
		||||
 | 
			
		||||
protected:
 | 
			
		||||
private:
 | 
			
		||||
  touchgfx::Unicode::UnicodeChar r2dProgBuffer[16];
 | 
			
		||||
  touchgfx::Unicode::UnicodeChar socBuffer[4];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#endif // PROGRESSBAR_HPP
 | 
			
		||||
@ -3,15 +3,12 @@
 | 
			
		||||
 | 
			
		||||
#include "gui/common/NamedField.hpp"
 | 
			
		||||
#include "gui/containers/DriverViewFieldSelection.hpp"
 | 
			
		||||
#include "touchgfx/Unicode.hpp"
 | 
			
		||||
#include "touchgfx/containers/scrollers/DrawableList.hpp"
 | 
			
		||||
#include "gui/containers/ProgressBar.hpp"
 | 
			
		||||
#include <gui/driverview_screen/DriverViewPresenter.hpp>
 | 
			
		||||
#include <gui_generated/driverview_screen/DriverViewViewBase.hpp>
 | 
			
		||||
 | 
			
		||||
#include "vehicle_state.h"
 | 
			
		||||
 | 
			
		||||
enum class DriverViewProgressType { PRECHARGE, R2D };
 | 
			
		||||
 | 
			
		||||
class DriverViewView : public DriverViewViewBase {
 | 
			
		||||
public:
 | 
			
		||||
  DriverViewView();
 | 
			
		||||
@ -28,7 +25,7 @@ public:
 | 
			
		||||
 | 
			
		||||
  void setTemps(const Temperatures &temps);
 | 
			
		||||
  void setTSSoC(uint8_t soc);
 | 
			
		||||
  void setProgress(bool active, DriverViewProgressType type, float progress);
 | 
			
		||||
  void setProgress(bool active, ProgressType type, float progress);
 | 
			
		||||
 | 
			
		||||
  void showAMSError();
 | 
			
		||||
  void clearErrorPopup();
 | 
			
		||||
@ -53,7 +50,6 @@ private:
 | 
			
		||||
  size_t selectedFieldIndex;
 | 
			
		||||
  DataFieldType fieldTypes[NUM_FIELDS];
 | 
			
		||||
 | 
			
		||||
  touchgfx::Unicode::UnicodeChar r2dProgBuffer[16];
 | 
			
		||||
  touchgfx::Unicode::UnicodeChar socBuffer[4];
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										45
									
								
								TouchGFX/gui/src/containers/ProgressBar.cpp
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								TouchGFX/gui/src/containers/ProgressBar.cpp
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,45 @@
 | 
			
		||||
#include "gui/common/NamedField.hpp"
 | 
			
		||||
#include <gui/containers/ProgressBar.hpp>
 | 
			
		||||
 | 
			
		||||
ProgressBar::ProgressBar() {}
 | 
			
		||||
 | 
			
		||||
void ProgressBar::initialize() { ProgressBarBase::initialize(); }
 | 
			
		||||
 | 
			
		||||
void ProgressBar::setProgress(bool active, ProgressType type, float progress) {
 | 
			
		||||
  if (active) {
 | 
			
		||||
    switch (type) {
 | 
			
		||||
    case ProgressType::PRECHARGE:
 | 
			
		||||
      prechargeLabel.setVisible(true);
 | 
			
		||||
      r2dLabel.setVisible(false);
 | 
			
		||||
      r2dProgressLabel.setVisible(false);
 | 
			
		||||
      progressBar.setValue(progress);
 | 
			
		||||
      break;
 | 
			
		||||
    case ProgressType::R2D:
 | 
			
		||||
      const char *progText = static_cast<const char *>(get_r2dprog_text());
 | 
			
		||||
      touchgfx::Unicode::strncpy(r2dProgBuffer, progText,
 | 
			
		||||
                                 sizeof(r2dProgBuffer) /
 | 
			
		||||
                                     sizeof(*r2dProgBuffer));
 | 
			
		||||
      r2dProgressLabel.setWildcard(r2dProgBuffer);
 | 
			
		||||
      r2dProgressLabel.setVisible(true);
 | 
			
		||||
      r2dLabel.setVisible(true);
 | 
			
		||||
      prechargeLabel.setVisible(false);
 | 
			
		||||
      progress = progress - R2D_TSACTIVE;
 | 
			
		||||
      progressBar.setValue(progress * 100 / 5);
 | 
			
		||||
      break;
 | 
			
		||||
    }
 | 
			
		||||
    prechargeLabel.invalidate();
 | 
			
		||||
    r2dProgressLabel.invalidate();
 | 
			
		||||
    r2dLabel.invalidate();
 | 
			
		||||
    progressBar.setVisible(true);
 | 
			
		||||
    progressBar.invalidate();
 | 
			
		||||
  } else if (progressBar.isVisible()) {
 | 
			
		||||
    prechargeLabel.setVisible(false);
 | 
			
		||||
    prechargeLabel.invalidate();
 | 
			
		||||
    r2dLabel.setVisible(false);
 | 
			
		||||
    r2dLabel.invalidate();
 | 
			
		||||
    r2dProgressLabel.setVisible(false);
 | 
			
		||||
    r2dProgressLabel.invalidate();
 | 
			
		||||
    progressBar.setVisible(false);
 | 
			
		||||
    progressBar.invalidate();
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
@ -2,6 +2,7 @@
 | 
			
		||||
#include <gui/driverview_screen/DriverViewView.hpp>
 | 
			
		||||
 | 
			
		||||
#include "gui/common/NamedField.hpp"
 | 
			
		||||
#include "gui/containers/ProgressBar.hpp"
 | 
			
		||||
 | 
			
		||||
constexpr int32_t SHOW_ERRORS_FOR = 10000; // ms
 | 
			
		||||
 | 
			
		||||
@ -48,13 +49,12 @@ void DriverViewPresenter::updateProgress() {
 | 
			
		||||
      progress =
 | 
			
		||||
          vehicle_state.ts_voltage_veh / vehicle_state.ts_voltage_bat * 100;
 | 
			
		||||
    }
 | 
			
		||||
    view.setProgress(true, DriverViewProgressType::PRECHARGE, progress);
 | 
			
		||||
    view.setProgress(true, ProgressType::PRECHARGE, progress);
 | 
			
		||||
  } else if (vehicle_state.r2d_progress > R2D_TSACTIVE &&
 | 
			
		||||
             vehicle_state.r2d_progress < R2D_INIT_SUCCESS) {
 | 
			
		||||
    view.setProgress(true, DriverViewProgressType::R2D,
 | 
			
		||||
                     vehicle_state.r2d_progress);
 | 
			
		||||
    view.setProgress(true, ProgressType::R2D, vehicle_state.r2d_progress);
 | 
			
		||||
  } else {
 | 
			
		||||
    view.setProgress(false, DriverViewProgressType::PRECHARGE, 0);
 | 
			
		||||
    view.setProgress(false, ProgressType::PRECHARGE, 0);
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,7 @@
 | 
			
		||||
#include "gui/common/NamedField.hpp"
 | 
			
		||||
#include "gui/containers/DriverViewField.hpp"
 | 
			
		||||
#include "gui/containers/DriverViewStatusItem.hpp"
 | 
			
		||||
#include "gui/containers/ProgressBar.hpp"
 | 
			
		||||
#include "gui/driverview_screen/DriverViewPresenter.hpp"
 | 
			
		||||
#include "texts/TextKeysAndLanguages.hpp"
 | 
			
		||||
#include "touchgfx/Callback.hpp"
 | 
			
		||||
@ -96,44 +97,9 @@ void DriverViewView::setTSSoC(uint8_t value) {
 | 
			
		||||
  socLabel.invalidate();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void DriverViewView::setProgress(bool active, DriverViewProgressType type,
 | 
			
		||||
void DriverViewView::setProgress(bool active, ProgressType type,
 | 
			
		||||
                                 float progress) {
 | 
			
		||||
  if (active) {
 | 
			
		||||
    switch (type) {
 | 
			
		||||
    case DriverViewProgressType::PRECHARGE:
 | 
			
		||||
      prechargeLabel.setVisible(true);
 | 
			
		||||
      r2dLabel.setVisible(false);
 | 
			
		||||
      r2dProgressLabel.setVisible(false);
 | 
			
		||||
      progressBar.setValue(progress);
 | 
			
		||||
      break;
 | 
			
		||||
    case DriverViewProgressType::R2D:
 | 
			
		||||
      const char *progText = static_cast<const char *>(get_r2dprog_text());
 | 
			
		||||
      touchgfx::Unicode::strncpy(r2dProgBuffer, progText,
 | 
			
		||||
                                 sizeof(r2dProgBuffer) /
 | 
			
		||||
                                     sizeof(*r2dProgBuffer));
 | 
			
		||||
      r2dProgressLabel.setWildcard(r2dProgBuffer);
 | 
			
		||||
      r2dProgressLabel.setVisible(true);
 | 
			
		||||
      r2dLabel.setVisible(true);
 | 
			
		||||
      prechargeLabel.setVisible(false);
 | 
			
		||||
      progress = progress - R2D_TSACTIVE;
 | 
			
		||||
      progressBar.setValue(progress * 100 / 5);
 | 
			
		||||
      break;
 | 
			
		||||
    }
 | 
			
		||||
    prechargeLabel.invalidate();
 | 
			
		||||
    r2dProgressLabel.invalidate();
 | 
			
		||||
    r2dLabel.invalidate();
 | 
			
		||||
    progressBar.setVisible(true);
 | 
			
		||||
    progressBar.invalidate();
 | 
			
		||||
  } else if (progressBar.isVisible()) {
 | 
			
		||||
    prechargeLabel.setVisible(false);
 | 
			
		||||
    prechargeLabel.invalidate();
 | 
			
		||||
    r2dLabel.setVisible(false);
 | 
			
		||||
    r2dLabel.invalidate();
 | 
			
		||||
    r2dProgressLabel.setVisible(false);
 | 
			
		||||
    r2dProgressLabel.invalidate();
 | 
			
		||||
    progressBar.setVisible(false);
 | 
			
		||||
    progressBar.invalidate();
 | 
			
		||||
  }
 | 
			
		||||
  progressBar.setProgress(active, type, progress);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
void DriverViewView::showAMSError() {
 | 
			
		||||
 | 
			
		||||
@ -11,7 +11,7 @@
 | 
			
		||||
            "X": 41,
 | 
			
		||||
            "Y": 15,
 | 
			
		||||
            "Width": 397,
 | 
			
		||||
            "Height": 30,
 | 
			
		||||
            "Height": 37,
 | 
			
		||||
            "TextId": "__SingleUse_6GPV",
 | 
			
		||||
            "TextRotation": "0",
 | 
			
		||||
            "Color": {
 | 
			
		||||
@ -1112,70 +1112,11 @@
 | 
			
		||||
                ]
 | 
			
		||||
              },
 | 
			
		||||
              {
 | 
			
		||||
                "Type": "BoxProgress",
 | 
			
		||||
                "Type": "CustomContainerInstance",
 | 
			
		||||
                "Name": "progressBar",
 | 
			
		||||
                "Width": 456,
 | 
			
		||||
                "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": 95,
 | 
			
		||||
                "Y": -2,
 | 
			
		||||
                "Width": 269,
 | 
			
		||||
                "Height": 30,
 | 
			
		||||
                "Visible": false,
 | 
			
		||||
                "TextId": "__SingleUse_HMH2",
 | 
			
		||||
                "TextRotation": "0",
 | 
			
		||||
                "Color": {
 | 
			
		||||
                  "Red": 255,
 | 
			
		||||
                  "Green": 255,
 | 
			
		||||
                  "Blue": 255
 | 
			
		||||
                },
 | 
			
		||||
                "AutoSize": true
 | 
			
		||||
              },
 | 
			
		||||
              {
 | 
			
		||||
                "Type": "TextArea",
 | 
			
		||||
                "Name": "r2dLabel",
 | 
			
		||||
                "X": 70,
 | 
			
		||||
                "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": 168,
 | 
			
		||||
                "Y": -2,
 | 
			
		||||
                "Width": 219,
 | 
			
		||||
                "Height": 37,
 | 
			
		||||
                "Visible": false,
 | 
			
		||||
                "TextId": "__SingleUse_J5UH",
 | 
			
		||||
                "TextRotation": "0",
 | 
			
		||||
                "Color": {
 | 
			
		||||
                  "Red": 255,
 | 
			
		||||
                  "Green": 255,
 | 
			
		||||
                  "Blue": 255
 | 
			
		||||
                },
 | 
			
		||||
                "Wildcard1": {}
 | 
			
		||||
                "CustomContainerDefinitionName": "ProgressBar"
 | 
			
		||||
              }
 | 
			
		||||
            ]
 | 
			
		||||
          },
 | 
			
		||||
@ -1709,7 +1650,7 @@
 | 
			
		||||
                "X": 27,
 | 
			
		||||
                "Y": 2,
 | 
			
		||||
                "Width": 99,
 | 
			
		||||
                "Height": 24,
 | 
			
		||||
                "Height": 25,
 | 
			
		||||
                "TextId": "__SingleUse_QAZ3",
 | 
			
		||||
                "TextRotation": "0",
 | 
			
		||||
                "Color": {
 | 
			
		||||
@ -1725,7 +1666,7 @@
 | 
			
		||||
                "X": 329,
 | 
			
		||||
                "Y": 2,
 | 
			
		||||
                "Width": 102,
 | 
			
		||||
                "Height": 24,
 | 
			
		||||
                "Height": 25,
 | 
			
		||||
                "TextId": "__SingleUse_1F9T",
 | 
			
		||||
                "TextRotation": "0",
 | 
			
		||||
                "Color": {
 | 
			
		||||
@ -1880,7 +1821,7 @@
 | 
			
		||||
                "X": 8,
 | 
			
		||||
                "Y": 7,
 | 
			
		||||
                "Width": 203,
 | 
			
		||||
                "Height": 24,
 | 
			
		||||
                "Height": 25,
 | 
			
		||||
                "TextId": "__SingleUse_5W6Y",
 | 
			
		||||
                "TextRotation": "0",
 | 
			
		||||
                "Color": {
 | 
			
		||||
@ -1909,7 +1850,52 @@
 | 
			
		||||
            ]
 | 
			
		||||
          }
 | 
			
		||||
        ],
 | 
			
		||||
        "Interactions": []
 | 
			
		||||
        "Interactions": [
 | 
			
		||||
          {
 | 
			
		||||
            "InteractionName": "DecreasePLim",
 | 
			
		||||
            "Trigger": {
 | 
			
		||||
              "Type": "TriggerPhysicalButtonClicked",
 | 
			
		||||
              "ButtonKey": 104
 | 
			
		||||
            },
 | 
			
		||||
            "Action": {
 | 
			
		||||
              "Type": "ActionCustom",
 | 
			
		||||
              "FunctionName": "decreasePowerLimit"
 | 
			
		||||
            }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            "InteractionName": "IncreasePLim",
 | 
			
		||||
            "Trigger": {
 | 
			
		||||
              "Type": "TriggerPhysicalButtonClicked",
 | 
			
		||||
              "ButtonKey": 108
 | 
			
		||||
            },
 | 
			
		||||
            "Action": {
 | 
			
		||||
              "Type": "ActionCustom",
 | 
			
		||||
              "FunctionName": "increasePowerLimit"
 | 
			
		||||
            }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            "InteractionName": "DecreaseSLim",
 | 
			
		||||
            "Trigger": {
 | 
			
		||||
              "Type": "TriggerPhysicalButtonClicked",
 | 
			
		||||
              "ButtonKey": 107
 | 
			
		||||
            },
 | 
			
		||||
            "Action": {
 | 
			
		||||
              "Type": "ActionCustom",
 | 
			
		||||
              "FunctionName": "decreaseSpeedLimit"
 | 
			
		||||
            }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            "InteractionName": "IncreaseSLim",
 | 
			
		||||
            "Trigger": {
 | 
			
		||||
              "Type": "TriggerPhysicalButtonClicked",
 | 
			
		||||
              "ButtonKey": 106
 | 
			
		||||
            },
 | 
			
		||||
            "Action": {
 | 
			
		||||
              "Type": "ActionCustom",
 | 
			
		||||
              "FunctionName": "increaseSpeedLimit"
 | 
			
		||||
            }
 | 
			
		||||
          }
 | 
			
		||||
        ]
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
    "CustomContainerDefinitions": [
 | 
			
		||||
@ -2390,6 +2376,82 @@
 | 
			
		||||
          }
 | 
			
		||||
        ],
 | 
			
		||||
        "Interactions": []
 | 
			
		||||
      },
 | 
			
		||||
      {
 | 
			
		||||
        "Name": "ProgressBar",
 | 
			
		||||
        "X": -80,
 | 
			
		||||
        "Y": 80,
 | 
			
		||||
        "Width": 456,
 | 
			
		||||
        "Height": 33,
 | 
			
		||||
        "Components": [
 | 
			
		||||
          {
 | 
			
		||||
            "Type": "TextArea",
 | 
			
		||||
            "Name": "r2dProgressLabel",
 | 
			
		||||
            "X": 168,
 | 
			
		||||
            "Y": -2,
 | 
			
		||||
            "Width": 219,
 | 
			
		||||
            "Height": 37,
 | 
			
		||||
            "Visible": false,
 | 
			
		||||
            "TextId": "__SingleUse_6EXA",
 | 
			
		||||
            "TextRotation": "0",
 | 
			
		||||
            "Color": {
 | 
			
		||||
              "Red": 255,
 | 
			
		||||
              "Green": 255,
 | 
			
		||||
              "Blue": 255
 | 
			
		||||
            },
 | 
			
		||||
            "Wildcard1": {}
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            "Type": "TextArea",
 | 
			
		||||
            "Name": "r2dLabel",
 | 
			
		||||
            "X": 70,
 | 
			
		||||
            "Y": -2,
 | 
			
		||||
            "Width": 317,
 | 
			
		||||
            "Height": 37,
 | 
			
		||||
            "Visible": false,
 | 
			
		||||
            "TextId": "__SingleUse_570K",
 | 
			
		||||
            "TextRotation": "0",
 | 
			
		||||
            "Color": {
 | 
			
		||||
              "Red": 255,
 | 
			
		||||
              "Green": 255,
 | 
			
		||||
              "Blue": 255
 | 
			
		||||
            }
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            "Type": "TextArea",
 | 
			
		||||
            "Name": "prechargeLabel",
 | 
			
		||||
            "X": 95,
 | 
			
		||||
            "Y": -2,
 | 
			
		||||
            "Width": 269,
 | 
			
		||||
            "Height": 37,
 | 
			
		||||
            "Visible": false,
 | 
			
		||||
            "TextId": "__SingleUse_G2S2",
 | 
			
		||||
            "TextRotation": "0",
 | 
			
		||||
            "Color": {
 | 
			
		||||
              "Red": 255,
 | 
			
		||||
              "Green": 255,
 | 
			
		||||
              "Blue": 255
 | 
			
		||||
            },
 | 
			
		||||
            "AutoSize": true
 | 
			
		||||
          },
 | 
			
		||||
          {
 | 
			
		||||
            "Type": "BoxProgress",
 | 
			
		||||
            "Name": "progressBar",
 | 
			
		||||
            "Width": 456,
 | 
			
		||||
            "Height": 33,
 | 
			
		||||
            "Visible": false,
 | 
			
		||||
            "Color": {
 | 
			
		||||
              "Red": 99,
 | 
			
		||||
              "Green": 186
 | 
			
		||||
            },
 | 
			
		||||
            "Direction": "Right",
 | 
			
		||||
            "FileNameBackground": "prog_horiz_bg.png",
 | 
			
		||||
            "IndicatorPositionWidth": 480,
 | 
			
		||||
            "IndicatorPositionHeight": 55,
 | 
			
		||||
            "ProgressRangeMax": 100
 | 
			
		||||
          }
 | 
			
		||||
        ],
 | 
			
		||||
        "Interactions": []
 | 
			
		||||
      }
 | 
			
		||||
    ],
 | 
			
		||||
    "Name": "SteeringWheel",
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user