4
0
Fork 0
mirror of https://github.com/zzzzDev4/IAS-Better-Tea.git synced 2025-04-21 07:31:20 +02:00
firmware/src/SmartDisplay.cpp

90 lines
No EOL
1.9 KiB
C++

#include "SmartDisplay.hpp"
SmartDisplay::SmartDisplay(Adafruit_SSD1306 *display)
{
m_display = display;
}
void SmartDisplay::printTeaConfigScreen(TeaData tea)
{
resetDisplay();
m_display->println(tea.m_teaName);
m_display->print(tea.m_waterTemp);
m_display->println(" C");
m_display->setTextSize(2);
m_display->print(tea.m_steepingSeconds);
m_display->print(" ");
m_display->display();
}
void SmartDisplay::printTeaSteepingProgressScreen(TeaData tea, int remainingSeconds)
{
resetDisplay();
m_display->println(tea.m_teaName);
m_display->println(" (Steeping)");
m_display->setTextSize(2);
m_display->println(remainingSeconds);
m_display->display();
}
void SmartDisplay::printWaitForRFIDScreen()
{
resetDisplay();
m_display->println("Waiting for RFID scan...");
m_display->display();
}
void SmartDisplay::printRequestFeedbackScreen(TeaData teaData)
{
resetDisplay();
m_display->println("Feedback on brew intensity");
m_display->println();
m_display->println("|less| perfect |more|");
m_display->display();
}
void SmartDisplay::printAddNewTeaConfigScreen(TeaData teaData)
{
resetDisplay();
m_display->println("Add initial config for new tea");
m_display->println();
m_display->print("Steeping time:");
m_display->print(teaData.m_steepingSeconds);
m_display->println("s");
m_display->display();
}
void SmartDisplay::printMsg(const String &s)
{
resetDisplay();
m_display->setCursor(0, 10);
m_display->println(s);
m_display->display();
}
void SmartDisplay::printMsg(unsigned long l)
{
resetDisplay();
m_display->setCursor(0, 10);
m_display->println(l);
m_display->display();
}
void SmartDisplay::resetDisplay()
{
m_display->clearDisplay();
m_display->setTextColor(WHITE);
m_display->setTextSize(1);
m_display->setCursor(0, 0);
}