diff options
Diffstat (limited to 'src/drivers')
| -rw-r--r-- | src/drivers/Cocoa/Fl_Cocoa_Printer_Driver.mm | 5 | ||||
| -rw-r--r-- | src/drivers/Cocoa/Fl_Cocoa_Screen_Driver.H | 7 |
2 files changed, 10 insertions, 2 deletions
diff --git a/src/drivers/Cocoa/Fl_Cocoa_Printer_Driver.mm b/src/drivers/Cocoa/Fl_Cocoa_Printer_Driver.mm index 3c536ae7c..30fec61e1 100644 --- a/src/drivers/Cocoa/Fl_Cocoa_Printer_Driver.mm +++ b/src/drivers/Cocoa/Fl_Cocoa_Printer_Driver.mm @@ -21,6 +21,7 @@ #include <FL/Fl_Window_Driver.H> #include "../Quartz/Fl_Quartz_Printer_Graphics_Driver.H" #include "../Darwin/Fl_Darwin_System_Driver.H" +#include "Fl_Cocoa_Screen_Driver.H" #include <FL/Fl.H> #include <FL/x.H> @@ -403,7 +404,7 @@ void Fl_Cocoa_Printer_Driver::draw_decorated_window(Fl_Window *win, int x_offset CGContextSaveGState(gc); CGContextTranslateCTM(gc, x_offset - 0.5, y_offset + bt - 0.5); CGContextScaleCTM(gc, 1, -1); - Fl_X::draw_layer_to_context(layer, gc, win->w(), bt); + Fl_Cocoa_Screen_Driver::draw_layer_to_context(layer, gc, win->w(), bt); CGContextRestoreGState(gc); } else { @@ -411,7 +412,7 @@ void Fl_Cocoa_Printer_Driver::draw_decorated_window(Fl_Window *win, int x_offset CGContextRef gc = CGBitmapContextCreate(NULL, 2*win->w(), 2*bt, 8, 0, cspace, kCGImageAlphaPremultipliedLast); CGColorSpaceRelease(cspace); CGContextScaleCTM(gc, 2, 2); - Fl_X::draw_layer_to_context(layer, gc, win->w(), bt); + Fl_Cocoa_Screen_Driver::draw_layer_to_context(layer, gc, win->w(), bt); Fl_RGB_Image *image = new Fl_RGB_Image((const uchar*)CGBitmapContextGetData(gc), 2*win->w(), 2*bt, 4, CGBitmapContextGetBytesPerRow(gc)); // 10.2 int ori_x, ori_y; diff --git a/src/drivers/Cocoa/Fl_Cocoa_Screen_Driver.H b/src/drivers/Cocoa/Fl_Cocoa_Screen_Driver.H index a1f278a63..063985b7e 100644 --- a/src/drivers/Cocoa/Fl_Cocoa_Screen_Driver.H +++ b/src/drivers/Cocoa/Fl_Cocoa_Screen_Driver.H @@ -26,6 +26,7 @@ #define FL_COCOA_SCREEN_DRIVER_H #include <FL/Fl_Screen_Driver.H> +#include <ApplicationServices/ApplicationServices.h> /* Move everything here that manages the native screen interface. @@ -39,6 +40,11 @@ class Fl_Window; +#ifdef __OBJC__ +@class CALayer; +#else +class CALayer; +#endif // __OBJC__ class FL_EXPORT Fl_Cocoa_Screen_Driver : public Fl_Screen_Driver @@ -87,6 +93,7 @@ public: int insertion_point_location(int *px, int *py, int *pheight); virtual int dnd(int use_selection); virtual int compose(int &del); + static void draw_layer_to_context(CALayer *layer, CGContextRef gc, int w, int h); }; |
