multipage_demo.tc¶
Multi-Page WebUI Demo
// Multi-Page WebUI Demo
// Demonstrates multiple button pages on the Tasmota main page
// Each button opens a different page with different widgets
int power;
int brightness;
int mode;
int alarm_time;
char devname[32];
void WebUI() {
int page = webPage(); // which page are we rendering?
if (page == 0) {
// Control page
webButton(power, "Power");
webSlider(brightness, 0, 100, "Brightness");
webPulldown(mode, "Mode", "Off|Auto|Manual");
}
if (page == 1) {
// Settings page
webTime(alarm_time, "Wake-up Time");
webText(devname, 32, "Device Name");
}
}
void EverySecond() {
if (mode == 1 && brightness > 50) {
power = 1;
}
}
int main() {
power = 0;
brightness = 50;
mode = 0;
alarm_time = 700;
strcpy(devname, "Living Room");
webPageLabel(0, "Controls");
webPageLabel(1, "Settings");
return 0;
}