aboutsummaryrefslogtreecommitdiff
path: root/include/buffers.h
diff options
context:
space:
mode:
authorDavid Moc <personal@cdatgoose.org>2026-05-31 03:47:04 +0200
committerDavid Moc <personal@cdatgoose.org>2026-05-31 03:47:04 +0200
commit6aeaa171dc1ca43392f53cbd02097f76e1b1c5a0 (patch)
treeb16f559f5a701123ebe7b15ecebb9325263b4a3c /include/buffers.h
parente930cc6bdc7f62befac063d7d9d016ffb0a64f1a (diff)
Hardened API, tetris, MD-View
Diffstat (limited to 'include/buffers.h')
-rw-r--r--include/buffers.h36
1 files changed, 36 insertions, 0 deletions
diff --git a/include/buffers.h b/include/buffers.h
index 503dfb8..148d718 100644
--- a/include/buffers.h
+++ b/include/buffers.h
@@ -75,4 +75,40 @@ int buffer_add_interactive_action(buffer_t *buffer,
ecex_interactive_line_action_t *buffer_interactive_action_at_line(buffer_t *buffer,
size_t line);
+int ecex_buffer_set_renderer(buffer_t *buffer,
+ ecex_buffer_render_fn fn,
+ void *userdata,
+ ecex_buffer_userdata_free_fn free_fn,
+ int flags);
+int ecex_buffer_clear_renderer(buffer_t *buffer);
+int ecex_buffer_has_renderer(buffer_t *buffer);
+void *ecex_buffer_renderer_userdata(buffer_t *buffer);
+int ecex_buffer_set_mouse_handler(buffer_t *buffer,
+ ecex_buffer_mouse_fn fn,
+ void *userdata,
+ ecex_buffer_userdata_free_fn free_fn);
+int ecex_buffer_clear_mouse_handler(buffer_t *buffer);
+int ecex_buffer_has_mouse_handler(buffer_t *buffer);
+void *ecex_buffer_mouse_userdata(buffer_t *buffer);
+int ecex_buffer_set_animation(buffer_t *buffer,
+ ecex_buffer_tick_fn fn,
+ void *userdata,
+ ecex_buffer_userdata_free_fn free_fn,
+ double fps);
+int ecex_buffer_set_animation_ms(buffer_t *buffer,
+ ecex_buffer_tick_ms_fn fn,
+ void *userdata,
+ ecex_buffer_userdata_free_fn free_fn,
+ int fps);
+int ecex_buffer_clear_animation(buffer_t *buffer);
+int ecex_buffer_is_animating(buffer_t *buffer);
+void *ecex_buffer_animation_userdata(buffer_t *buffer);
+int ecex_tick_animations(ecex_t *ed, double now_seconds);
+int ecex_buffer_replace_text(buffer_t *buffer, const char *text);
+void ecex_buffer_set_modified(buffer_t *buffer, int modified);
+int ecex_buffer_text_len(buffer_t *buffer);
+int ecex_buffer_scroll_line(buffer_t *buffer);
+int ecex_buffer_line_count_i(buffer_t *buffer);
+int ecex_buffer_line_copy(buffer_t *buffer, int line, char *out, int out_cap);
+
#endif