about summary refs log tree commit diff
path: root/drw.h
diff options
context:
space:
mode:
authorJohn Sullivan <jsullivan@csumb.edu>2020-09-11 01:25:28 -0700
committerJohn Sullivan <jsullivan@csumb.edu>2020-09-13 04:44:15 -0700
commit470046a68cb21c69635d48d424b64b76148dac1c (patch)
treeb0bf94141b1e54489332641c503d17ff5845f4a5 /drw.h
downloadsuggpicker-470046a68cb21c69635d48d424b64b76148dac1c.tar.gz
Init
Diffstat (limited to 'drw.h')
-rw-r--r--drw.h37
1 files changed, 37 insertions, 0 deletions
diff --git a/drw.h b/drw.h
new file mode 100644
index 0000000..15abbb7
--- /dev/null
+++ b/drw.h
@@ -0,0 +1,37 @@
+#ifndef __DRW_H
+#define __DRW_H
+
+struct drw;
+struct drwsurf;
+
+void drw_init(struct drw *d, const char *fc_pattern, struct wl_display *dpy,
+              void *iface);
+void drwsurf_init(struct drw *d, struct drwsurf *ds, struct wl_surface *surf);
+void drwsurf_resize(struct drwsurf *ds, uint32_t w, uint32_t h);
+void drwsurf_flip(struct drwsurf *ds);
+
+struct drw {
+	struct wld_context *wld;
+	struct wld_font_context *fctx;
+	struct wld_font *font;
+};
+
+struct drwsurf {
+	uint32_t w, h;
+	bool dirty;
+
+	struct drw *ctx;
+	struct wl_surface *surf;
+	struct wld_renderer *render;
+	struct wld_buffer *buf;
+	struct wl_buffer *ref;
+
+	struct wl_callback *cb;
+};
+
+typedef union {
+	uint8_t bgra[4];
+	uint32_t color;
+} Color;
+
+#endif