summaryrefslogtreecommitdiff
path: root/FL
diff options
context:
space:
mode:
authorManolo Gouy <Manolo>2016-02-25 10:14:28 +0000
committerManolo Gouy <Manolo>2016-02-25 10:14:28 +0000
commit31793cbdba8e318350c5ed11b06d5a678eb15608 (patch)
tree6663410ff80abfa841ebf30a9a7f75bffeb730ac /FL
parente24f3f79a334a501c9a239b32fe465981a8c3aab (diff)
Remove the global variable fl_mask_bitmap - put it in the graphics driver's virtual API.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11216 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'FL')
-rw-r--r--FL/Fl_Graphics_Driver.H5
-rw-r--r--FL/Fl_PostScript.H3
2 files changed, 8 insertions, 0 deletions
diff --git a/FL/Fl_Graphics_Driver.H b/FL/Fl_Graphics_Driver.H
index 4129f7147..da12bf8a4 100644
--- a/FL/Fl_Graphics_Driver.H
+++ b/FL/Fl_Graphics_Driver.H
@@ -88,6 +88,7 @@ class FL_EXPORT Fl_Graphics_Driver : public Fl_Device {
friend class Fl_Pixmap;
friend class Fl_Bitmap;
friend class Fl_RGB_Image;
+ friend int fl_draw_pixmap(const char*const* cdata, int x, int y, Fl_Color bg);
public:
// The following functions create the various graphics drivers that are required
// for core operations. They must be implemented as members of Fl_Graphics_Driver,
@@ -255,6 +256,10 @@ public:
/** Returns the driver-specific graphics context, of NULL if there's none. */
virtual void *gc(void) {return NULL;}
protected:
+ /** Support for pixmap drawing */
+ virtual uchar **mask_bitmap() { return 0; }
+ /** Support for pixmap drawing */
+ virtual void mask_bitmap(uchar **) {}
// --- implementation is in src/fl_vertex.cxx which includes src/cfg_gfx/xxx_rect.cxx
virtual void transformed_vertex0(COORD_T x, COORD_T y);
virtual void fixloop();
diff --git a/FL/Fl_PostScript.H b/FL/Fl_PostScript.H
index 69114ce2c..0c52be73b 100644
--- a/FL/Fl_PostScript.H
+++ b/FL/Fl_PostScript.H
@@ -67,6 +67,9 @@ private:
void *prepare85();
void write85(void *data, const uchar *p, int len);
void close85(void *data);
+protected:
+ uchar **mask_bitmap() {return &mask;}
+ void mask_bitmap(uchar **value) { }
public:
static const char *class_id;
const char *class_name() {return class_id;};