Cornelius Bezuidenhout / Mbed OS Heiko

Dependencies:   BSP_DISCO_F746NG F746_GUI LCD_DISCO_F746NG SDFileSystem TS_DISCO_F746NG ResistiveTouchController Map CYS8218Controller MedianFilter

Committer:
Kerneels Bezuidenhout
Date:
Sun Oct 02 10:08:24 2016 +0200
Revision:
11:e3e259474d2b
Child:
14:5beb6b4850b7
Added ManualControlScreen.cpp and ManualControlScreen.hpp

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kerneels Bezuidenhout 11:e3e259474d2b 1 #include "ManualControlScreen.hpp"
Kerneels Bezuidenhout 11:e3e259474d2b 2
Kerneels Bezuidenhout 11:e3e259474d2b 3 ManualControlScreen::ManualControlScreen(int *nextScreen, float *alpha, float *beta) :
Kerneels Bezuidenhout 11:e3e259474d2b 4 Screen(),
Kerneels Bezuidenhout 11:e3e259474d2b 5 _lbTitle( SCREEN_W/2, 0, "Manual", Label::CENTER, Font24),
Kerneels Bezuidenhout 11:e3e259474d2b 6 _btBack( 0, SCREEN_H-30, 100, 30, "Back"),
Kerneels Bezuidenhout 11:e3e259474d2b 7 _btReset( SCREEN_W-100, SCREEN_H-30, 100, 30, "Reset"),
Kerneels Bezuidenhout 11:e3e259474d2b 8 _tpManual( (SCREEN_W/2)-104, 29, 208 208, -10.0,10.0,-10.0,10.0, 5)
Kerneels Bezuidenhout 11:e3e259474d2b 9 {
Kerneels Bezuidenhout 11:e3e259474d2b 10 _nextScreen = nextScreen;
Kerneels Bezuidenhout 11:e3e259474d2b 11 _alpha = alpha;
Kerneels Bezuidenhout 11:e3e259474d2b 12 _beta = beta;
Kerneels Bezuidenhout 11:e3e259474d2b 13 }
Kerneels Bezuidenhout 11:e3e259474d2b 14
Kerneels Bezuidenhout 11:e3e259474d2b 15 void ManualControlScreen::Draw()
Kerneels Bezuidenhout 11:e3e259474d2b 16 {
Kerneels Bezuidenhout 11:e3e259474d2b 17 Clear(),
Kerneels Bezuidenhout 11:e3e259474d2b 18 _lbTitle.Draw();
Kerneels Bezuidenhout 11:e3e259474d2b 19 _btBack.Draw();
Kerneels Bezuidenhout 11:e3e259474d2b 20 _btReset.Draw();
Kerneels Bezuidenhout 11:e3e259474d2b 21 _tpManual.Draw();
Kerneels Bezuidenhout 11:e3e259474d2b 22 }
Kerneels Bezuidenhout 11:e3e259474d2b 23
Kerneels Bezuidenhout 11:e3e259474d2b 24 void ManualControlScreen::Process()
Kerneels Bezuidenhout 11:e3e259474d2b 25 {
Kerneels Bezuidenhout 11:e3e259474d2b 26 if( _btBack.Touched() )
Kerneels Bezuidenhout 11:e3e259474d2b 27 *_nextScreen = MAIN_MENU_SCREEN;
Kerneels Bezuidenhout 11:e3e259474d2b 28
Kerneels Bezuidenhout 11:e3e259474d2b 29 if( _btReset.Touched() )
Kerneels Bezuidenhout 11:e3e259474d2b 30 {
Kerneels Bezuidenhout 11:e3e259474d2b 31 _btReset.Draw();
Kerneels Bezuidenhout 11:e3e259474d2b 32 _tpManual.Reset();
Kerneels Bezuidenhout 11:e3e259474d2b 33 SetValues();
Kerneels Bezuidenhout 11:e3e259474d2b 34 Thread::wait(200);
Kerneels Bezuidenhout 11:e3e259474d2b 35 }
Kerneels Bezuidenhout 11:e3e259474d2b 36
Kerneels Bezuidenhout 11:e3e259474d2b 37 if( _tpManual.Touched() )
Kerneels Bezuidenhout 11:e3e259474d2b 38 {
Kerneels Bezuidenhout 11:e3e259474d2b 39 _tpManual.Update();
Kerneels Bezuidenhout 11:e3e259474d2b 40 SetValues();
Kerneels Bezuidenhout 11:e3e259474d2b 41 Thread::wait(20);
Kerneels Bezuidenhout 11:e3e259474d2b 42 }
Kerneels Bezuidenhout 11:e3e259474d2b 43 }
Kerneels Bezuidenhout 11:e3e259474d2b 44
Kerneels Bezuidenhout 11:e3e259474d2b 45 void ManualControlScreen::SetValues()
Kerneels Bezuidenhout 11:e3e259474d2b 46 {
Kerneels Bezuidenhout 11:e3e259474d2b 47 *_alpha = _tpManual.GetX();
Kerneels Bezuidenhout 11:e3e259474d2b 48 *_beta = _tpManual.GetY();
Kerneels Bezuidenhout 11:e3e259474d2b 49 }