diff options
| author | Manolo Gouy <Manolo> | 2016-02-14 06:36:20 +0000 |
|---|---|---|
| committer | Manolo Gouy <Manolo> | 2016-02-14 06:36:20 +0000 |
| commit | ec290bc9e03c67de690649d1d3174cce0f5b3eec (patch) | |
| tree | 16601fa88281039e6e41b4502ee319a849ebfcfc /src | |
| parent | 6439f34ee7d84dae786c73388c4bae54f31c65e4 (diff) | |
Remove Fl_X::q_fill_context() used only once.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11171 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
| -rw-r--r-- | src/Fl_cocoa.mm | 20 | ||||
| -rw-r--r-- | src/drivers/Quartz/Fl_Quartz_Graphics_Driver_rect.cxx | 20 |
2 files changed, 17 insertions, 23 deletions
diff --git a/src/Fl_cocoa.mm b/src/Fl_cocoa.mm index 6c52ccb98..02a5b4a35 100644 --- a/src/Fl_cocoa.mm +++ b/src/Fl_cocoa.mm @@ -3305,26 +3305,6 @@ void Fl_Window::make_current() #endif } -// helper function to manage the current CGContext fl_gc -extern void fl_quartz_restore_line_style_(); - -// FLTK has only one global graphics state. This function copies the FLTK state into the -// current Quartz context -void Fl_X::q_fill_context() { - if (!fl_gc) return; - if ( ! fl_window) { // a bitmap context - CGFloat hgt = CGBitmapContextGetHeight(fl_gc); - CGAffineTransform at = CGContextGetCTM(fl_gc); - if (at.a != 1 && at.a == at.d && at.b == 0 && at.c == 0) { // proportional scaling, no rotation - hgt /= at.a; - } - CGContextTranslateCTM(fl_gc, 0.5, hgt-0.5f); - CGContextScaleCTM(fl_gc, 1.0f, -1.0f); // now 0,0 is top-left point of the context - } - fl_color(fl_graphics_driver->color()); - fl_quartz_restore_line_style_(); -} - // Give the Quartz context back to the system void Fl_X::q_release_context(Fl_X *x) { if (x && x->gc!=fl_gc) return; diff --git a/src/drivers/Quartz/Fl_Quartz_Graphics_Driver_rect.cxx b/src/drivers/Quartz/Fl_Quartz_Graphics_Driver_rect.cxx index f06ef6f3d..aa84d7777 100644 --- a/src/drivers/Quartz/Fl_Quartz_Graphics_Driver_rect.cxx +++ b/src/drivers/Quartz/Fl_Quartz_Graphics_Driver_rect.cxx @@ -265,6 +265,9 @@ void Fl_Quartz_Graphics_Driver::pop_clip() { restore_clip(); } +// helper function to manage the current CGContext fl_gc +extern void fl_quartz_restore_line_style_(); + void Fl_Quartz_Graphics_Driver::restore_clip() { fl_clip_state_number++; Fl_Region r = rstack[rstackptr]; @@ -273,9 +276,20 @@ void Fl_Quartz_Graphics_Driver::restore_clip() { CGContextRestoreGState(fl_gc); CGContextSaveGState(fl_gc); } - Fl_X::q_fill_context();//flip coords if bitmap context - //apply program clip - if (r) { + // FLTK has only one global graphics state. + // This copies the FLTK state into the current Quartz context + if ( ! fl_window ) { // a bitmap context + CGFloat hgt = CGBitmapContextGetHeight(fl_gc); + CGAffineTransform at = CGContextGetCTM(fl_gc); + if (at.a != 1 && at.a == at.d && at.b == 0 && at.c == 0) { // proportional scaling, no rotation + hgt /= at.a; + } + CGContextTranslateCTM(fl_gc, 0.5, hgt-0.5f); + CGContextScaleCTM(fl_gc, 1.0f, -1.0f); // now 0,0 is top-left point of the context + } + color(color()); + fl_quartz_restore_line_style_(); + if (r) { //apply program clip CGContextClipToRects(fl_gc, r->rects, r->count); } } |
