From 5bb4e853c7c80fa16e568f47c49c2282d197a19c Mon Sep 17 00:00:00 2001 From: Manolo Gouy Date: Wed, 30 Nov 2016 07:09:48 +0000 Subject: Remove Fl_Image_Surface::end_current() to be called after usage of the drawing surface. This ensures API compatibility with FLTK 1.3 where Fl_Surface_Device->set_current() is used to change the current drawing surface. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12125 ea41ed52-d2ee-0310-a9c1-e6b18d33e121 --- src/drivers/GDI/Fl_GDI_Image_Surface_Driver.cxx | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/drivers/GDI') diff --git a/src/drivers/GDI/Fl_GDI_Image_Surface_Driver.cxx b/src/drivers/GDI/Fl_GDI_Image_Surface_Driver.cxx index 9c72b7ac0..54a4a038f 100644 --- a/src/drivers/GDI/Fl_GDI_Image_Surface_Driver.cxx +++ b/src/drivers/GDI/Fl_GDI_Image_Surface_Driver.cxx @@ -28,6 +28,7 @@ class Fl_GDI_Image_Surface_Driver : public Fl_Image_Surface_Driver { friend class Fl_Image_Surface; + virtual void end_current_(); public: Fl_Surface_Device *previous; Window pre_window; @@ -39,7 +40,6 @@ public: void translate(int x, int y); void untranslate(); Fl_RGB_Image *image(); - void end_current(); }; @@ -90,7 +90,6 @@ Fl_RGB_Image* Fl_GDI_Image_Surface_Driver::image() { unsigned char *data; data = fl_read_image(NULL, 0, 0, width, height, 0); - end_current(); previous->driver()->gc(_sgc); Fl_RGB_Image *image = new Fl_RGB_Image(data, width, height); image->alloc_array = 1; @@ -98,13 +97,12 @@ Fl_RGB_Image* Fl_GDI_Image_Surface_Driver::image() } -void Fl_GDI_Image_Surface_Driver::end_current() +void Fl_GDI_Image_Surface_Driver::end_current_() { HDC gc = (HDC)driver()->gc(); RestoreDC(gc, _savedc); DeleteDC(gc); fl_pop_clip(); - previous->Fl_Surface_Device::set_current(); fl_window = pre_window; } -- cgit v1.2.3