renderbug-cpp/src/animations/InputBlip.cpp

34 lines
478 B
C++

#include "InputBlip.h"
InputBlip::InputBlip()
: Figment("InputBlip")
{
}
void
InputBlip::handleEvent(const InputEvent& evt)
{
if (evt.intent != InputEvent::None) {
m_time = qadd8(m_time, 5);
}
}
void
InputBlip::loop()
{
if (m_time > 0) {
m_time--;
}
}
void
InputBlip::render(Display* dpy) const
{
if (m_time > 0) {
dpy->pixelAt(0) = CRGB(0, brighten8_video(ease8InOutApprox(m_time)), 0);
}
}
STATIC_ALLOC(InputBlip);
STATIC_TASK(InputBlip);