I'm now able to use the menu screen as I want. Below is the modified code. Please let me know if you still see any issue with the code.
switch (dispScreen) {
case 0:
backgroundScreen();
dispScreen=1;
Serial.println(dispScreen);
break;
case 1:
if ((x>=mainBut[0]) && (x<=mainBut[2]) && (y>=mainBut[1]) && (y<=mainBut[3]))
{
clearScreen();
mainScreen();
waitForIt(mainBut[0], mainBut[1], mainBut[2], mainBut[3]);
myGLCD.print("MAIN", 22, 222, 1);
dispScreen = 1;
}
if ((x>=ledBut[0]) && (x<=ledBut[2]) && (y>=ledBut[1]) && (y<=ledBut[3]))
{
clearScreen();
LEDScreen();
waitForIt(ledBut[0], ledBut[1], ledBut[2], ledBut[3]);
myGLCD.print("LED", 75, 222, 1);
dispScreen = 1;
}
if ((x>=tempBut[0]) && (x<=tempBut[2]) && (y>=tempBut[1]) && (y<=tempBut[3]))
{
clearScreen();
tempDisplay();
waitForIt(tempBut[0], tempBut[1], tempBut[2], tempBut[3]);
myGLCD.print("TEMP", 122, 222, 1);
dispScreen = 1;
}
if ((x>=pHBut[0]) && (x<=pHBut[2]) && (y>=pHBut[1]) && (y<=pHBut[3]))
{
clearScreen();
backgroundScreen();
waitForIt(165, 219, 205, 235);
myGLCD.print("pH", 100, 100, 1);
dispScreen = 1;
}
if ((x>=settBut[0]) && (x<=settBut[2]) && (y>=settBut[1]) && (y<=settBut[3]))
{
clearScreen();
generalSettings();
waitForIt(settBut[0], settBut[1], settBut[2], settBut[3]);
myGLCD.print("SETTINGS", 230, 222, 1);
dispScreen = 2;
}
Serial.println(dispScreen);
break;
case 2:
if ((setx>=dtSet[0]) && (setx<=dtSet[2]) && (sety>=dtSet[1]) && (sety<=dtSet[3]))
{
clearScreen();
dateTimeSettings();
dispScreen = 3;
}
if ((setx>=mlSet[0]) && (setx<=mlSet[2]) && (sety>=mlSet[1]) && (sety<=mlSet[3]))
{
clearScreen();
moonlightSettings();
dispScreen = 3;
}
if ((setx>=ledSet[0]) && (setx<=ledSet[2]) && (sety>=ledSet[1]) && (sety<=ledSet[3]))
{
clearScreen();
backgroundScreen();
ledSettings();
dispScreen = 3;
}
if ((setx>=tempSet[0]) && (setx<=tempSet[2]) && (sety>=tempSet[1]) && (sety<=tempSet[3]))
{
clearScreen();
backgroundScreen();
tempSettings();
dispScreen = 3;
}
if ((setx>=alaSet[0]) && (setx<=alaSet[2]) && (sety>=alaSet[1]) && (sety<=alaSet[3]))
{
clearScreen();
backgroundScreen();
pHSettings();
dispScreen = 3;
}
if ((setx>=bacButt[0]) && (setx<=bacButt[2]) && (sety>=bacButt[1]) && (sety<=bacButt[3]))
{
clearScreen();
backgroundScreen();
dispScreen = 1;
}
Serial.println(dispScreen);
break;
case 3:
if ((setx1>=savBut[0]) && (setx1<=savBut[2]) && (sety1>=savBut[1]) && (sety1<=savBut[3]))
{
clearScreen();
generalSettings();
dispScreen = 2;
}
if ((setx1>=canBut[0]) && (setx1<=canBut[2]) && (sety1>=canBut[1]) && (sety1<=canBut[3]))
{
clearScreen();
generalSettings();
dispScreen = 2;
}
Serial.println(dispScreen);
break;
}
}