Started a gui menuflow

Dependencies:   LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI

Revision:
3:b029a3f73a9e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Screens.cpp	Thu Jun 11 22:55:06 2020 +0000
@@ -0,0 +1,143 @@
+#include "TS_DISCO_F429ZI.h"
+#include "LCD_DISCO_F429ZI.h" 
+#include "Screens.h"
+#include "main.h"
+
+bool refreshScreen = true;
+// Pos 1 2 (row of button )
+void DrawBigButton(LCD_DISCO_F429ZI lcd, uint8_t position, char* array)
+{
+   BSP_LCD_SetFont(&Font20);  
+   uint8_t text_array[30];
+   sprintf((char*)text_array, array);  
+   switch (position)
+   {
+       case 1:
+       lcd.DrawRect(BigButtonX, BigButton1Y, BigButtonWidth , BigButtonHeight );
+       lcd.DisplayStringAt(0, LINE(4), (uint8_t *)&text_array, CENTER_MODE);
+       break;
+       case 2:
+       lcd.DrawRect(BigButtonX, BigButton2Y, BigButtonWidth , BigButtonHeight );
+       lcd.DisplayStringAt(0, LINE(7), (uint8_t *)&text_array, CENTER_MODE);
+       break;
+       case 3:
+       lcd.DrawRect(BigButtonX,BigButton3Y,BigButtonWidth ,BigButtonHeight );
+       lcd.DisplayStringAt(0, LINE(10), (uint8_t *)&text_array, CENTER_MODE);
+       break;
+       case 4:
+       lcd.DrawRect(BigButtonX,BigButton4Y,BigButtonWidth ,BigButtonHeight );
+       lcd.DisplayStringAt(0, LINE(13), (uint8_t *)&text_array, CENTER_MODE);
+       default:
+       break;
+   }
+}
+
+void CreatStartupScreen(LCD_DISCO_F429ZI lcd)
+{
+    lcd.Clear(LCD_COLOR_DARKGRAY);
+    uint8_t text_array[30];
+    // Show Title Line - Select Mode 
+     BSP_LCD_SetFont(&Font20);          
+     sprintf((char*)text_array, "Select Mode");
+     lcd.ClearStringLine(1);   
+     lcd.DisplayStringAt(0, LINE(1), (uint8_t *)&text_array, CENTER_MODE);
+    // Show Two Buttons 
+    // first CPAP Mode 
+    DrawBigButton(lcd, 1, "CPAP");
+        // On Press SHOW CPAP Screen 
+    // second NIV 
+    DrawBigButton(lcd, 2, "NIV");
+        // On Press show NIV Screen    
+}
+void CreateCPAPMainScreen(LCD_DISCO_F429ZI lcd)
+{
+    lcd.Clear(LCD_COLOR_DARKGRAY);
+    uint8_t text_array[30];
+    // Show Title Line - Select Mode 
+     BSP_LCD_SetFont(&Font20);          
+     sprintf((char*)text_array, "CPAP");   
+     lcd.ClearStringLine(1);
+     lcd.DisplayStringAt(0, LINE(1), (uint8_t *)&text_array, CENTER_MODE);
+    // Show Two Buttons 
+    // first CPAP Mode 
+    DrawBigButton(lcd, 1, "START");
+        // On Press SHOW CPAP Screen 
+    // second NIV 
+    DrawBigButton(lcd, 2, "SETTINGS");
+        // On Press show NIV Screen   
+    DrawBigButton(lcd, 3, "BACK"); 
+}
+void CreateCPAPMainSettingsScreen(LCD_DISCO_F429ZI lcd)
+{
+   lcd.Clear(LCD_COLOR_DARKGRAY); 
+    uint8_t text_array[30];
+    // Show Title Line - Select Mode 
+     BSP_LCD_SetFont(&Font20);          
+     sprintf((char*)text_array, "CPAP Settings");   
+     lcd.ClearStringLine(1);
+     lcd.DisplayStringAt(0, LINE(1), (uint8_t *)&text_array, CENTER_MODE);
+    // Show Two Buttons 
+    // first CPAP Mode 
+    DrawBigButton(lcd, 1, "PEEP"); 
+    DrawBigButton(lcd, 2, "TI"); 
+    DrawBigButton(lcd, 3, "OTHER ->"); 
+    DrawBigButton(lcd, 4, "BACK"); 
+}
+
+
+void CreateNIVMainScreen(LCD_DISCO_F429ZI lcd)
+{
+    lcd.Clear(LCD_COLOR_DARKGRAY);
+    uint8_t text_array[30];
+    // Show Title Line - Select Mode 
+     BSP_LCD_SetFont(&Font20);          
+     sprintf((char*)text_array, "NIV");   
+     lcd.ClearStringLine(1);
+     lcd.DisplayStringAt(0, LINE(1), (uint8_t *)&text_array, CENTER_MODE);
+    // Show Two Buttons 
+    // first CPAP Mode 
+    DrawBigButton(lcd, 1, "START");
+        // On Press SHOW CPAP Screen 
+    // second NIV 
+    DrawBigButton(lcd, 2, "SETTINGS");
+        // On Press show NIV Screen  
+    DrawBigButton(lcd, 3, "BACK");  
+}
+void showScreen(ScreenState screen,LCD_DISCO_F429ZI lcd)
+{ 
+    if ( refreshScreen == false )
+        return;
+    switch(screen) 
+    {
+        case StartUp :
+                CreatStartupScreen(lcd); 
+                refreshScreen = false;               
+        break;
+        case  CPAPMain :
+                CreateCPAPMainScreen(lcd);
+                refreshScreen = false;
+        break;
+        case  NIVMain :
+                CreateNIVMainScreen(lcd);
+                refreshScreen = false;
+        break;
+        case  CPAPRunning:
+        break;
+        case   CPAPSettingsMain:
+            CreateCPAPMainSettingsScreen(lcd);
+            refreshScreen = false;
+        break;
+        case  CPAPSettingsDetailView:
+        break;
+        case NIVRunning:
+        break;
+        case  NIVSettingsMain:
+        break;
+        case  NIVSettingsDetailView:
+        break;
+
+
+
+    }
+}
+