summaryrefslogtreecommitdiff
path: root/src/c_fl_rgb_image.cpp
diff options
context:
space:
mode:
authorJedidiah Barber <contact@jedbarber.id.au>2024-02-20 18:04:23 +1300
committerJedidiah Barber <contact@jedbarber.id.au>2024-02-20 18:04:23 +1300
commitf18ea4474bb4905a00e0b39e7205c177ee994196 (patch)
tree67a06833192e0f47695ab872badb88fb0970280a /src/c_fl_rgb_image.cpp
parentc47bea48a24e51e178354f3e3bb53d8b9964b769 (diff)
Improved binding for the FLTK.Images package subtree
Diffstat (limited to 'src/c_fl_rgb_image.cpp')
-rw-r--r--src/c_fl_rgb_image.cpp27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/c_fl_rgb_image.cpp b/src/c_fl_rgb_image.cpp
index 3c0fec6..adde3e4 100644
--- a/src/c_fl_rgb_image.cpp
+++ b/src/c_fl_rgb_image.cpp
@@ -1,15 +1,34 @@
#include <FL/Fl_RGB_Image.H>
+#include <FL/Fl_Pixmap.H>
#include "c_fl_rgb_image.h"
+RGB_IMAGE new_fl_rgb_image(void *data, int w, int h, int d, int ld) {
+ Fl_RGB_Image *rgb = new Fl_RGB_Image(reinterpret_cast<uchar*>(data), w, h, d, ld);
+ return rgb;
+}
+
+RGB_IMAGE new_fl_rgb_image2(void *pix, unsigned int c) {
+ Fl_RGB_Image *rgb = new Fl_RGB_Image(reinterpret_cast<Fl_Pixmap*>(pix), c);
+ return rgb;
+}
+
void free_fl_rgb_image(RGB_IMAGE i) {
delete reinterpret_cast<Fl_RGB_Image*>(i);
}
+size_t fl_rgb_image_get_max_size() {
+ return Fl_RGB_Image::max_size();
+}
+
+void fl_rgb_image_set_max_size(size_t v) {
+ Fl_RGB_Image::max_size(v);
+}
+
RGB_IMAGE fl_rgb_image_copy(RGB_IMAGE i, int w, int h) {
// virtual so disable dispatch
return reinterpret_cast<Fl_RGB_Image*>(i)->Fl_RGB_Image::copy(w, h);
@@ -35,6 +54,14 @@ void fl_rgb_image_desaturate(RGB_IMAGE i) {
+void fl_rgb_image_uncache(RGB_IMAGE i) {
+ // virtual so disable dispatch
+ reinterpret_cast<Fl_RGB_Image*>(i)->Fl_RGB_Image::uncache();
+}
+
+
+
+
void fl_rgb_image_draw2(RGB_IMAGE i, int x, int y) {
reinterpret_cast<Fl_RGB_Image*>(i)->draw(x, y);
}