File AppTemplate.cpp
File List > apps > AppTemplate.cpp
Go to the documentation of this file.
#include "AppTemplate.hpp"
#include <Arduino_JSON.h>
#include <stdio.h>
#include "fontsCz/FreeSans9pt8bfr.h"
#include "utils/utils.hpp"
AppTemplate::AppTemplate(int updateIntervalSec, AppConfig& appConfig)
: Application(updateIntervalSec, appConfig) {
httpUrlParams.insert(std::make_pair("key1", "/ping"));
httpUrlParams.insert(std::make_pair("key2", "/key2json"));
httpUrlParamKey = httpUrlParams.begin()->first; // set first parameter as default
}
std::string AppTemplate::toString() {
return "AppTemplate";
}
void AppTemplate::buttonClickMiddle() {
printf("Pressed button MIDDLE - %s\n", this->toString().c_str());
httpUrlParamKey = "key1";
appConfig.updateHandler();
}
void AppTemplate::buttonClickRight() {
printf("Pressed button RIGHT - %s\n", this->toString().c_str());
httpUrlParamKey = "key2";
appConfig.updateHandler();
}
int AppTemplate::showDataOnDisplay(GxEPD* display, JSONVar data) {
display->setFont(&FreeSans9pt8b);
display->fillScreen(GxEPD_BG);
display->setTextColor(GxEPD_TEXT_EX);
display->setCursor(0, 15);
display->println(printCz(this->toString() + httpUrlParamKey));
display->setTextColor(GxEPD_TEXT);
display->println(printCz(std::string("Url base: - ") + appConfig.httpUrlBase));
display->println(printCz(std::string("Url param: - ") + httpUrlParams.at(httpUrlParamKey)));
display->println(printCz(std::string("Data: - ") + (const char*)data["data"]));
display->update();
return secToMs(updateIntervalSec);
}
// int AppTemplate::update(GxEPD* display) {
// // return showDataOnDisplay(display, JSONVar());
// }