forked from external/yambar
All decoration, particle and module interfaces now takes a pixman_image_t parameter, and all drawing is done using pixman APIs. The wayland/xcb backends implement a new interface functions, get_pixman_image(), that should return a pixman image instance that is suitable for rendering. In the wayland backend, the image uses the same backing data as the cairo surface. In the XCB backend, we create a new image each time, and then blit it to the cairo surface at commit time.
27 lines
636 B
C
27 lines
636 B
C
#pragma once
|
|
|
|
#include "font.h"
|
|
#include "yml.h"
|
|
#include "bar/bar.h"
|
|
|
|
struct bar;
|
|
struct particle;
|
|
|
|
bool conf_verify_bar(const struct yml_node *bar);
|
|
struct bar *conf_to_bar(const struct yml_node *bar, enum bar_backend backend);
|
|
|
|
/*
|
|
* Utility functions, for e.g. modules
|
|
*/
|
|
|
|
pixman_color_t conf_to_color(const struct yml_node *node);
|
|
struct font *conf_to_font(const struct yml_node *node);
|
|
|
|
struct conf_inherit {
|
|
const struct font *font;
|
|
pixman_color_t foreground;
|
|
};
|
|
|
|
struct particle *conf_to_particle(
|
|
const struct yml_node *node, struct conf_inherit inherited);
|
|
struct deco *conf_to_deco(const struct yml_node *node);
|