summaryrefslogtreecommitdiff
path: root/shared-module/displayio/Palette.c
AgeCommit message (Collapse)Author
2021-03-16add is_transparent getter to displayio.PaletteKevin Matocha
2021-03-15run code formatting scriptmicroDev
2020-11-18Fix Palette grayscale for EInk.Scott Shawcroft
It needs to do the bitmasking that was only added to ColorConverter in #3611
2020-06-10Issue #3014 - refresh after changing to transparentDavePutz
Adding self->needs_refresh = true; in common_hal_displayio_palette_make_opaque() and common_hal_displayio_palette_make_transparent()
2020-04-14displayio: swap colors in palettes tooJeff Epler
.. change the in-rom palette to be in RGB565 order
2019-08-22EPaper displays work mostly.Scott Shawcroft
2019-07-19Add support for grayscale displays that are < 8 bit depth.Scott Shawcroft
This also improves Palette so it stores the original RGB888 colors. Lastly, it adds I2CDisplay as a display bus to talk over I2C. Particularly useful for the SSD1306. Fixes #1828. Fixes #1956
2019-06-12Add partial display update support.Scott Shawcroft
Different operations to the display tree have different costs. Be aware of these costs when optimizing your code. * Changing tiles indices in a TileGrid will update an area covering them all. * Changing a palette will refresh every object that references it. * Moving a TileGrid will update both where it was and where it moved to. * Adding something to a Group will refresh each individual area it covers. * Removing things from a Group will refresh one area that covers all previous locations. (Not separate areas like add.) * Setting a new top level Group will refresh the entire display. Only TileGrid moves are optimized for overlap. All other overlaps cause sending of duplicate pixels. This also adds flip_x, flip_y and transpose_xy to TileGrid. They change the direction of the pixels but not the location. Fixes #1169. Fixes #1705. Fixes #1923.
2019-01-23Make palette color ordering consistent with ColorConvertes and fix blinka.Scott Shawcroft
2018-09-06Minor tweaks based on feedbackScott Shawcroft
2018-08-31Introduce displayio to render graphics to displays.Scott Shawcroft
It's designed to minimize RAM footprint by using Sprites to represent objects on the screen. The object model also facilitates partial screen updating which reduces the bandwidth needed to display. This is all handled in C. Python simply manipulates the objects with the ability to synchronize to frame timing.