mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-11-02 19:02:00 +00:00
feat(eink): use the room of tall screens, add e-ink graphics
Tall screens stack the Sky view and the map over their rows, show more recent chats, give favourite cards the heard age and distance, and put the trail map under the trail summary. Wide screens put the page icons on the header line. E-ink only (Features::IS_EINK): - a month calendar under the clock and on the portrait lock screen, with the alarm's days marked; the lock screen also lists unread messages, the alarm and the clock fields - 8-hour charts in Status: battery, noise and SNR, mesh traffic - an elevation profile under the trail map, with the climb and the top - a compass rose and the path's hops on a contact's detail, arrows by the distance in Nodes rows and on favourite cards - an ordered-dither fade under chart lines Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -386,6 +386,75 @@ MINI_ICON(ICON_MAP_TARGET, 5, // ⚑ flag on a pole — the active Locator/N
|
||||
packRow("#...."),
|
||||
packRow("#...."));
|
||||
|
||||
// Arrows towards the eight compass points (north up), for a bearing beside
|
||||
// a distance: ICON_ARROWS[((deg + 22) % 360) / 45].
|
||||
MINI_ICON(ICON_ARROW_N, 7,
|
||||
packRow("...#..."),
|
||||
packRow("..###.."),
|
||||
packRow(".#.#.#."),
|
||||
packRow("...#..."),
|
||||
packRow("...#..."),
|
||||
packRow("...#..."),
|
||||
packRow("...#..."));
|
||||
MINI_ICON(ICON_ARROW_NE, 7,
|
||||
packRow("...####"),
|
||||
packRow(".....##"),
|
||||
packRow("....#.#"),
|
||||
packRow("...#..#"),
|
||||
packRow("..#...."),
|
||||
packRow(".#....."),
|
||||
packRow("#......"));
|
||||
MINI_ICON(ICON_ARROW_E, 7,
|
||||
packRow("......."),
|
||||
packRow("....#.."),
|
||||
packRow(".....#."),
|
||||
packRow("#######"),
|
||||
packRow(".....#."),
|
||||
packRow("....#.."),
|
||||
packRow("......."));
|
||||
MINI_ICON(ICON_ARROW_SE, 7,
|
||||
packRow("#......"),
|
||||
packRow(".#....."),
|
||||
packRow("..#...."),
|
||||
packRow("...#..#"),
|
||||
packRow("....#.#"),
|
||||
packRow(".....##"),
|
||||
packRow("...####"));
|
||||
MINI_ICON(ICON_ARROW_S, 7,
|
||||
packRow("...#..."),
|
||||
packRow("...#..."),
|
||||
packRow("...#..."),
|
||||
packRow("...#..."),
|
||||
packRow(".#.#.#."),
|
||||
packRow("..###.."),
|
||||
packRow("...#..."));
|
||||
MINI_ICON(ICON_ARROW_SW, 7,
|
||||
packRow("......#"),
|
||||
packRow(".....#."),
|
||||
packRow("....#.."),
|
||||
packRow("#..#..."),
|
||||
packRow("#.#...."),
|
||||
packRow("##....."),
|
||||
packRow("####..."));
|
||||
MINI_ICON(ICON_ARROW_W, 7,
|
||||
packRow("......."),
|
||||
packRow("..#...."),
|
||||
packRow(".#....."),
|
||||
packRow("#######"),
|
||||
packRow(".#....."),
|
||||
packRow("..#...."),
|
||||
packRow("......."));
|
||||
MINI_ICON(ICON_ARROW_NW, 7,
|
||||
packRow("####..."),
|
||||
packRow("##....."),
|
||||
packRow("#.#...."),
|
||||
packRow("#..#..."),
|
||||
packRow("....#.."),
|
||||
packRow(".....#."),
|
||||
packRow("......#"));
|
||||
static constexpr const MiniIcon* ICON_ARROWS[8] = { &ICON_ARROW_N, &ICON_ARROW_NE, &ICON_ARROW_E, &ICON_ARROW_SE,
|
||||
&ICON_ARROW_S, &ICON_ARROW_SW, &ICON_ARROW_W, &ICON_ARROW_NW };
|
||||
|
||||
// Keyboard special-key glyphs.
|
||||
MINI_ICON(ICON_KEYBOARD, 7, // PIN keyboard to ABC keyboard switch icon
|
||||
packRow("#.#.#.#"),
|
||||
|
||||
Reference in New Issue
Block a user