Release 1.01

Dependents:   mbed_escm2000

Committer:
foxbrianr
Date:
Thu Sep 12 11:27:50 2019 +0000
Revision:
4:7226c43320b5
Child:
5:9f4d4f8ffc00
beta1

Who changed what in which revision?

UserRevisionLine numberNew contents of line
foxbrianr 4:7226c43320b5 1 #include "mbed.h"
foxbrianr 4:7226c43320b5 2 #include "FactoryResetMenu.h"
foxbrianr 4:7226c43320b5 3 #include "TimeUtilities.h"
foxbrianr 4:7226c43320b5 4 #include "ESCMControlApp.h"
foxbrianr 4:7226c43320b5 5
foxbrianr 4:7226c43320b5 6 #define DEFAULT_DISPLAY 0
foxbrianr 4:7226c43320b5 7
foxbrianr 4:7226c43320b5 8 FactoryResetMenu::FactoryResetMenu(char* id): Menu(id)
foxbrianr 4:7226c43320b5 9 {
foxbrianr 4:7226c43320b5 10 active_selection=0;
foxbrianr 4:7226c43320b5 11 }
foxbrianr 4:7226c43320b5 12
foxbrianr 4:7226c43320b5 13
foxbrianr 4:7226c43320b5 14
foxbrianr 4:7226c43320b5 15 void FactoryResetMenu::init()
foxbrianr 4:7226c43320b5 16 {
foxbrianr 4:7226c43320b5 17 update_needed = 1;
foxbrianr 4:7226c43320b5 18 active_selection=0;
foxbrianr 4:7226c43320b5 19 }
foxbrianr 4:7226c43320b5 20
foxbrianr 4:7226c43320b5 21 void FactoryResetMenu::display(LCD * lcd)
foxbrianr 4:7226c43320b5 22 {
foxbrianr 4:7226c43320b5 23 static int counter = 5;
foxbrianr 4:7226c43320b5 24
foxbrianr 4:7226c43320b5 25 if (update_needed) {
foxbrianr 4:7226c43320b5 26 switch(active_selection) {
foxbrianr 4:7226c43320b5 27
foxbrianr 4:7226c43320b5 28 case 1:
foxbrianr 4:7226c43320b5 29 lcd->cls();
foxbrianr 4:7226c43320b5 30 lcd->locate(1,0);
foxbrianr 4:7226c43320b5 31 lcd->printf("Resetting to Factory Default");
foxbrianr 4:7226c43320b5 32 lcd->locate(1,0);
foxbrianr 4:7226c43320b5 33 counter = 5;
foxbrianr 4:7226c43320b5 34 active_selection=2;
foxbrianr 4:7226c43320b5 35 update_needed=1;
foxbrianr 4:7226c43320b5 36 break;
foxbrianr 4:7226c43320b5 37
foxbrianr 4:7226c43320b5 38 case 2:
foxbrianr 4:7226c43320b5 39 lcd->locate(2,0);
foxbrianr 4:7226c43320b5 40 lcd->printf("Please wait %d...", counter--);
foxbrianr 4:7226c43320b5 41 if (counter == 0) active_selection=0;
foxbrianr 4:7226c43320b5 42 update_needed=1;
foxbrianr 4:7226c43320b5 43 break;
foxbrianr 4:7226c43320b5 44
foxbrianr 4:7226c43320b5 45 default:
foxbrianr 4:7226c43320b5 46 lcd->cls();
foxbrianr 4:7226c43320b5 47 lcd->locate(0,0);
foxbrianr 4:7226c43320b5 48 lcd->printf("Press <Set> to Reset");
foxbrianr 4:7226c43320b5 49 update_needed=0;
foxbrianr 4:7226c43320b5 50 break;
foxbrianr 4:7226c43320b5 51 };
foxbrianr 4:7226c43320b5 52 }
foxbrianr 4:7226c43320b5 53
foxbrianr 4:7226c43320b5 54 displayCurrentTime(lcd);
foxbrianr 4:7226c43320b5 55 displayVersion(lcd);
foxbrianr 4:7226c43320b5 56 }
foxbrianr 4:7226c43320b5 57
foxbrianr 4:7226c43320b5 58 void FactoryResetMenu::pressMode()
foxbrianr 4:7226c43320b5 59 {
foxbrianr 4:7226c43320b5 60 // toggle active menu
foxbrianr 4:7226c43320b5 61 switch(active_selection) {
foxbrianr 4:7226c43320b5 62
foxbrianr 4:7226c43320b5 63 case 0:
foxbrianr 4:7226c43320b5 64 back();
foxbrianr 4:7226c43320b5 65 break;
foxbrianr 4:7226c43320b5 66 case 1:
foxbrianr 4:7226c43320b5 67 back();
foxbrianr 4:7226c43320b5 68 break;
foxbrianr 4:7226c43320b5 69
foxbrianr 4:7226c43320b5 70 default:
foxbrianr 4:7226c43320b5 71 active_selection = 0;
foxbrianr 4:7226c43320b5 72 break;
foxbrianr 4:7226c43320b5 73 };
foxbrianr 4:7226c43320b5 74
foxbrianr 4:7226c43320b5 75 update_needed = 1;
foxbrianr 4:7226c43320b5 76 }
foxbrianr 4:7226c43320b5 77
foxbrianr 4:7226c43320b5 78 void FactoryResetMenu::pressSet()
foxbrianr 4:7226c43320b5 79 {
foxbrianr 4:7226c43320b5 80 // set button advances to next character position OR
foxbrianr 4:7226c43320b5 81 // goes back to normal
foxbrianr 4:7226c43320b5 82 switch(active_selection) {
foxbrianr 4:7226c43320b5 83
foxbrianr 4:7226c43320b5 84 case 0:
foxbrianr 4:7226c43320b5 85 active_selection = 1;
foxbrianr 4:7226c43320b5 86 addressMap.reset();
foxbrianr 4:7226c43320b5 87 escmEventLog.reset();
foxbrianr 4:7226c43320b5 88 break;
foxbrianr 4:7226c43320b5 89
foxbrianr 4:7226c43320b5 90 case 1: // press yes
foxbrianr 4:7226c43320b5 91 active_selection = 2;
foxbrianr 4:7226c43320b5 92 break;
foxbrianr 4:7226c43320b5 93
foxbrianr 4:7226c43320b5 94 case 2: // complete
foxbrianr 4:7226c43320b5 95 //back();
foxbrianr 4:7226c43320b5 96 active_selection = 0;
foxbrianr 4:7226c43320b5 97 break;
foxbrianr 4:7226c43320b5 98
foxbrianr 4:7226c43320b5 99 default:
foxbrianr 4:7226c43320b5 100 active_selection = 0;
foxbrianr 4:7226c43320b5 101 break;
foxbrianr 4:7226c43320b5 102
foxbrianr 4:7226c43320b5 103 };
foxbrianr 4:7226c43320b5 104 update_needed = 1;
foxbrianr 4:7226c43320b5 105 }
foxbrianr 4:7226c43320b5 106
foxbrianr 4:7226c43320b5 107
foxbrianr 4:7226c43320b5 108