diff options
Diffstat (limited to 'src/displayapp/screens/Symbols.h')
| -rw-r--r-- | src/displayapp/screens/Symbols.h | 233 |
1 files changed, 207 insertions, 26 deletions
diff --git a/src/displayapp/screens/Symbols.h b/src/displayapp/screens/Symbols.h index e68a7af..86b4b8b 100644 --- a/src/displayapp/screens/Symbols.h +++ b/src/displayapp/screens/Symbols.h @@ -1,29 +1,129 @@ #pragma once + // For neofont: + // Layout for 3-byte codes: 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx + // U+F0000: 11110011 10110000 000000 000000 + // Neofont glyph: 11110011 10110zzz zzzzyy yyyyyy + // CDD DEEEAA ABBBCC + // \xF3 \xB[0-7] \x[8-B]. \x[8-B]. + // "\xF3\xB5\x80\x97" + +// h + (g<<1) + (f<<2) + (e<<3) + (d << 4) + (c << 5) + (b << 6) + (a << 7), \ +// 0 + (o<<1) + (n<<2) + (m<<3) + (l << 4) + (k << 5) + (j << 6) + (i << 7) \ + +#define G( \ + a,b,c, \ + d,e,f, \ + g,h,i, \ + j,k,l, \ + m,n,o \ +) { \ + ((char)( 0xF3 )), \ + ((char)( 0xB0 | (i<<2) | (j<<1) | k )), \ + ((char)( 0x80 | (l<<5) | (m<<4) | (n<<3) | (o<<2) | (a<<1) | b )), \ + ((char)( 0x80 | (c<<5) | (d<<4) | (e<<3) | (f<<2) | (g<<1) | h )), \ + 0 \ +} + +#define X 1 +#define _ 0 + namespace Pinetime { namespace Applications { namespace Screens { namespace Symbols { static constexpr const char* none = ""; - static constexpr const char* batteryFull = "\xEF\x89\x80"; - static constexpr const char* batteryEmpty = "\xEF\x89\x84"; - static constexpr const char* batteryThreeQuarter = "\xEF\x89\x81"; - static constexpr const char* batteryHalf = "\xEF\x89\x82"; - static constexpr const char* batteryOneQuarter = "\xEF\x89\x83"; - static constexpr const char* heartBeat = "\xEF\x88\x9E"; - static constexpr const char* bluetoothFull = "\xEF\x8A\x93"; - static constexpr const char* bluetooth = "\xEF\x8A\x94"; - static constexpr const char* plug = "\xEF\x87\xA6"; - static constexpr const char* shoe = "\xEF\x95\x8B"; + static constexpr const char batteryFull[] = + // "\xEF\x89\x80"; + G(_, X, _, + X, X, X, + X, X, X, + X, X, X, + X, X, X); + static constexpr const char batteryEmpty[] = + // "\xEF\x89\x84"; + G(_, X, _, + X, _, X, + X, _, X, + X, _, X, // l is ignored! + X, X, X); + static constexpr const char batteryThreeQuarter[] = + // Was: "\xEF\x89\x81"; + G(_, X, _, + X, X, X, + X, _, X, + X, X, X, + X, X, X); + static constexpr const char batteryHalf[] = + // Was: "\xEF\x89\x82"; + G(_, X, _, + X, _, X, + X, X, X, + X, X, X, + X, X, X); + static constexpr const char batteryOneQuarter[] = + // Was: "\xEF\x89\x83"; + G(_, X, _, + X, _, X, + X, _, X, + X, X, X, + X, X, X); + static constexpr const char heartBeat[] = + // Was: "\xEF\x88\x9E" + G(_, _, _, + X, _, X, + X, X, X, + _, X, _, + _, _, _); + static constexpr const char bluetoothFull[] = + // "\xEF\x8A\x93"; + G(X, X, _, + _, X, X, + X, X, _, + _, X, X, + X, X, _); + static constexpr const char bluetooth[] = + // "\xEF\x8A\x94"; + G(_, X, _, + _, X, X, + X, X, _, + _, X, X, + _, X, _); + static constexpr const char plug[] = + // "\xEF\x87\xA6"; + G(X, _, X, + X, X, X, + X, X, X, + _, X, _, + _, X, _); + static constexpr const char shoe[] = + // "\xEF\x95\x8B"; + G(_, _, _, + _, _, _, + _, _, X, + X, _, X, + X, _, _); + static constexpr const char music[] = + // "\xEF\x80\x81"; + G(_, X, X, + _, _, X, + _, X, X, + X, X, X, + _, X, _); static constexpr const char* clock = "\xEF\x80\x97"; static constexpr const char* info = "\xEF\x84\xA9"; static constexpr const char* list = "\xEF\x80\xBA"; static constexpr const char* sun = "\xEF\x86\x85"; static constexpr const char* check = "\xEF\x95\xA0"; - static constexpr const char* music = "\xEF\x80\x81"; static constexpr const char* tachometer = "\xEF\x8F\xBD"; static constexpr const char* asterisk = "\xEF\x81\xA9"; - static constexpr const char* paintbrush = "\xEF\x87\xBC"; + static constexpr const char paintbrush[] = + // "\xEF\x87\xBC"; + G(_, X, X, + _, X, X, + _, X, X, + _, X, X, + X, X, _); static constexpr const char* paddle = "\xEF\x91\x9D"; static constexpr const char* map = "\xEF\x96\xa0"; static constexpr const char* qrcode = "\xEF\x80\xa9"; @@ -34,30 +134,111 @@ namespace Pinetime { static constexpr const char* volumDown = "\xEF\x80\xA7"; static constexpr const char* stepForward = "\xEF\x81\x91"; static constexpr const char* stepBackward = "\xEF\x81\x88"; - static constexpr const char* play = "\xEF\x81\x8B"; - static constexpr const char* pause = "\xEF\x81\x8C"; - static constexpr const char* stop = "\xEF\x81\x8D"; - static constexpr const char* stopWatch = "\xEF\x8B\xB2"; - static constexpr const char* hourGlass = "\xEF\x89\x92"; - static constexpr const char* lapsFlag = "\xEF\x80\xA4"; + static constexpr const char play[] = + // "\xEF\x81\x8B"; + G(X, _, _, + X, X, _, + X, X, X, + X, X, _, + X, _, _); + static constexpr const char pause[] = + // "\xEF\x81\x8C"; + G(_, _, _, + X, _, X, + X, _, X, + X, _, X, + _, _, _); + static constexpr const char stop[] = + // "\xEF\x81\x8D"; + G(_, _, _, + X, X, X, + X, X, X, + X, X, X, + _, _, _); + static constexpr const char stopWatch[] = + // "\xEF\x8B\xB2"; + G(X, _, _, + X, X, _, + X, X, X, + X, X, _, + X, _, _); + static constexpr const char hourGlass[] = + // "\xEF\x89\x92"; + G(X, X, X, + X, X, X, + _, X, _, + X, X, X, + X, X, X); + static constexpr const char lapsFlag[] = + // "\xEF\x80\xA4"; + G(_, X, _, + X, _, X, + X, _, _, + X, _, X, + _, X, _); static constexpr const char* drum = "\xEF\x95\xA9"; static constexpr const char* chartLine = "\xEF\x88\x81"; static constexpr const char* eye = "\xEF\x81\xAE"; static constexpr const char* home = "\xEF\x80\x95"; // lv_font_sys_48.c - static constexpr const char* settings = "\xEE\xA4\x82"; // e902 - - static constexpr const char* brightnessHigh = "\xEE\xA4\x84"; // e904 - static constexpr const char* brightnessLow = "\xEE\xA4\x85"; // e905 - static constexpr const char* brightnessMedium = "\xEE\xA4\x86"; // e906 + static constexpr const char settings[] = + // "\xEE\xA4\x82"; // e902 + G(_, X, X, + X, _, _, + _, X, X, + _, X, _, + _, X, _); - static constexpr const char* notificationsOff = "\xEE\xA4\x8B"; // e90b - static constexpr const char* notificationsOn = "\xEE\xA4\x8C"; // e90c + static constexpr const char brightnessHigh[] = + // "\xEE\xA4\x84"; // e904 + G(X, X, X, + _, X, _, + X, X, X, + _, X, _, + X, X, X); + static constexpr const char brightnessLow[] = + // "\xEE\xA4\x85"; // e905 + G(_, _, _, + _, X, _, + X, X, X, + _, X, _, + _, _, _); + static constexpr const char brightnessMedium[] = + // "\xEE\xA4\x86"; // e906 + G(_, X, _, + X, X, X, + _, X, _, + X, X, X, + _, X, _); - static constexpr const char* highlight = "\xEE\xA4\x87"; // e907 + static constexpr const char notificationsOff[] = + // "\xEE\xA4\x8B"; // e90b + G(_, X, _, + _, X, _, + X, X, _, + X, _, _, + _, X, X); + static constexpr const char notificationsOn[] = + // "\xEE\xA4\x8C"; // e90c + G(_, X, _, + _, X, _, + X, X, X, + X, X, X, + X, X, X); + static constexpr const char highlight[] = + // "\xEE\xA4\x87"; // e907 + G(X, X, X, + X, X, X, + _, X, _, + _, X, _, + _, X, _); } } } } + +#undef G +#undef X +#undef _ |
