This theming engine uses a bytestring (but supports anything indexable,
as long as the index results are a byte long),
stored as `wasp.system._theme`.
It has a default value, which should not change anything about the way this looks currently.
The theme can be set via `wasp.system.set_theme`,
but this should *ONLY* be used in `main.py`.
`wasp.system.set_theme` will return True if it was successful,
or False if the theme is of an old format.
Using an old format theme will *not* crash the watch,
but will use the default theme instead.
To theme this, one has to use tools/themer.py (use flag -h for complete explanation)
to generate a bytestring that's added in main.py (see diff).
The bytestring is then loaded into 'wasp.system._theme'.
Theme values can be looked up by apps by using `wasp.system.theme("theme-key")`.
Theme keys appear in the function body of `wasp.system.theme()`.
I've took the liberty of converting existing apps to use this method,
and it seems to work well.
A test theme is provided in `tools/test_theme.py`
Signed-off-by: kozova1 <mug66kk@gmail.com>
|
||
|---|---|---|
| .. | ||
| intelhex@c9beea9f10 | ||
| micropython-font-to-py@5975b35883 | ||
| nrfutil@8c2f9e3439 | ||
| ota-dfu@3d6fd30d33 | ||
| pynus@5572b01b26 | ||
| hex2c.py | ||
| hexmerge.py | ||
| preprocess.py | ||
| rle_encode.py | ||
| test_theme.py | ||
| themer.py | ||
| wasptool | ||