summaryrefslogtreecommitdiff
path: root/body/c_fl_copy_surface.cpp
diff options
context:
space:
mode:
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();
+}
+
+