aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorAlexander Orzechowski <alex@ozal.ski>2023-11-23 10:08:28 -0500
committerKirill Primak <vyivel@eclair.cafe>2024-01-18 18:36:54 +0300
commit946fc8094559801bc4be629368ac31025d28165a (patch)
treee320c34a26f9a515b24c7526a9c863408efd799c /include
parent869baff25221e1a1881e9559453faa43f90da33e (diff)
Introduce sway_text_node
This is a helper on top of a wlr_scene_buffer that will handle text rendering for us.
Diffstat (limited to 'include')
-rw-r--r--include/sway/sway_text_node.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/include/sway/sway_text_node.h b/include/sway/sway_text_node.h
new file mode 100644
index 00000000..0d4209bb
--- /dev/null
+++ b/include/sway/sway_text_node.h
@@ -0,0 +1,28 @@
+#ifndef _SWAY_BUFFER_H
+#define _SWAY_BUFFER_H
+#include <wlr/types/wlr_scene.h>
+
+struct sway_text_node {
+ int width;
+ int max_width;
+ int height;
+ int baseline;
+ bool pango_markup;
+ float color[4];
+ float background[4];
+
+ struct wlr_scene_node *node;
+};
+
+struct sway_text_node *sway_text_node_create(struct wlr_scene_tree *parent,
+ char *text, float color[4], bool pango_markup);
+
+void sway_text_node_set_color(struct sway_text_node *node, float color[4]);
+
+void sway_text_node_set_text(struct sway_text_node *node, char *text);
+
+void sway_text_node_set_max_width(struct sway_text_node *node, int max_width);
+
+void sway_text_node_set_background(struct sway_text_node *node, float background[4]);
+
+#endif