summaryrefslogtreecommitdiff
path: root/FL
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2016-01-10 19:08:16 +0000
committerManolo Gouy <Manolo>2016-01-10 19:08:16 +0000
commiteeb65bef23b2d269ea38474c04a55ffca5c6e63e (patch)
treee00061d0a9dfd7b28e031b1f976ae31c852fac39 /FL
parentacc50806538da470ba18a2f7b76ea65a64cb5f5c (diff)
1) Replicate in branch-1.3-porting all recent changes of branch-1.3
2) Advance branch-1.3-porting with new function Fl_X::capture_titlebar_and_borders() that contains all the platform-specific code of all operations related to drawing window borders and title bars. What is platform-specific and what is not is therefore much clearer, to ease porting. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11002 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'FL')
-rw-r--r--FL/Fl_Image_Surface.H1
-rw-r--r--FL/Fl_Paged_Device.H12
-rw-r--r--FL/mac.H1
-rw-r--r--FL/win32.H1
-rw-r--r--FL/x.H1
5 files changed, 6 insertions, 10 deletions
diff --git a/FL/Fl_Image_Surface.H b/FL/Fl_Image_Surface.H
index 955576610..d6ed05e55 100644
--- a/FL/Fl_Image_Surface.H
+++ b/FL/Fl_Image_Surface.H
@@ -70,6 +70,7 @@ public:
void set_current();
void draw(Fl_Widget*, int delta_x = 0, int delta_y = 0);
Fl_RGB_Image *image();
+ void draw_decorated_window(Fl_Window* win, int delta_x = 0, int delta_y = 0);
};
#ifdef __APPLE__
diff --git a/FL/Fl_Paged_Device.H b/FL/Fl_Paged_Device.H
index 9dd6b7d8d..968f87b74 100644
--- a/FL/Fl_Paged_Device.H
+++ b/FL/Fl_Paged_Device.H
@@ -36,17 +36,9 @@
or Fl_PostScript_File_Device instead.
*/
class FL_EXPORT Fl_Paged_Device : public Fl_Surface_Device {
-#ifdef __APPLE__
- // not needed
-#elif defined(WIN32)
friend class Fl_Copy_Surface;
- void draw_decorated_window(Fl_Window *win, int x_offset, int y_offset, Fl_Surface_Device *toset);
-#elif defined(FL_PORTING)
-# pragma message "FL_PORTING: define member variables to support Fl_Copy_Surface in Fl_Paged_Device"
-#else // X11
- friend class Fl_Copy_Surface;
- void draw_decorated_window(Fl_Window *win, int x_offset, int y_offset, Fl_Surface_Device *toset);
-#endif
+ friend class Fl_Image_Surface;
+ void draw_decorated_window(Fl_Window *win, int x_offset, int y_offset);
public:
/**
\brief Possible page formats.
diff --git a/FL/mac.H b/FL/mac.H
index a8a6fc271..31ff624fd 100644
--- a/FL/mac.H
+++ b/FL/mac.H
@@ -199,6 +199,7 @@ public:
void set_icons() {};
int set_cursor(Fl_Cursor);
int set_cursor(const Fl_RGB_Image*, int, int);
+ void capture_titlebar_and_borders(Fl_RGB_Image*& top, Fl_RGB_Image*& left, Fl_RGB_Image*& bottom, Fl_RGB_Image*& right);
static CGImageRef CGImage_from_window_rect(Fl_Window *win, int x, int y, int w, int h);
static unsigned char *bitmap_from_window_rect(Fl_Window *win, int x, int y, int w, int h, int *bytesPerPixel);
static Fl_Region intersect_region_and_rect(Fl_Region current, int x,int y,int w, int h);
diff --git a/FL/win32.H b/FL/win32.H
index 657a66d9f..c7f689ede 100644
--- a/FL/win32.H
+++ b/FL/win32.H
@@ -90,6 +90,7 @@ public:
void set_icons();
int set_cursor(Fl_Cursor);
int set_cursor(const Fl_RGB_Image*, int, int);
+ void capture_titlebar_and_borders(Fl_RGB_Image*& top, Fl_RGB_Image*& left, Fl_RGB_Image*& bottom, Fl_RGB_Image*& right);
static Fl_X* make(Fl_Window*);
};
extern FL_EXPORT UINT fl_wake_msg;
diff --git a/FL/x.H b/FL/x.H
index 2358ed003..5f3d80279 100644
--- a/FL/x.H
+++ b/FL/x.H
@@ -147,6 +147,7 @@ public:
void set_icons();
int set_cursor(Fl_Cursor);
int set_cursor(const Fl_RGB_Image*, int, int);
+ void capture_titlebar_and_borders(Fl_RGB_Image*& top, Fl_RGB_Image*& left, Fl_RGB_Image*& bottom, Fl_RGB_Image*& right);
static void make_xid(Fl_Window*,XVisualInfo* =fl_visual, Colormap=fl_colormap);
static Fl_X* set_xid(Fl_Window*, Window);
// kludges to get around protection: