summaryrefslogtreecommitdiff
path: root/body/c_fl_copy_surface.cpp
diff options
context:
space:
mode:
authorJedidiah Barber <contact@jedbarber.id.au>2025-01-21 21:04:54 +1300
committerJedidiah Barber <contact@jedbarber.id.au>2025-01-21 21:04:54 +1300
commitb4438b2fbe895694be98e6e8426103deefc51448 (patch)
tree760d86cd7c06420a91dad102cc9546aee73146fc /body/c_fl_copy_surface.cpp
parenta4703a65b015140cd4a7a985db66264875ade734 (diff)
Split public API and private implementation files into different directories
Diffstat (limited to 'body/c_fl_copy_surface.cpp')
-rw-r--r--body/c_fl_copy_surface.cpp55
1 files changed, 55 insertions, 0 deletions
diff --git a/body/c_fl_copy_surface.cpp b/body/c_fl_copy_surface.cpp
new file mode 100644
index 0000000..a13b314
--- /dev/null
+++ b/body/c_fl_copy_surface.cpp
@@ -0,0 +1,55 @@
+
+
+// Programmed by Jedidiah Barber
+// Released into the public domain
+
+
+#include <FL/Fl_Copy_Surface.H>
+#include <FL/Fl_Widget.H>
+#include <FL/Fl_Window.H>
+#include "c_fl_copy_surface.h"
+
+
+
+
+// Flattened C API
+
+COPYSURFACE new_fl_copy_surface(int w, int h) {
+ Fl_Copy_Surface *c = new Fl_Copy_Surface(w,h);
+ return c;
+}
+
+void free_fl_copy_surface(COPYSURFACE c) {
+ delete static_cast<Fl_Copy_Surface*>(c);
+}
+
+
+
+
+int fl_copy_surface_get_w(COPYSURFACE c) {
+ return static_cast<Fl_Copy_Surface*>(c)->w();
+}
+
+int fl_copy_surface_get_h(COPYSURFACE c) {
+ return static_cast<Fl_Copy_Surface*>(c)->h();
+}
+
+
+
+
+void fl_copy_surface_draw(COPYSURFACE c, void * w, int dx, int dy) {
+ static_cast<Fl_Copy_Surface*>(c)->draw(static_cast<Fl_Widget*>(w),dx,dy);
+}
+
+void fl_copy_surface_draw_decorated_window(COPYSURFACE c, void * w, int dx, int dy) {
+ static_cast<Fl_Copy_Surface*>(c)->draw_decorated_window(static_cast<Fl_Window*>(w),dx,dy);
+}
+
+
+
+
+void fl_copy_surface_set_current(COPYSURFACE c) {
+ static_cast<Fl_Copy_Surface*>(c)->set_current();
+}
+
+