mirror of
https://github.com/daveallie/crosspoint-reader.git
synced 2025-12-18 07:07:41 +03:00
add separate render path when sleep.bmp is found in root of sd card
This commit is contained in:
parent
130242fde8
commit
e2951c85e2
@ -2,10 +2,23 @@
|
||||
|
||||
#include <GfxRenderer.h>
|
||||
|
||||
#include "SD.h"
|
||||
#include "config.h"
|
||||
#include "images/CrossLarge.h"
|
||||
|
||||
void SleepScreen::onEnter() {
|
||||
// Look for sleep.bmp on the root of the sd card to determine if we should
|
||||
// render a custom sleep screen instead of the default.
|
||||
auto file = SD.open("/sleep.bmp");
|
||||
if (file) {
|
||||
renderCustomSleepScreen(file);
|
||||
return;
|
||||
}
|
||||
|
||||
renderDefaultSleepScreen();
|
||||
}
|
||||
|
||||
void SleepScreen::renderDefaultSleepScreen() {
|
||||
const auto pageWidth = GfxRenderer::getScreenWidth();
|
||||
const auto pageHeight = GfxRenderer::getScreenHeight();
|
||||
|
||||
@ -16,3 +29,16 @@ void SleepScreen::onEnter() {
|
||||
renderer.invertScreen();
|
||||
renderer.displayBuffer(EInkDisplay::HALF_REFRESH);
|
||||
}
|
||||
|
||||
void SleepScreen::renderCustomSleepScreen(File file) {
|
||||
Serial.println("Rendering custom sleep screen from sleep.bmp");
|
||||
|
||||
const auto pageWidth = GfxRenderer::getScreenWidth();
|
||||
const auto pageHeight = GfxRenderer::getScreenHeight();
|
||||
|
||||
renderer.clearScreen();
|
||||
|
||||
renderer.drawCenteredText(UI_FONT_ID, pageHeight / 2 + 70, "CUSTOM SLEEP SCREEN", true, BOLD);
|
||||
|
||||
renderer.displayBuffer(EInkDisplay::HALF_REFRESH);
|
||||
}
|
||||
|
||||
@ -1,8 +1,11 @@
|
||||
#pragma once
|
||||
#include "SD.h"
|
||||
#include "Screen.h"
|
||||
|
||||
class SleepScreen final : public Screen {
|
||||
public:
|
||||
explicit SleepScreen(GfxRenderer& renderer, InputManager& inputManager) : Screen(renderer, inputManager) {}
|
||||
void onEnter() override;
|
||||
void renderDefaultSleepScreen();
|
||||
void renderCustomSleepScreen(File file);
|
||||
};
|
||||
|
||||
Loading…
Reference in New Issue
Block a user