From c2ef5b291c1ef9120ac9d5c29b378317ab189212 Mon Sep 17 00:00:00 2001 From: Federico Angelilli Date: Thu, 2 Nov 2023 19:57:11 +0100 Subject: Add basic x11 and drawing scaffolding --- draw.c | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 draw.c (limited to 'draw.c') diff --git a/draw.c b/draw.c new file mode 100644 index 0000000..248f59c --- /dev/null +++ b/draw.c @@ -0,0 +1,34 @@ +#include +#include +#include + +#include "x11.h" + +void draw(Window *win) +{ + double scale = window_get_scale(win); + + int w = 1000, h = 1000; + cairo_surface_t *surface = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, + round(w * scale), + round(h * scale)); + + cairo_t *cr = cairo_create(surface); + + + cairo_set_source_rgb(cr, 0.0, 1.0, 0.0); + cairo_rectangle(cr, 0, 0, 10000, 10000); + cairo_fill(cr); + + cairo_select_font_face(cr, "serif", CAIRO_FONT_SLANT_NORMAL, CAIRO_FONT_WEIGHT_BOLD); + cairo_set_font_size(cr, 50.0); + cairo_set_source_rgb(cr, 0, 0, 0); + cairo_move_to(cr, 50, 50); + cairo_show_text(cr, "Hello, world"); + + cairo_destroy(cr); + window_paint_surface(win, surface, w, h); + cairo_surface_destroy(surface); +} + +// vim: set ts=4 sw=4 et -- cgit v1.2.3