38 lines
1.3 KiB
C++
38 lines
1.3 KiB
C++
#include <ESPMegaPRO_OOP.hpp>
|
|
#include <ESPMegaDisplay.hpp>
|
|
|
|
#define INTERNAL_DISPLAY_DASHBOARD_PAGE 0
|
|
#define INTERNAL_DISPLAY_INPUT_PAGE 1
|
|
#define INTERNAL_DISPLAY_OUTPUT_PAGE 2
|
|
#define INTERNAL_DISPLAY_AC_PAGE 3
|
|
|
|
class InternalDisplay : public ESPMegaDisplay {
|
|
public:
|
|
void begin(ESPMegaPRO *espmega);
|
|
void loop();
|
|
void bindInputCard(uint8_t card_id);
|
|
void bindOutputCard(uint8_t card_id);
|
|
private:
|
|
uint8_t bindedInputCard;
|
|
uint8_t bindedOutputCard;
|
|
ESPMegaPRO *espmega;
|
|
void handleInputStateChange(uint8_t pin, bool state);
|
|
void handlePwmStateChange(uint8_t pin, uint16_t value);
|
|
void handlePageChange(uint8_t page);
|
|
void setOutputBar(uint8_t pin, uint16_t value);
|
|
void setOutputStateColor(uint8_t pin, bool state);
|
|
void setInputMarker(uint8_t pin, bool state);
|
|
void setPWMAdjustmentSlider(uint16_t value);
|
|
void setPWMAdjustmentPin(uint8_t pin);
|
|
void setPWMAdjustmentButton(bool state);
|
|
void saveNetworkConfig();
|
|
void saveMQTTConfig();
|
|
void updateStatusIcons();
|
|
void updateClock();
|
|
void refreshPage();
|
|
void refreshPage(uint8_t page);
|
|
void refreshDashboard();
|
|
void refreshInput();
|
|
void refreshOutput();
|
|
void refreshAC();
|
|
}; |