qmk_firmware/lib/python/qmk
Nick Brassel 1f2b1dedcc
Quantum Painter (#10174)
* Install dependencies before executing unit tests.

* Split out UTF-8 decoder.

* Fixup python formatting rules.

* Add documentation for QGF/QFF and the RLE format used.

* Add CLI commands for converting images and fonts.

* Add stub rules.mk for QP.

* Add stream type.

* Add base driver and comms interfaces.

* Add support for SPI, SPI+D/C comms drivers.

* Include <qp.h> when enabled.

* Add base support for SPI+D/C+RST panels, as well as concrete implementation of ST7789.

* Add support for GC9A01.

* Add support for ILI9341.

* Add support for ILI9163.

* Add support for SSD1351.

* Implement qp_setpixel, including pixdata buffer management.

* Implement qp_line.

* Implement qp_rect.

* Implement qp_circle.

* Implement qp_ellipse.

* Implement palette interpolation.

* Allow for streams to work with either flash or RAM.

* Image loading.

* Font loading.

* QGF palette loading.

* Progressive decoder of pixel data supporting Raw+RLE, 1-,2-,4-,8-bpp monochrome and palette-based images.

* Image drawing.

* Animations.

* Font rendering.

* Check against 256 colours, dump out the loaded palette if debugging enabled.

* Fix build.

* AVR is not the intended audience.

* `qmk format-c`

* Generation fix.

* First batch of docs.

* More docs and examples.

* Review comments.

* Public API documentation.
2022-04-13 18:00:18 +10:00
..
cli Quantum Painter (#10174) 2022-04-13 18:00:18 +10:00
tests Map data driven DESCRIPTION as string literal (#16523) 2022-03-05 00:20:34 +00:00
__init__.py QMK CLI and JSON keymap support (#6176) 2019-07-15 12:14:27 -07:00
c_parse.py CLI: Lint non-data driven macros in info.json (#16739) 2022-03-27 21:28:36 +01:00
commands.py Merge remote-tracking branch 'origin/master' into develop 2022-03-18 16:02:57 +00:00
comment_remover.py [CLI] Add a subcommand for getting information about a keyboard (#8666) 2020-05-26 13:05:41 -07:00
constants.py [CLI] Add common util for dumping generated content (#16674) 2022-03-18 01:09:29 +00:00
converter.py Add cli convert subcommand, from raw KLE to JSON (#6898) 2019-11-12 20:55:41 -08:00
datetime.py Generate api data on each push (#10609) 2020-10-25 14:48:44 -07:00
decorators.py CLI: Fix automagic (#13046) 2021-05-30 16:17:40 +01:00
errors.py CLI/c2json: Print 'cpp' error when executed in verbose mode (#12869) 2021-05-27 17:42:38 +01:00
git.py Relocate CLI git interactions (#16682) 2022-03-18 16:02:24 +00:00
info.py Add frameworking for development board presets (#16637) 2022-04-03 18:45:10 +01:00
json_encoders.py CLI: Add 'via2json' subcommand (#16468) 2022-03-24 21:13:40 +01:00
json_schema.py CLI: Bump the 'jsonschema' version (#16635) 2022-04-06 19:46:16 +01:00
keyboard.py yapf: disable arithmetic predecence indication (#16749) 2022-03-30 21:54:13 +01:00
keymap.py CLI: Add 'via2json' subcommand (#16468) 2022-03-24 21:13:40 +01:00
makefile.py [CLI] Add a subcommand for getting information about a keyboard (#8666) 2020-05-26 13:05:41 -07:00
math.py [CLI] Add a subcommand for getting information about a keyboard (#8666) 2020-05-26 13:05:41 -07:00
painter_qff.py Quantum Painter (#10174) 2022-04-13 18:00:18 +10:00
painter_qgf.py Quantum Painter (#10174) 2022-04-13 18:00:18 +10:00
painter.py Quantum Painter (#10174) 2022-04-13 18:00:18 +10:00
path.py qmk.path.FileType: fix argument handling (#16693) 2022-03-19 20:58:30 +00:00
submodules.py Align our subprocess usage with current best practices. (#12940) 2021-05-19 15:24:46 -07:00