summaryrefslogtreecommitdiff
path: root/FL/Fl_Screen_Driver.H
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2016-04-03 06:51:09 +0000
committerManolo Gouy <Manolo>2016-04-03 06:51:09 +0000
commitf1ffe2f1fee001ffb3c9327c6c09f5e5d9dc91de (patch)
tree58a67c3e8a8f8d651e358efc70d04747321c251b /FL/Fl_Screen_Driver.H
parentc88af210e775d90d2537f4277909bb081a9c064a (diff)
Rewrite fl_read_image.cxx under the driver model.
Files fl_read_image_mac.cxx and fl_read_image_win32.cxx are no longer used; their content is now in Fl_XXX_Screen_Driver.cxx git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11516 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'FL/Fl_Screen_Driver.H')
-rw-r--r--FL/Fl_Screen_Driver.H11
1 files changed, 11 insertions, 0 deletions
diff --git a/FL/Fl_Screen_Driver.H b/FL/Fl_Screen_Driver.H
index 87ef0261a..d13dbaafe 100644
--- a/FL/Fl_Screen_Driver.H
+++ b/FL/Fl_Screen_Driver.H
@@ -37,6 +37,8 @@
// TODO: application shortcuts
class Fl_Window;
+class Fl_RGB_Image;
+class Fl_Group;
class FL_EXPORT Fl_Screen_Driver {
@@ -118,6 +120,15 @@ public:
static unsigned font_desc_size();
static const char *font_name(int num);
static void font_name(int num, const char *name);
+ // read raw image from a window or an offscreen buffer
+#if defined(FL_PORTING)
+# pragma message "FL_PORTING: implement code to read RGB data from screen"
+#endif
+ virtual uchar *read_image(uchar *p, int x, int y, int w, int h, int alpha);
+ virtual uchar *read_win_rectangle(uchar *p, int X, int Y, int w, int h, int alpha) {return NULL;}
+ static void write_image_inside(Fl_RGB_Image *to, Fl_RGB_Image *from, int to_x, int to_y);
+ static Fl_RGB_Image *traverse_to_gl_subwindows(Fl_Group *g, uchar *p, int x, int y, int w, int h, int alpha,
+ Fl_RGB_Image *full_img);
};