Get started on driver view

This commit is contained in:
2023-03-15 18:43:38 +01:00
parent 641fa3b236
commit 5b6405cf29
47 changed files with 2137 additions and 30 deletions

View File

@ -0,0 +1,24 @@
#ifndef TIRETEMP_HPP
#define TIRETEMP_HPP
#include <gui_generated/containers/TireTempBase.hpp>
#include <sys/_stdint.h>
class TireTemp : public TireTempBase {
public:
TireTemp();
virtual ~TireTemp() {}
virtual void initialize();
virtual void setTemp(int temp_in_celsius);
protected:
private:
unsigned temp;
Unicode::UnicodeChar valueBuffer[3];
void updateValueBuffer();
};
#endif // TIRETEMP_HPP

View File

@ -0,0 +1,38 @@
#ifndef DRIVERVIEWPRESENTER_HPP
#define DRIVERVIEWPRESENTER_HPP
#include <gui/model/ModelListener.hpp>
#include <mvp/Presenter.hpp>
using namespace touchgfx;
class DriverViewView;
class DriverViewPresenter : public touchgfx::Presenter, public ModelListener {
public:
DriverViewPresenter(DriverViewView &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();
/**
* 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 ~DriverViewPresenter(){};
void tireTempsUpdated() override;
private:
DriverViewPresenter();
DriverViewView &view;
};
#endif // DRIVERVIEWPRESENTER_HPP

View File

@ -0,0 +1,20 @@
#ifndef DRIVERVIEWVIEW_HPP
#define DRIVERVIEWVIEW_HPP
#include "vehicle.h"
#include <gui/driverview_screen/DriverViewPresenter.hpp>
#include <gui_generated/driverview_screen/DriverViewViewBase.hpp>
class DriverViewView : public DriverViewViewBase {
public:
DriverViewView();
virtual ~DriverViewView() {}
virtual void setupScreen();
virtual void tearDownScreen();
void setTireTemps(const TireTemps &temps);
protected:
};
#endif // DRIVERVIEWVIEW_HPP

View File

@ -2,6 +2,7 @@
#define MODEL_HPP
#include "stw_defines.h"
#include "vehicle.h"
class ModelListener;
class Model {
@ -14,12 +15,14 @@ public:
void setMission(Mission mission) { this->mission = mission; }
Mission getMission() { return mission; }
TireTemps getTireTemps() { return tireTemps; }
protected:
ModelListener *modelListener;
private:
Mission mission;
TireTemps tireTemps;
};
#endif // MODEL_HPP

View File

@ -13,6 +13,8 @@ public:
void bind(Model *m) { model = m; }
virtual void tireTempsUpdated(){};
protected:
Model *model;
};