* chore: todo.txt * chore: comments * fix: no fast refresh on VME290 Reverts a line of code which was accidentally committed * refactor: god class Divide the behavior from the old WindowManager class into several subclasses which each have a clear role. * refactor: cppcheck medium warnings Enough to pass github CI for now * refactor: updateType selection * refactor: don't use a setter for the shared AppletFonts * fix: update prioritization forceUpdate calls weren't being prioritized * refactor: remove unhelpful logging getTimeString is used for parsing our own time, but also the timestamps of messages. The "one time only" log printing will likely fire in unhelpful situations. * fix: " " * refactor: get rid of types.h file for enums * Keep that sneaky todo file out of commits
39 lines
1015 B
C++
39 lines
1015 B
C++
#ifdef MESHTASTIC_INCLUDE_INKHUD
|
|
|
|
/*
|
|
|
|
This applet floats top-left, giving a graphical representation of battery remaining
|
|
It should be optional, enabled by the on-screen menu
|
|
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include "configuration.h"
|
|
|
|
#include "graphics/niche/InkHUD/SystemApplet.h"
|
|
|
|
#include "PowerStatus.h"
|
|
|
|
namespace NicheGraphics::InkHUD
|
|
{
|
|
|
|
class BatteryIconApplet : public SystemApplet
|
|
{
|
|
public:
|
|
BatteryIconApplet();
|
|
|
|
void onRender() override;
|
|
int onPowerStatusUpdate(const meshtastic::Status *status); // Called when new info about battery is available
|
|
|
|
private:
|
|
// Get informed when new information about the battery is available (via onPowerStatusUpdate method)
|
|
CallbackObserver<BatteryIconApplet, const meshtastic::Status *> powerStatusObserver =
|
|
CallbackObserver<BatteryIconApplet, const meshtastic::Status *>(this, &BatteryIconApplet::onPowerStatusUpdate);
|
|
|
|
uint8_t socRounded = 0; // Battery state of charge, rounded to nearest 10%
|
|
};
|
|
|
|
} // namespace NicheGraphics::InkHUD
|
|
|
|
#endif |