try to make menus accessable from driveMode

This commit is contained in:
2023-09-27 15:32:30 +02:00
parent 38e7db7dee
commit d7357d4f95
13 changed files with 128 additions and 47 deletions
+83 -4
View File
@@ -16,11 +16,90 @@ MenuDriveMode::MenuDriveMode(DriveManager* driveManager) {
}
void MenuDriveMode::left() {
if (this->activeMenu) {
if (this->activeMenu)
this->activeMenu->left();
return;
}
this->firstPrint = true;
this->configureOnLeave();
this->driveManager->changeModus();
if (parentMenu) {
this->parentMenu->printMenu();
this->leaved = true;
}
MenuInformationSites::left();
}
void MenuDriveMode::right() {
if (this->activeMenu) {
this->activeMenu->right();
return;
}
MenuInformationSites::right();
}
void MenuDriveMode::up() {
if (this->activeMenu) {
this->activeMenu->up();
return;
}
MenuInformationSites::up();
}
void MenuDriveMode::down() {
if (this->activeMenu) {
this->activeMenu->down();
return;
}
MenuInformationSites::down();
}
void MenuDriveMode::yes() {
if (this->activeMenu) {
this->activeMenu->yes();
return;
}
MenuInformationSites::yes();
}
void MenuDriveMode::no() {
if (this->activeMenu) {
this->activeMenu->no();
return;
}
MenuInformationSites::no();
}
void MenuDriveMode::prepareReenterMenu() {
this->activeMenu = nullptr;
}
void MenuDriveMode::printMenu() {
if (this->activeMenu) {
this->activeMenu->printMenu();
return;
}
MenuInformationSites::printMenu();
}
void MenuDriveMode::init() {
this->activeMenu = nullptr;
}
void MenuDriveMode::enterSpeedMenu() {
this->activeMenu = this->menuSpeed;
this->enterMenu();
}
void MenuDriveMode::enterSensorMenu() {
this->activeMenu = this->menuSensor;
this->enterMenu();
}
void MenuDriveMode::enterMenu() {
if (!this->activeMenu)
return
this->activeMenu->printMenu();
std::cout << "Sensor Menu was theretically printed" << std::endl;
this->activeMenu->setParentMenu(this);
}