ui: display build-time semver on a new info panel tab

this adds the 4th tab, an info-icon button, and shows the value of
the release version recorded at build time - a feature added in a
previous commit.
alex 2 years ago
parent 4f6fecf98d
commit 871422b030
Signed by: x1ddos
GPG Key ID: FDEFB4A63CBD8460

@ -88,7 +88,7 @@ fn parseArgs(gpa: std.mem.Allocator) !NdArgs {
usage(prog) catch {};
std.process.exit(1);
} else if (std.mem.eql(u8, a, "-v")) {
try stderr.print("{any}\n", .{buildopts.nd_semver});
try stderr.print("{any}\n", .{buildopts.semver});
std.process.exit(0);
} else if (std.mem.eql(u8, a, "-gui")) {
lastarg = .gui;
@ -130,7 +130,7 @@ pub fn main() !void {
// parse program args first thing and fail fast if invalid
const args = try parseArgs(gpa);
defer args.deinit(gpa);
logger.info("version {any}", .{buildopts.nd_semver});
logger.info("ndg version {any}", .{buildopts.semver});
// reset the screen backlight to normal power regardless
// of its previous state.

@ -199,7 +199,7 @@ fn parseArgs(alloc: std.mem.Allocator) !void {
usage(prog) catch {};
std.process.exit(1);
} else if (std.mem.eql(u8, a, "-v")) {
try stderr.print("{any}\n", .{buildopts.ngui_semver});
try stderr.print("{any}\n", .{buildopts.semver});
std.process.exit(0);
} else {
fatal("unknown arg name {s}", .{a});
@ -227,7 +227,7 @@ pub fn main() anyerror!void {
};
gpa = gpa_state.allocator();
try parseArgs(gpa);
logger.info("version {any}", .{buildopts.ngui_semver});
logger.info("ndg version {any}", .{buildopts.semver});
// ensure timer is available on this platform before doing anything else;
// the UI is unusable otherwise.

@ -357,6 +357,7 @@
#define NM_SYMBOL_BITCOIN "\xEF\x8D\xB9" /* 0xF379 */
#define NM_SYMBOL_BITCOIN_SIGN "\xEE\x82\xB4" /* 0xE0B4 */
#define NM_SYMBOL_BOLT "\xEF\x83\xA7" /* 0xF0E7 */
#define NM_SYMBOL_INFO "\xEF\x81\x9A" /* 0xF05A */
/*Enable handling large font and/or fonts with a lot of characters.
*The limit depends on the font size, font face and bpp.

@ -1,7 +1,7 @@
/*******************************************************************************
* Size: 14 px
* Bpp: 4
* Opts: --no-compress --no-prefilter --bpp 4 --size 14 --font courier-prime-code.ttf -r 0x20-0x7F,0xB0,0x2022 --font fa-brands-400.ttf -r 0xF287,0xF293,0xF379 --font fa-solid-900.ttf -r 0xF001,0xF008,0xF00B,0xF00C,0xF00D,0xF011,0xF013,0xF015,0xF019,0xF01C,0xF021,0xF026,0xF027,0xF028,0xF03E,0xF043,0xF048,0xF04B,0xF04C,0xF04D,0xF051,0xF052,0xF053,0xF054,0xF067,0xF068,0xF06E,0xF070,0xF071,0xF074,0xF077,0xF078,0xF079,0xF07B,0xF093,0xF095,0xF0C4,0xF0C5,0xF0C7,0xF0C9,0xF0E0,0xF0E7,0xF0EA,0xF0F3,0xF11C,0xF124,0xF158,0xF1EB,0xF240,0xF241,0xF242,0xF243,0xF244,0xF2ED,0xF304,0xF55A,0xF7C2,0xF177=>0xF8A2,0xE0B4,0xF0E7 --format lvgl -o lv_font_courierprimecode_14.c --force-fast-kern-format
* Opts: --no-compress --no-prefilter --bpp 4 --size 14 --font courier-prime-code.ttf -r 0x20-0x7F,0xB0,0x2022 --font fa-brands-400.ttf -r 0xF287,0xF293,0xF379 --font fa-solid-900.ttf -r 0xF001,0xF008,0xF00B,0xF00C,0xF00D,0xF011,0xF013,0xF015,0xF019,0xF01C,0xF021,0xF026,0xF027,0xF028,0xF03E,0xF043,0xF048,0xF04B,0xF04C,0xF04D,0xF051,0xF052,0xF053,0xF054,0xF05A,0xF067,0xF068,0xF06E,0xF070,0xF071,0xF074,0xF077,0xF078,0xF079,0xF07B,0xF093,0xF095,0xF0C4,0xF0C5,0xF0C7,0xF0C9,0xF0E0,0xF0E7,0xF0EA,0xF0F3,0xF11C,0xF124,0xF158,0xF1EB,0xF240,0xF241,0xF242,0xF243,0xF244,0xF2ED,0xF304,0xF55A,0xF7C2,0xF177=>0xF8A2,0xE0B4,0xF0E7 --format lvgl -o lv_font_courierprimecode_14.c --force-fast-kern-format
******************************************************************************/
#ifdef LV_LVGL_H_INCLUDE_SIMPLE
@ -920,6 +920,22 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
0x4, 0xff, 0x40, 0x0, 0x2f, 0xf4, 0x0, 0x0,
0x2c, 0x40, 0x0, 0x0,
/* U+F05A "" */
0x0, 0x0, 0x0, 0x22, 0x0, 0x0, 0x0, 0x0,
0x4, 0xbf, 0xff, 0xfb, 0x40, 0x0, 0x0, 0x8f,
0xff, 0xff, 0xff, 0xf8, 0x0, 0x7, 0xff, 0xff,
0xff, 0xff, 0xff, 0x70, 0x2f, 0xff, 0xff, 0x88,
0xff, 0xff, 0xf2, 0x8f, 0xff, 0xff, 0x55, 0xff,
0xff, 0xf8, 0xdf, 0xff, 0xff, 0xdf, 0xff, 0xff,
0xfd, 0xff, 0xff, 0xf5, 0x3, 0xff, 0xff, 0xff,
0xef, 0xff, 0xfe, 0x71, 0xff, 0xff, 0xfe, 0xcf,
0xff, 0xff, 0x81, 0xff, 0xff, 0xfc, 0x6f, 0xff,
0xf6, 0x0, 0x6f, 0xff, 0xf6, 0xe, 0xff, 0xfc,
0x88, 0xcf, 0xff, 0xe0, 0x3, 0xff, 0xff, 0xff,
0xff, 0xff, 0x30, 0x0, 0x3e, 0xff, 0xff, 0xff,
0xe3, 0x0, 0x0, 0x0, 0x6b, 0xee, 0xb6, 0x0,
0x0,
/* U+F067 "" */
0x0, 0x0, 0x8, 0xc0, 0x0, 0x0, 0x0, 0x0,
0xb, 0xf0, 0x0, 0x0, 0x0, 0x0, 0xb, 0xf0,
@ -1551,43 +1567,44 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = {
{.bitmap_index = 4626, .adv_w = 196, .box_w = 14, .box_h = 13, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 4717, .adv_w = 168, .box_w = 8, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 4769, .adv_w = 168, .box_w = 8, .box_h = 13, .ofs_x = 2, .ofs_y = -1},
{.bitmap_index = 4821, .adv_w = 196, .box_w = 12, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4893, .adv_w = 196, .box_w = 12, .box_h = 2, .ofs_x = 0, .ofs_y = 5},
{.bitmap_index = 4905, .adv_w = 252, .box_w = 17, .box_h = 13, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 5016, .adv_w = 280, .box_w = 19, .box_h = 15, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 5159, .adv_w = 224, .box_w = 16, .box_h = 13, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 5263, .adv_w = 224, .box_w = 14, .box_h = 14, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 5361, .adv_w = 224, .box_w = 14, .box_h = 8, .ofs_x = 0, .ofs_y = 2},
{.bitmap_index = 5417, .adv_w = 224, .box_w = 14, .box_h = 8, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 5473, .adv_w = 252, .box_w = 16, .box_h = 11, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 5561, .adv_w = 224, .box_w = 14, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 5652, .adv_w = 224, .box_w = 14, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 5757, .adv_w = 224, .box_w = 15, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 5870, .adv_w = 224, .box_w = 14, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 4821, .adv_w = 224, .box_w = 14, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 4926, .adv_w = 196, .box_w = 12, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 4998, .adv_w = 196, .box_w = 12, .box_h = 2, .ofs_x = 0, .ofs_y = 5},
{.bitmap_index = 5010, .adv_w = 252, .box_w = 17, .box_h = 13, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 5121, .adv_w = 280, .box_w = 19, .box_h = 15, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 5264, .adv_w = 224, .box_w = 16, .box_h = 13, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 5368, .adv_w = 224, .box_w = 14, .box_h = 14, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 5466, .adv_w = 224, .box_w = 14, .box_h = 8, .ofs_x = 0, .ofs_y = 2},
{.bitmap_index = 5522, .adv_w = 224, .box_w = 14, .box_h = 8, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 5578, .adv_w = 252, .box_w = 16, .box_h = 11, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 5666, .adv_w = 224, .box_w = 14, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 5757, .adv_w = 224, .box_w = 14, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 5862, .adv_w = 224, .box_w = 15, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 5975, .adv_w = 224, .box_w = 14, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 6080, .adv_w = 196, .box_w = 13, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 6165, .adv_w = 196, .box_w = 13, .box_h = 11, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6237, .adv_w = 224, .box_w = 14, .box_h = 11, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6314, .adv_w = 196, .box_w = 12, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 6404, .adv_w = 224, .box_w = 14, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 6509, .adv_w = 196, .box_w = 14, .box_h = 15, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 6614, .adv_w = 252, .box_w = 16, .box_h = 11, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6702, .adv_w = 196, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 6780, .adv_w = 168, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 6852, .adv_w = 280, .box_w = 18, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 6969, .adv_w = 252, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7049, .adv_w = 252, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7129, .adv_w = 252, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7209, .adv_w = 252, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7289, .adv_w = 252, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7369, .adv_w = 280, .box_w = 18, .box_h = 12, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 7477, .adv_w = 196, .box_w = 12, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7567, .adv_w = 196, .box_w = 13, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7665, .adv_w = 224, .box_w = 15, .box_h = 15, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 7778, .adv_w = 224, .box_w = 14, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7883, .adv_w = 252, .box_w = 16, .box_h = 11, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7971, .adv_w = 168, .box_w = 11, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 8054, .adv_w = 224, .box_w = 14, .box_h = 10, .ofs_x = 0, .ofs_y = 0}
{.bitmap_index = 6080, .adv_w = 224, .box_w = 14, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 6185, .adv_w = 196, .box_w = 13, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 6270, .adv_w = 196, .box_w = 13, .box_h = 11, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6342, .adv_w = 224, .box_w = 14, .box_h = 11, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6419, .adv_w = 196, .box_w = 12, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 6509, .adv_w = 224, .box_w = 14, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 6614, .adv_w = 196, .box_w = 14, .box_h = 15, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 6719, .adv_w = 252, .box_w = 16, .box_h = 11, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6807, .adv_w = 196, .box_w = 12, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 6885, .adv_w = 168, .box_w = 11, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 6957, .adv_w = 280, .box_w = 18, .box_h = 13, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 7074, .adv_w = 252, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7154, .adv_w = 252, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7234, .adv_w = 252, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7314, .adv_w = 252, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7394, .adv_w = 252, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7474, .adv_w = 280, .box_w = 18, .box_h = 12, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 7582, .adv_w = 196, .box_w = 12, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7672, .adv_w = 196, .box_w = 13, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7770, .adv_w = 224, .box_w = 15, .box_h = 15, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 7883, .adv_w = 224, .box_w = 14, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7988, .adv_w = 252, .box_w = 16, .box_h = 11, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 8076, .adv_w = 168, .box_w = 11, .box_h = 15, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 8159, .adv_w = 224, .box_w = 14, .box_h = 10, .ofs_x = 0, .ofs_y = 0}
};
/*---------------------
@ -1598,11 +1615,12 @@ static const uint16_t unicode_list_1[] = {
0x0, 0x1f72, 0xe004, 0xef51, 0xef58, 0xef5b, 0xef5c, 0xef5d,
0xef61, 0xef63, 0xef65, 0xef69, 0xef6c, 0xef71, 0xef76, 0xef77,
0xef78, 0xef8e, 0xef93, 0xef98, 0xef9b, 0xef9c, 0xef9d, 0xefa1,
0xefa2, 0xefa3, 0xefa4, 0xefb7, 0xefb8, 0xefbe, 0xefc0, 0xefc1,
0xefc4, 0xefc7, 0xefc8, 0xefc9, 0xefcb, 0xefe3, 0xefe5, 0xf014,
0xf015, 0xf017, 0xf019, 0xf030, 0xf037, 0xf03a, 0xf043, 0xf06c,
0xf074, 0xf0a8, 0xf13b, 0xf190, 0xf191, 0xf192, 0xf193, 0xf194,
0xf1d7, 0xf1e3, 0xf23d, 0xf254, 0xf2c9, 0xf4aa, 0xf712, 0xf7f2
0xefa2, 0xefa3, 0xefa4, 0xefaa, 0xefb7, 0xefb8, 0xefbe, 0xefc0,
0xefc1, 0xefc4, 0xefc7, 0xefc8, 0xefc9, 0xefcb, 0xefe3, 0xefe5,
0xf014, 0xf015, 0xf017, 0xf019, 0xf030, 0xf037, 0xf03a, 0xf043,
0xf06c, 0xf074, 0xf0a8, 0xf13b, 0xf190, 0xf191, 0xf192, 0xf193,
0xf194, 0xf1d7, 0xf1e3, 0xf23d, 0xf254, 0xf2c9, 0xf4aa, 0xf712,
0xf7f2
};
/*Collect the unicode lists and glyph_id offsets*/
@ -1614,7 +1632,7 @@ static const lv_font_fmt_txt_cmap_t cmaps[] =
},
{
.range_start = 176, .range_length = 63475, .glyph_id_start = 96,
.unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 64, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
.unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 65, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
}
};

@ -1,7 +1,7 @@
/*******************************************************************************
* Size: 16 px
* Bpp: 4
* Opts: --no-compress --no-prefilter --bpp 4 --size 16 --font courier-prime-code.ttf -r 0x20-0x7F,0xB0,0x2022 --font fa-brands-400.ttf -r 0xF287,0xF293,0xF379 --font fa-solid-900.ttf -r 0xF001,0xF008,0xF00B,0xF00C,0xF00D,0xF011,0xF013,0xF015,0xF019,0xF01C,0xF021,0xF026,0xF027,0xF028,0xF03E,0xF043,0xF048,0xF04B,0xF04C,0xF04D,0xF051,0xF052,0xF053,0xF054,0xF067,0xF068,0xF06E,0xF070,0xF071,0xF074,0xF077,0xF078,0xF079,0xF07B,0xF093,0xF095,0xF0C4,0xF0C5,0xF0C7,0xF0C9,0xF0E0,0xF0E7,0xF0EA,0xF0F3,0xF11C,0xF124,0xF158,0xF1EB,0xF240,0xF241,0xF242,0xF243,0xF244,0xF2ED,0xF304,0xF55A,0xF7C2,0xF177=>0xF8A2,0xE0B4,0xF0E7 --format lvgl -o lv_font_courierprimecode_16.c --force-fast-kern-format
* Opts: --no-compress --no-prefilter --bpp 4 --size 16 --font courier-prime-code.ttf -r 0x20-0x7F,0xB0,0x2022 --font fa-brands-400.ttf -r 0xF287,0xF293,0xF379 --font fa-solid-900.ttf -r 0xF001,0xF008,0xF00B,0xF00C,0xF00D,0xF011,0xF013,0xF015,0xF019,0xF01C,0xF021,0xF026,0xF027,0xF028,0xF03E,0xF043,0xF048,0xF04B,0xF04C,0xF04D,0xF051,0xF052,0xF053,0xF054,0xF05A,0xF067,0xF068,0xF06E,0xF070,0xF071,0xF074,0xF077,0xF078,0xF079,0xF07B,0xF093,0xF095,0xF0C4,0xF0C5,0xF0C7,0xF0C9,0xF0E0,0xF0E7,0xF0EA,0xF0F3,0xF11C,0xF124,0xF158,0xF1EB,0xF240,0xF241,0xF242,0xF243,0xF244,0xF2ED,0xF304,0xF55A,0xF7C2,0xF177=>0xF8A2,0xE0B4,0xF0E7 --format lvgl -o lv_font_courierprimecode_16.c --force-fast-kern-format
******************************************************************************/
#ifdef LV_LVGL_H_INCLUDE_SIMPLE
@ -1053,6 +1053,24 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
0x1, 0xdf, 0xd1, 0x0, 0x1d, 0xfd, 0x10, 0x0,
0xcf, 0xd1, 0x0, 0x0, 0xcc, 0x10, 0x0, 0x0,
/* U+F05A "" */
0x0, 0x0, 0x29, 0xdf, 0xfd, 0x92, 0x0, 0x0,
0x0, 0x8, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0,
0x0, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x0,
0x8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80,
0x2f, 0xff, 0xff, 0xf3, 0x3f, 0xff, 0xff, 0xf2,
0x9f, 0xff, 0xff, 0xf3, 0x3f, 0xff, 0xff, 0xf9,
0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd,
0xff, 0xff, 0xff, 0x30, 0x3f, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0x72, 0xf, 0xff, 0xff, 0xff,
0xdf, 0xff, 0xff, 0xf7, 0xf, 0xff, 0xff, 0xfd,
0x9f, 0xff, 0xff, 0xd5, 0xd, 0xff, 0xff, 0xf9,
0x2f, 0xff, 0xff, 0x20, 0x2, 0xff, 0xff, 0xf2,
0x8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80,
0x0, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x0,
0x0, 0x8, 0xff, 0xff, 0xff, 0xff, 0x80, 0x0,
0x0, 0x0, 0x29, 0xdf, 0xfd, 0x92, 0x0, 0x0,
/* U+F067 "" */
0x0, 0x0, 0x0, 0xcc, 0x0, 0x0, 0x0, 0x0,
0x0, 0x0, 0xff, 0x0, 0x0, 0x0, 0x0, 0x0,
@ -1774,43 +1792,44 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = {
{.bitmap_index = 5821, .adv_w = 224, .box_w = 16, .box_h = 14, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 5933, .adv_w = 192, .box_w = 8, .box_h = 14, .ofs_x = 1, .ofs_y = -1},
{.bitmap_index = 5989, .adv_w = 192, .box_w = 8, .box_h = 14, .ofs_x = 3, .ofs_y = -1},
{.bitmap_index = 6045, .adv_w = 224, .box_w = 14, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6136, .adv_w = 224, .box_w = 14, .box_h = 2, .ofs_x = 0, .ofs_y = 5},
{.bitmap_index = 6150, .adv_w = 288, .box_w = 20, .box_h = 14, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 6290, .adv_w = 320, .box_w = 22, .box_h = 18, .ofs_x = -1, .ofs_y = -3},
{.bitmap_index = 6488, .adv_w = 256, .box_w = 18, .box_h = 14, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 6614, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 6742, .adv_w = 256, .box_w = 14, .box_h = 8, .ofs_x = 1, .ofs_y = 3},
{.bitmap_index = 6798, .adv_w = 256, .box_w = 14, .box_h = 8, .ofs_x = 1, .ofs_y = 1},
{.bitmap_index = 6854, .adv_w = 288, .box_w = 20, .box_h = 12, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 6974, .adv_w = 256, .box_w = 16, .box_h = 14, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 7086, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7214, .adv_w = 256, .box_w = 17, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7359, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 6045, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 6173, .adv_w = 224, .box_w = 14, .box_h = 13, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 6264, .adv_w = 224, .box_w = 14, .box_h = 2, .ofs_x = 0, .ofs_y = 5},
{.bitmap_index = 6278, .adv_w = 288, .box_w = 20, .box_h = 14, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 6418, .adv_w = 320, .box_w = 22, .box_h = 18, .ofs_x = -1, .ofs_y = -3},
{.bitmap_index = 6616, .adv_w = 256, .box_w = 18, .box_h = 14, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 6742, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 6870, .adv_w = 256, .box_w = 14, .box_h = 8, .ofs_x = 1, .ofs_y = 3},
{.bitmap_index = 6926, .adv_w = 256, .box_w = 14, .box_h = 8, .ofs_x = 1, .ofs_y = 1},
{.bitmap_index = 6982, .adv_w = 288, .box_w = 20, .box_h = 12, .ofs_x = -1, .ofs_y = 0},
{.bitmap_index = 7102, .adv_w = 256, .box_w = 16, .box_h = 14, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 7214, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7342, .adv_w = 256, .box_w = 17, .box_h = 17, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7487, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7615, .adv_w = 224, .box_w = 14, .box_h = 14, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 7713, .adv_w = 224, .box_w = 14, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7797, .adv_w = 256, .box_w = 16, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7893, .adv_w = 224, .box_w = 14, .box_h = 18, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 8019, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 8147, .adv_w = 224, .box_w = 16, .box_h = 16, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 8275, .adv_w = 288, .box_w = 18, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 8383, .adv_w = 224, .box_w = 14, .box_h = 14, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 8481, .adv_w = 192, .box_w = 12, .box_h = 14, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 8565, .adv_w = 320, .box_w = 20, .box_h = 14, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 8705, .adv_w = 288, .box_w = 18, .box_h = 10, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 8795, .adv_w = 288, .box_w = 18, .box_h = 10, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 8885, .adv_w = 288, .box_w = 18, .box_h = 10, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 8975, .adv_w = 288, .box_w = 18, .box_h = 10, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 9065, .adv_w = 288, .box_w = 18, .box_h = 10, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 9155, .adv_w = 320, .box_w = 21, .box_h = 14, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 9302, .adv_w = 224, .box_w = 12, .box_h = 18, .ofs_x = 1, .ofs_y = -3},
{.bitmap_index = 9410, .adv_w = 224, .box_w = 14, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 9522, .adv_w = 256, .box_w = 17, .box_h = 17, .ofs_x = -1, .ofs_y = -3},
{.bitmap_index = 9667, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 9795, .adv_w = 288, .box_w = 18, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 9903, .adv_w = 192, .box_w = 12, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 9999, .adv_w = 256, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 1}
{.bitmap_index = 7615, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 7743, .adv_w = 224, .box_w = 14, .box_h = 14, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 7841, .adv_w = 224, .box_w = 14, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 7925, .adv_w = 256, .box_w = 16, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 8021, .adv_w = 224, .box_w = 14, .box_h = 18, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 8147, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 8275, .adv_w = 224, .box_w = 16, .box_h = 16, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 8403, .adv_w = 288, .box_w = 18, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 8511, .adv_w = 224, .box_w = 14, .box_h = 14, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 8609, .adv_w = 192, .box_w = 12, .box_h = 14, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 8693, .adv_w = 320, .box_w = 20, .box_h = 14, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 8833, .adv_w = 288, .box_w = 18, .box_h = 10, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 8923, .adv_w = 288, .box_w = 18, .box_h = 10, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 9013, .adv_w = 288, .box_w = 18, .box_h = 10, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 9103, .adv_w = 288, .box_w = 18, .box_h = 10, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 9193, .adv_w = 288, .box_w = 18, .box_h = 10, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 9283, .adv_w = 320, .box_w = 21, .box_h = 14, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 9430, .adv_w = 224, .box_w = 12, .box_h = 18, .ofs_x = 1, .ofs_y = -3},
{.bitmap_index = 9538, .adv_w = 224, .box_w = 14, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 9650, .adv_w = 256, .box_w = 17, .box_h = 17, .ofs_x = -1, .ofs_y = -3},
{.bitmap_index = 9795, .adv_w = 256, .box_w = 16, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 9923, .adv_w = 288, .box_w = 18, .box_h = 12, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 10031, .adv_w = 192, .box_w = 12, .box_h = 16, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 10127, .adv_w = 256, .box_w = 16, .box_h = 10, .ofs_x = 0, .ofs_y = 1}
};
/*---------------------
@ -1821,11 +1840,12 @@ static const uint16_t unicode_list_1[] = {
0x0, 0x1f72, 0xe004, 0xef51, 0xef58, 0xef5b, 0xef5c, 0xef5d,
0xef61, 0xef63, 0xef65, 0xef69, 0xef6c, 0xef71, 0xef76, 0xef77,
0xef78, 0xef8e, 0xef93, 0xef98, 0xef9b, 0xef9c, 0xef9d, 0xefa1,
0xefa2, 0xefa3, 0xefa4, 0xefb7, 0xefb8, 0xefbe, 0xefc0, 0xefc1,
0xefc4, 0xefc7, 0xefc8, 0xefc9, 0xefcb, 0xefe3, 0xefe5, 0xf014,
0xf015, 0xf017, 0xf019, 0xf030, 0xf037, 0xf03a, 0xf043, 0xf06c,
0xf074, 0xf0a8, 0xf13b, 0xf190, 0xf191, 0xf192, 0xf193, 0xf194,
0xf1d7, 0xf1e3, 0xf23d, 0xf254, 0xf2c9, 0xf4aa, 0xf712, 0xf7f2
0xefa2, 0xefa3, 0xefa4, 0xefaa, 0xefb7, 0xefb8, 0xefbe, 0xefc0,
0xefc1, 0xefc4, 0xefc7, 0xefc8, 0xefc9, 0xefcb, 0xefe3, 0xefe5,
0xf014, 0xf015, 0xf017, 0xf019, 0xf030, 0xf037, 0xf03a, 0xf043,
0xf06c, 0xf074, 0xf0a8, 0xf13b, 0xf190, 0xf191, 0xf192, 0xf193,
0xf194, 0xf1d7, 0xf1e3, 0xf23d, 0xf254, 0xf2c9, 0xf4aa, 0xf712,
0xf7f2
};
/*Collect the unicode lists and glyph_id offsets*/
@ -1837,7 +1857,7 @@ static const lv_font_fmt_txt_cmap_t cmaps[] =
},
{
.range_start = 176, .range_length = 63475, .glyph_id_start = 96,
.unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 64, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
.unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 65, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
}
};

