Public Access
Add a PC renderer for the themed pages; fix overlapping layouts
tools/render_pages.py compiles the page code natively with g++ against ESPHome's own display and font code and the font bitmaps of the last `esphome compile`, and draws pages to PNG at chosen moments with sample data (normal, empty, alert, busy), as a contact sheet, or as one example per page in docs/images/pages (now shown in the README). Fixes found with it: Cyber HUD zone names ran into the temperatures, the breach header label hit the tag and the column marker the matrix label; KonoSuba subtitle, guild weather icon, cabbage text and all-day deadline, and hills through the party; Steins;Gate D-mail recipient, the microwave display, the gadget card value and world line labels; LCARS room rows, readout bars and data cascade, warp core readouts, and the captain's log weather wording. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
13a499fd97
commit
d2e81a5a36
27 files changed
+627
-38
No files matched your search
@@ -0,0 +1,29 @@
|
||||
// The parts of ESPHome's core that the display code links against but the
|
||||
// renderer never uses: there is no component lifecycle, polling, MAC or RNG on
|
||||
// the PC side.
|
||||
#include <cstring>
|
||||
|
||||
#include "esphome/core/component.h"
|
||||
#include "esphome/core/helpers.h"
|
||||
|
||||
namespace esphome {
|
||||
|
||||
void Component::setup() {}
|
||||
void Component::loop() {}
|
||||
void Component::dump_config() {}
|
||||
float Component::get_setup_priority() const { return 0.0f; }
|
||||
bool Component::can_proceed() { return true; }
|
||||
void Component::call_setup() {}
|
||||
|
||||
PollingComponent::PollingComponent(uint32_t update_interval) : update_interval_(update_interval) {}
|
||||
void PollingComponent::call_setup() {}
|
||||
uint32_t PollingComponent::get_update_interval() const { return this->update_interval_; }
|
||||
void PollingComponent::stop_poller() {}
|
||||
|
||||
bool random_bytes(uint8_t *data, size_t len) {
|
||||
memset(data, 0x5A, len);
|
||||
return true;
|
||||
}
|
||||
void get_mac_address_raw(uint8_t *mac) { memset(mac, 0, 6); }
|
||||
|
||||
} // namespace esphome
|
||||
Reference in new issue
Block a user