Commit graph

59 commits

Author SHA1 Message Date
Daniel Eklöf
d03565a545 config: verify: fix a number of incorrect nodes passed to err_prefix() 2019-01-11 23:20:51 +01:00
Daniel Eklöf
a1e0ce2f87 config: verify: err_prefix(): include line/column info in message 2019-01-11 23:20:23 +01:00
Daniel Eklöf
3f578d30eb config: bar: no need to check for NULL on required attributes 2019-01-11 22:51:01 +01:00
Daniel Eklöf
61a2f84651 config: verify: particles and decorations 2019-01-11 22:44:40 +01:00
Daniel Eklöf
a0cb4aef38 config: verify: make dictionary verifiers data driven 2019-01-11 21:17:11 +01:00
Daniel Eklöf
3d22b30c87 module/network: make module verification data driven
This is done by implementing a generic verify_dict() function, that
takes an array of attribute metadata.

The attribute metadata consists of the attribute name, whether it's
required or optional, and a verify callback function.
2019-01-11 21:01:03 +01:00
Daniel Eklöf
7fc9749c28 module/clock: user can now specify the date/time format strings 2019-01-09 18:50:26 +01:00
Daniel Eklöf
f6977417e0 font: use font-config to load font
This allows us to a) move away from cairo's "toy" API, and b) let the
user specify font options in a single font "name" string:

  Serif:size=10:weight=bold:slant=italic

This also allows us to simplify the font code significantly (except
for the fontconfig parts...); the font no longer sets itself in a
cairo surface - font users do that; the font simply returns a
cairo_scaled_font_t.

Furthermore, font_clone() has now been simplified to basically just
refcount the scaled font. I.e. there's no need to run the full
constructor and lookup and instantiate the cairo scaled font again.
2019-01-09 18:50:16 +01:00
Daniel Eklöf
aa38063e37 wip: verify configuration
We now verify the configuration (currently down to module level, but
not including particles) that are present are of the expected type.
2019-01-06 20:04:01 +01:00