@ -1,7 +1,7 @@
/*******************************************************************************
* Size: 24 px
* Bpp: 4
* Opts: --no-compress --no-prefilter --bpp 4 --size 24 --font courier-prime-code.ttf -r 0x20-0x7F,0xB0,0x2022 --font fa-brands-400.ttf -r 0xF287,0xF293,0xF379 --font fa-solid-900.ttf -r 0xF001,0xF008,0xF00B,0xF00C,0xF00D,0xF011,0xF013,0xF015,0xF019,0xF01C,0xF021,0xF026,0xF027,0xF028,0xF03E,0xF043,0xF048,0xF04B,0xF04C,0xF04D,0xF051,0xF052,0xF053,0xF054,0xF067,0xF068,0xF06E,0xF070,0xF071,0xF074,0xF077,0xF078,0xF079,0xF07B,0xF093,0xF095,0xF0C4,0xF0C5,0xF0C7,0xF0C9,0xF0E0,0xF0E7,0xF0EA,0xF0F3,0xF11C,0xF124,0xF158,0xF1EB,0xF240,0xF241,0xF242,0xF243,0xF244,0xF2ED,0xF304,0xF55A,0xF7C2,0xF177=>0xF8A2,0xE0B4,0xF0E7 --format lvgl -o lv_font_courierprimecode_24.c --force-fast-kern-format
* Opts: --no-compress --no-prefilter --bpp 4 --size 24 --font courier-prime-code.ttf -r 0x20-0x7F,0xB0,0x2022 --font fa-brands-400.ttf -r 0xF287,0xF293,0xF379 --font fa-solid-900.ttf -r 0xF001,0xF008,0xF00B,0xF00C,0xF00D,0xF011,0xF013,0xF015,0xF019,0xF01C,0xF021,0xF026,0xF027,0xF028,0xF03E,0xF043,0xF048,0xF04B,0xF04C,0xF04D,0xF051,0xF052,0xF053,0xF054,0xF05A,0xF067,0xF068,0xF06E,0xF070,0xF071,0xF074,0xF077,0xF078,0xF079,0xF07B,0xF093,0xF095,0xF0C4,0xF0C5,0xF0C7,0xF0C9,0xF0E0,0xF0E7,0xF0EA,0xF0F3,0xF11C,0xF124,0xF158,0xF1EB,0xF240,0xF241,0xF242,0xF243,0xF244,0xF2ED,0xF304,0xF55A,0xF7C2,0xF177=>0xF8A2,0xE0B4,0xF0E7 --format lvgl -o lv_font_courierprimecode_24.c --force-fast-kern-format
******************************************************************************/
#ifdef LV_LVGL_H_INCLUDE_SIMPLE
@ -1870,6 +1870,44 @@ static LV_ATTRIBUTE_LARGE_CONST const uint8_t glyph_bitmap[] = {
0x0, 0x0, 0x6f, 0xfc, 0x10, 0x0, 0x0, 0x0,
0x0, 0x99, 0x10, 0x0, 0x0, 0x0, 0x0,
/* U+F05A "" */
0x0, 0x0, 0x0, 0x1, 0x7b, 0xef, 0xfe, 0xb7,
0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1, 0xaf,
0xff, 0xff, 0xff, 0xff, 0xfa, 0x10, 0x0, 0x0,
0x0, 0x0, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xf5, 0x0, 0x0, 0x0, 0x7, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x70, 0x0,
0x0, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xf5, 0x0, 0x1, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10,
0xa, 0xff, 0xff, 0xff, 0xff, 0xd2, 0x2d, 0xff,
0xff, 0xff, 0xff, 0xa0, 0x1f, 0xff, 0xff, 0xff,
0xff, 0x80, 0x8, 0xff, 0xff, 0xff, 0xff, 0xf1,
0x7f, 0xff, 0xff, 0xff, 0xff, 0xd2, 0x2d, 0xff,
0xff, 0xff, 0xff, 0xf7, 0xbf, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb,
0xef, 0xff, 0xff, 0xff, 0xfc, 0x87, 0x8f, 0xff,
0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff,
0xf1, 0x0, 0x9, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xf5, 0x0, 0x7, 0xff,
0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff,
0xff, 0xf3, 0x7, 0xff, 0xff, 0xff, 0xff, 0xfe,
0xbf, 0xff, 0xff, 0xff, 0xff, 0xf3, 0x7, 0xff,
0xff, 0xff, 0xff, 0xfb, 0x7f, 0xff, 0xff, 0xff,
0xff, 0xf3, 0x7, 0xff, 0xff, 0xff, 0xff, 0xf7,
0x1f, 0xff, 0xff, 0xff, 0xf4, 0x0, 0x0, 0x4f,
0xff, 0xff, 0xff, 0xf1, 0xa, 0xff, 0xff, 0xff,
0xf5, 0x0, 0x0, 0x5f, 0xff, 0xff, 0xff, 0xa0,
0x1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0xff, 0x10, 0x0, 0x5f, 0xff, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf5, 0x0,
0x0, 0x7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
0xff, 0xff, 0x70, 0x0, 0x0, 0x0, 0x5f, 0xff,
0xff, 0xff, 0xff, 0xff, 0xff, 0xf5, 0x0, 0x0,
0x0, 0x0, 0x1, 0xaf, 0xff, 0xff, 0xff, 0xff,
0xfa, 0x10, 0x0, 0x0, 0x0, 0x0, 0x0, 0x1,
0x7b, 0xef, 0xfe, 0xb7, 0x10, 0x0, 0x0, 0x0,
/* U+F067 "" */
0x0, 0x0, 0x0, 0x0, 0x8, 0xf8, 0x0, 0x0,
0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0xff,
@ -3222,43 +3260,44 @@ static const lv_font_fmt_txt_glyph_dsc_t glyph_dsc[] = {
{.bitmap_index = 11921, .adv_w = 336, .box_w = 23, .box_h = 22, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 12174, .adv_w = 288, .box_w = 13, .box_h = 22, .ofs_x = 1, .ofs_y = -2},
{.bitmap_index = 12317, .adv_w = 288, .box_w = 13, .box_h = 22, .ofs_x = 4, .ofs_y = -2},
{.bitmap_index = 12460, .adv_w = 336, .box_w = 21, .box_h = 20, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 12670, .adv_w = 336, .box_w = 21, .box_h = 4, .ofs_x = 0, .ofs_y = 8},
{.bitmap_index = 12712, .adv_w = 432, .box_w = 29, .box_h = 22, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 13031, .adv_w = 480, .box_w = 32, .box_h = 26, .ofs_x = -1, .ofs_y = -4},
{.bitmap_index = 13447, .adv_w = 384, .box_w = 26, .box_h = 22, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 13733, .adv_w = 384, .box_w = 24, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 13997, .adv_w = 384, .box_w = 22, .box_h = 13, .ofs_x = 1, .ofs_y = 4},
{.bitmap_index = 14140, .adv_w = 384, .box_w = 22, .box_h = 13, .ofs_x = 1, .ofs_y = 1},
{.bitmap_index = 14283, .adv_w = 432, .box_w = 29, .box_h = 19, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 14559, .adv_w = 384, .box_w = 24, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 14823, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 15111, .adv_w = 384, .box_w = 25, .box_h = 25, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 15424, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 12460, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 12748, .adv_w = 336, .box_w = 21, .box_h = 20, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 12958, .adv_w = 336, .box_w = 21, .box_h = 4, .ofs_x = 0, .ofs_y = 8},
{.bitmap_index = 13000, .adv_w = 432, .box_w = 29, .box_h = 22, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 13319, .adv_w = 480, .box_w = 32, .box_h = 26, .ofs_x = -1, .ofs_y = -4},
{.bitmap_index = 13735, .adv_w = 384, .box_w = 26, .box_h = 22, .ofs_x = -1, .ofs_y = -2},
{.bitmap_index = 14021, .adv_w = 384, .box_w = 24, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 14285, .adv_w = 384, .box_w = 22, .box_h = 13, .ofs_x = 1, .ofs_y = 4},
{.bitmap_index = 14428, .adv_w = 384, .box_w = 22, .box_h = 13, .ofs_x = 1, .ofs_y = 1},
{.bitmap_index = 14571, .adv_w = 432, .box_w = 29, .box_h = 19, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 14847, .adv_w = 384, .box_w = 24, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 15111, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 15399, .adv_w = 384, .box_w = 25, .box_h = 25, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 15712, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 16000, .adv_w = 336, .box_w = 21, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 16231, .adv_w = 336, .box_w = 21, .box_h = 18, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 16420, .adv_w = 384, .box_w = 24, .box_h = 18, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 16636, .adv_w = 336, .box_w = 19, .box_h = 26, .ofs_x = 1, .ofs_y = -4},
{.bitmap_index = 16883, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 17171, .adv_w = 336, .box_w = 23, .box_h = 24, .ofs_x = -1, .ofs_y = -3},
{.bitmap_index = 17447, .adv_w = 432, .box_w = 27, .box_h = 18, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 17690, .adv_w = 336, .box_w = 21, .box_h = 20, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 17900, .adv_w = 288, .box_w = 18, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 18098, .adv_w = 480, .box_w = 30, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 18428, .adv_w = 432, .box_w = 27, .box_h = 16, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 18644, .adv_w = 432, .box_w = 27, .box_h = 16, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 18860, .adv_w = 432, .box_w = 27, .box_h = 16, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 19076, .adv_w = 432, .box_w = 27, .box_h = 16, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 19292, .adv_w = 432, .box_w = 27, .box_h = 16, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 19508, .adv_w = 480, .box_w = 31, .box_h = 20, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 19818, .adv_w = 336, .box_w = 19, .box_h = 26, .ofs_x = 1, .ofs_y = -4},
{.bitmap_index = 20065, .adv_w = 336, .box_w = 21, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 20317, .adv_w = 384, .box_w = 25, .box_h = 25, .ofs_x = -1, .ofs_y = -4},
{.bitmap_index = 20630, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 20918, .adv_w = 432, .box_w = 27, .box_h = 18, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 21161, .adv_w = 288, .box_w = 18, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 21377, .adv_w = 384, .box_w = 24, .box_h = 16, .ofs_x = 0, .ofs_y = 1}
{.bitmap_index = 16000, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 16288, .adv_w = 336, .box_w = 21, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 16519, .adv_w = 336, .box_w = 21, .box_h = 18, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 16708, .adv_w = 384, .box_w = 24, .box_h = 18, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 16924, .adv_w = 336, .box_w = 19, .box_h = 26, .ofs_x = 1, .ofs_y = -4},
{.bitmap_index = 17171, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 17459, .adv_w = 336, .box_w = 23, .box_h = 24, .ofs_x = -1, .ofs_y = -3},
{.bitmap_index = 17735, .adv_w = 432, .box_w = 27, .box_h = 18, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 17978, .adv_w = 336, .box_w = 21, .box_h = 20, .ofs_x = 0, .ofs_y = -1},
{.bitmap_index = 18188, .adv_w = 288, .box_w = 18, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 18386, .adv_w = 480, .box_w = 30, .box_h = 22, .ofs_x = 0, .ofs_y = -2},
{.bitmap_index = 18716, .adv_w = 432, .box_w = 27, .box_h = 16, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 18932, .adv_w = 432, .box_w = 27, .box_h = 16, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 19148, .adv_w = 432, .box_w = 27, .box_h = 16, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 19364, .adv_w = 432, .box_w = 27, .box_h = 16, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 19580, .adv_w = 432, .box_w = 27, .box_h = 16, .ofs_x = 0, .ofs_y = 1},
{.bitmap_index = 19796, .adv_w = 480, .box_w = 31, .box_h = 20, .ofs_x = -1, .ofs_y = -1},
{.bitmap_index = 20106, .adv_w = 336, .box_w = 19, .box_h = 26, .ofs_x = 1, .ofs_y = -4},
{.bitmap_index = 20353, .adv_w = 336, .box_w = 21, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 20605, .adv_w = 384, .box_w = 25, .box_h = 25, .ofs_x = -1, .ofs_y = -4},
{.bitmap_index = 20918, .adv_w = 384, .box_w = 24, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 21206, .adv_w = 432, .box_w = 27, .box_h = 18, .ofs_x = 0, .ofs_y = 0},
{.bitmap_index = 21449, .adv_w = 288, .box_w = 18, .box_h = 24, .ofs_x = 0, .ofs_y = -3},
{.bitmap_index = 21665, .adv_w = 384, .box_w = 24, .box_h = 16, .ofs_x = 0, .ofs_y = 1}
};
/*---------------------
@ -3269,11 +3308,12 @@ static const uint16_t unicode_list_1[] = {
0x0, 0x1f72, 0xe004, 0xef51, 0xef58, 0xef5b, 0xef5c, 0xef5d,
0xef61, 0xef63, 0xef65, 0xef69, 0xef6c, 0xef71, 0xef76, 0xef77,
0xef78, 0xef8e, 0xef93, 0xef98, 0xef9b, 0xef9c, 0xef9d, 0xefa1,
0xefa2, 0xefa3, 0xefa4, 0xefb7, 0xefb8, 0xefbe, 0xefc0, 0xefc1,
0xefc4, 0xefc7, 0xefc8, 0xefc9, 0xefcb, 0xefe3, 0xefe5, 0xf014,
0xf015, 0xf017, 0xf019, 0xf030, 0xf037, 0xf03a, 0xf043, 0xf06c,
0xf074, 0xf0a8, 0xf13b, 0xf190, 0xf191, 0xf192, 0xf193, 0xf194,
0xf1d7, 0xf1e3, 0xf23d, 0xf254, 0xf2c9, 0xf4aa, 0xf712, 0xf7f2
0xefa2, 0xefa3, 0xefa4, 0xefaa, 0xefb7, 0xefb8, 0xefbe, 0xefc0,
0xefc1, 0xefc4, 0xefc7, 0xefc8, 0xefc9, 0xefcb, 0xefe3, 0xefe5,
0xf014, 0xf015, 0xf017, 0xf019, 0xf030, 0xf037, 0xf03a, 0xf043,
0xf06c, 0xf074, 0xf0a8, 0xf13b, 0xf190, 0xf191, 0xf192, 0xf193,
0xf194, 0xf1d7, 0xf1e3, 0xf23d, 0xf254, 0xf2c9, 0xf4aa, 0xf712,
0xf7f2
};
/*Collect the unicode lists and glyph_id offsets*/
@ -3285,7 +3325,7 @@ static const lv_font_fmt_txt_cmap_t cmaps[] =
},
{
.range_start = 176, .range_length = 63475, .glyph_id_start = 96,
.unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 64, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
.unicode_list = unicode_list_1, .glyph_id_ofs_list = NULL, .list_length = 65, .type = LV_FONT_FMT_TXT_CMAP_SPARSE_TINY
}
};

