Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include "menu.h"
- uint8_t Menu::menustate[MENUDEPTH];
- uint8_t Menu::curmen=0;
- bool Menu::bupr=false;
- int Menu::rot=0;
- uint8_t Menu::curmendepth=0;
- void Menu::setup()
- {
- for (uint8_t i=0; i<MENUDEPTH; ++i)
- {
- menustate[i]=DEF_MENUSTATE;
- }
- }
- void Menu::service()
- {
- Serial.print("#M");
- switch (curmen)
- {
- case 0:
- mWelcome(); // anzeigen des Welcomescreens bei Push gehen wir ins hauptmenü.
- break;
- case 1:
- mMen();
- break;
- case 2:
- dTemp(); // Anzeigen der Temperaturen
- break;
- default:
- return;
- }
- }
- void Menu::mWelcome() // menu 0
- {
- Serial.print("W");
- Display::DOG.clear_display();
- Display::DOG.position(1,1);
- Display::DOG.cursor_onoff(false);
- Display::DOG.string("Krautlight");
- Display::DOG.position(1,2);
- Display::DOG.string("KL-ctr 0.1");
- Display::DOG.position(1,3);
- Display::DOG.string("Speak friend....");
- if (bupr==true)
- {
- curmen=1;
- curmendepth=1;
- bupr=false;
- rot=0;
- }
- }
- void Menu::mMen() // menu 1
- {
- Serial.print("M");
- Display::DOG.clear_display();
- Display::DOG.position(1,1);
- Display::DOG.string("Main Menu");
- const uint8_t maxmenst=3;
- if (bupr==true) // der button wurde gedrueckt. also machen wir was.
- {
- rot=0;
- bupr=false;
- switch (menustate[curmendepth]) // wir arbeiten je nach gewaehlter Option.
- {
- case 0: // return
- curmen=0;
- curmendepth=0;
- break;
- case 1: // save ist sinnlos, wir sollten allerdings sicherstellen, dass wir hier nie hinkommen.
- case 2: // cancel ist sinnlos
- menustate[curmendepth]=3;
- case 3: // 1. menuepunkt.
- curmen=2;
- curmendepth=1;
- Display::DOG.clear_display();
- break;
- }
- return;
- }
- while (rot > 0)
- {
- switch (menustate[curmendepth]) // wir arbeiten je nach gewaehlter Option.
- {
- case 0:
- case 1:
- case 2:
- menustate[curmendepth]=3;
- --rot;
- break;
- default:
- menustate[curmendepth]=0;
- }
- }
- while (rot < 0)
- {
- switch (menustate[curmendepth]) // wir arbeiten je nach gewaehlter Option.
- {
- case 0:
- case 1:
- case 2:
- menustate[curmendepth]=3;
- ++rot;
- break;
- default:
- menustate[curmendepth]=0;
- }
- }
- switch ( menustate[curmendepth])
- {
- case 0:
- case 1:
- case 2:
- Display::DOG.position(2,1);
- Display::DOG.string("Temperatures");
- Display::DOG.position(3,1);
- Display::DOG.string("enter?");
- break;
- case 3:
- break;
- default:
- break;
- }
- }
- void Menu::dTemp()
- {
- Display::DOG.clear_display();
- Display::DOG.position(1,1);
- Display::DOG.string("Temperatures");
- const uint8_t maxmenst=3;
- if (bupr==true) // der button wurde gedrueckt. also machen wir was.
- {
- curmen=1;
- curmendepth=1;
- Display::DOG.clear_display();
- bupr=false;
- return;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement