|
LCDGFX LCD display driver
1.2.0
Lightweight graphics library for SSD1306, SSD1325, SSD1327, SSD1331, SSD1351, SH1106, SH1107, IL9163, ST7735, ST7789, ILI9341, PCD8544 displays over I2C/SPI
|
All notable changes to lcdgfx are documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
LcdGfxMenu / LcdGfxCheckboxMenu — eliminate flicker and scroll artifacts; do not invert checkbox mark itself when row is highlighted (only label text is inverted); checkbox toggle now reflects on screen immediately without needing to move selection.LcdGfxSlider — page-aligned 3-fillRect rendering on SSD1306: knob band lives in full pages strictly between the top/bottom border rows, so border lines are never disturbed and the slider does not flicker.LcdGfxSpinbox — central text band cleared explicitly each frame so value updates do not leave artifacts; border + arrows redrawn cleanly.LcdGfxSlider — horizontal value slider with bounded range and keyboard navigation (up/down). See examples/gui/slider_demo.LcdGfxSpinbox — bounded integer spinbox with configurable step. See examples/gui/spinbox_demo.LcdGfxTextEntry — single-line text-entry widget with cursor and cycleable charset (ASCII default; UTF-8 charset works with a secondary font). See examples/gui/text_entry_demo.LcdGfxXpt2046 — templated SPI driver for XPT2046 resistive touch controllers. Median-of-3 sampling, pressure detection, swappable SPI transport. See examples/touch_demo.TouchCalibration — per-axis affine calibration helper with swap/invert and clamping.LcdGfxMenu::onTouch() and itemAtPoint() — touch-driving the existing menu widget without changing its key API. See examples/gui/menu_touch_demo.lcdgfx::color namespace — header-only, constexpr, to_rgb565 / to_rgb332 / from_rgb / gray (BT.601 weights). Bit-identical to the existing RGB_COLOR16 / RGB_COLOR8 macros.nano_utf8_decode() — stateless UTF-8 decoder in canvas/font_utf8.h. Rejects overlongs, surrogates and codepoints above U+10FFFF.ssd1306xled_font6x8_Cyrillic — proof secondary font covering U+0410..U+042F (А..Я). See examples/utf8_demo.CXXSTD knob in Makefile (defaults to c++11).c++11, c++14 and c++17.docs/controller_matrix.md — capability matrix for every supported display controller.docs/migration_v1_v2.md — migration guide from the v1 API to the v2 API.SSD1325::fillRect 4-bit nibble-packing now respects setColor() for odd columns.make ARCH=linux SDL_EMULATION=y check.