@ -15,6 +15,11 @@
*/
void nm_sys_shutdown();
/**
* creates an info panel with build info, semver, about and other related items.
*/
int nm_create_info_panel(lv_obj_t *parent);
/**
* invoken when the UI is switched to the network settings tab.
*/
@ -321,23 +326,42 @@ extern int nm_ui_init(lv_disp_t *disp)
* 0: bitcoin
* 1: lightning
* 2: settings
* 3: ndg build info and versioning
*/
lv_obj_t *tab_btc = lv_tabview_add_tab(tabview, NM_SYMBOL_BITCOIN " BITCOIN");
if (tab_btc == NULL) {
return -1;
}
create_bitcoin_panel(tab_btc);
lv_obj_t *tab_lnd = lv_tabview_add_tab(tabview, NM_SYMBOL_BOLT " LIGHTNING");
if (tab_lnd == NULL) {
return -1;
}
create_lnd_panel(tab_lnd);
lv_obj_t *tab_settings = lv_tabview_add_tab(tabview, LV_SYMBOL_SETTINGS " SETTINGS");
if (tab_settings == NULL) {
return -1;
}
create_settings_panel(tab_settings);
lv_obj_t *tab_info = lv_tabview_add_tab(tabview, NM_SYMBOL_INFO);
if (tab_info == NULL) {
return -1;
}
if (nm_create_info_panel(tab_info) != 0) {
return -1;
}
/* make the info tab button narrower, just for the icon to fit,
* by widening the other tab buttons relative width. */
lv_obj_t *tabbs = lv_tabview_get_tab_btns(tabview);
lv_btnmatrix_set_btn_width(tabbs, 0, 3);
lv_btnmatrix_set_btn_width(tabbs, 1, 3);
lv_btnmatrix_set_btn_width(tabbs, 2, 3);
lv_obj_add_event_cb(tabview, tab_changed_event_cb, LV_EVENT_VALUE_CHANGED, NULL);
return 0;
}

@ -1,3 +1,4 @@
const buildopts = @import("build_options");
const std = @import("std");
const lvgl = @import("lvgl.zig");
@ -50,3 +51,17 @@ fn poweroffModalCallback(btn_idx: usize) void {
// proceed with shutdown
nm_sys_shutdown();
}
export fn nm_create_info_panel(parent: *lvgl.LvObj) c_int {
createInfoPanel(parent) catch |err| {
logger.err("createInfoPanel: {any}", .{err});
return -1;
};
return 0;
}
fn createInfoPanel(parent: *lvgl.LvObj) !void {
var buf: [100]u8 = undefined;
const s = try std.fmt.bufPrintZ(&buf, "ndg version: {any}", .{buildopts.semver});
_ = try lvgl.createLabel(parent, s, .{ .long_mode = .wrap, .pos = .none });
}