summaryrefslogtreecommitdiff
path: root/src/Fl_Gl_Device_Plugin.cxx
AgeCommit message (Collapse)Author
2022-12-30Use `FL_OVERRIDE` for all overridden virtual methods (#611)Matthias Melcher
FL_OVERRIDE is defined as `override` for C++11 and higher FL_OVERRIDE is defined as `override` for VisualC 2015 and newer Don't interfere with Fl_Widget::override()
2022-08-18Simplify class Fl_OpenGL_Display_Device.ManoloFLTK
2021-02-16Use <config.h> when appropriate.ManoloFLTK
2020-07-06Remove $Id$ tags, update URL's, and moreAlbrecht Schlosser
- remove obsolete svn '$Id$' tags from all source files - update .fl files and generated files accordingly - replace 'http://www.fltk.org' URL's with 'https://...' - replace bug report URL 'str.php' with 'bugs.php' - remove trailing whitespace - fix other whitespace errors flagged by Git - add and/or fix missing or wrong standard headers - convert tabs to spaces in all source files The only relevant code changes are in the fluid/ folder where some .fl files and other source files were used to generate the '$Id' headers and footers.
2019-04-28macOS: yet simpler implementation of window resize and rescale.ManoloFLTK
2019-04-07Simpler implementation of Fl_Cocoa_Window_Driver::resize()ManoloFLTK
2018-11-30Remove unused arguments from the Fl_Device_Plugin::print() member function.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13141 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-11-29Use the Fl_Gl_Device_Plugin mechanism to simplify the construction of a ↵Manolo Gouy
layer-backed GL window. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@13140 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2018-05-04Simplify Fl_Gl_Device_Plugin::print() using the Fl_Image::scale() member ↵Manolo Gouy
function. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12896 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-09Rewrite Fl_Gl_Device_Plugin.cxx in a platform-independent way.Manolo Gouy
The platform-specific code lands in src/Drivers/OpenGL/Fl_OpenGL_Display_Device.cxx and the FL_PORTING clause should be compilable. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11327 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-09Simpler code for capture of OpenGL windows: the pixel array is converted to ↵Manolo Gouy
top-to-bottom earlier. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11326 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-08Rewrite Fl_Gl_Device_Plugin::print() without any platform-specific code.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11325 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-19Rename Fl_Graphics_Driver::set_gc(void*) to gc(void*) and ↵Manolo Gouy
Fl_Graphics_Driver::get_gc() to gc(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11191 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-18Remove all uses of the fl_gc global variable. Towards a clean driver model.Manolo Gouy
fl_gc remains usable by the application as a hook into the system. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11189 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-13Details on PORTME items. Move fl_parse_color() to screen drivers.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11163 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-11Mark places that need to be refactored with // PORTME:Matthias Melcher
Searching for __APPLE, WIN32 or X11 did give me many false results. I instead marked most ifdef's that I would like to get rid of with the text // PORTME:, so they can be easily found by a global search. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11155 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-29A bit more OpenGL cleanupMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11085 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-29Made OpenGL driver compile by itself instead of including files from another ↵Matthias Melcher
.cxx file. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11083 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-271) Added a new way to detect whether the drawing operation is using the ↵Manolo Gouy
platform's native driver and whether we are printing: virtual int Fl_Graphics_Driver::has_feature(driver_feature feature) This is also because it is not convenient to derive a printer-specific driver with its own implementation of virtual functions when this implementation differs only in one line of code. 2) Solved the problem of inclusion of non public header by the public header FL/Fl_Device.H: bracket this with #if FL_LIBRARY / #endif so this non public header is included only when building FLTK itself. 3) Removed several (but not all) of the FLTK_ABI_VERSION guards that are no longer useful for code targeting FLTK 1.4. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11063 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-26Moving image drawing code into the driver systemMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11060 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-26OpenGL new naming scheme.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11055 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-24Extracting OpenGL text calls. This is a minimum implementation for testing. ↵Matthias Melcher
Don;t worry. I have a cunning plan for rendering perfect antialiased text into OpenGL contexts quickly on all platforms. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11048 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-24Reorganizing color drawing code.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11045 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-23Added OpenGL support for dotted lines. Active widget now renders focus ↵Matthias Melcher
rectangle correctly. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11039 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-23OpenGL arc and pie drawing (Mmmmh, pie!)Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11036 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-23Added OpenGL implementation of fl_vertex calls. Compiling and linking, but ↵Matthias Melcher
functionality untested. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11035 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-21Removed OpenGL graphics driver from public view. For the parts that are ↵Matthias Melcher
implemented, it will 'just work' by allowing fl_* rendering into OpenGL contexts (such as widgets, etc.) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11022 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-03Updated platform specific #if's to report unimplemented code when compiling ↵Matthias Melcher
with FL_PORTING defined and WIN32 and __APPLE__ undefined> git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@10989 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-12-02Mac OS: support for high resolution OpenGL windows.Manolo Gouy
Methods Fl::event_x_pixel() and Fl::event_y_pixel() committed at r.10941 are removed. Instead method Fl_Gl_Window::pixels_per_unit() is added. The documentation explains in more detail how to write cross-platform FLTK code supporting high resolution OpenGL windows on retina displays. The examples/OpenGL3test.cxx app exercises Fl_Gl_Window::pixels_per_unit(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10945 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-08-28Moved Mac-specific type declaration to mac.HManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10846 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-07-18Restore compilability with Mac OS SDK 10.3 and aboveManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10798 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-01-06Don not assume that Fl_X::resolution_scaling_factor() returns either 1 or 2.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10509 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-12-20Function imgProviderReleaseData() is made apple-specific.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10500 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-12-20Changed OpenGL support for the Mac OS X platform: use cocoa instead of ↵Manolo Gouy
deprecated AGL. All changes are mac-specific, except a very minor change in file src/gl_draw.cxx where string drawing wrongly claimed to support @symbol, not possible because symbols are drawn using non-GL primitives. Unchanged application code can use the new FLTK code. In addition, the new code allows mac applications to draw OpenGL scenes at high resolution on so-called 'retina' displays, but this requires some support from app code. They must call, before opening GL windows, Fl::use_high_resolution(1); and change their glViewport() calls as follows glViewport(0, 0, pxel_w(), pixel_h()); This uses 2 new member functions of the Fl_Gl_Window class, pixel_w() and pixel_h() returning the window dimensions in pixel units, that is, twice the w() and h() when the window is mapped on a retina display. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10498 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-11-06Fix for STR#3142 where fl_read_image() correctly reads GL data under X11, ↵Manolo Gouy
but ignores them under MSWindows and Mac OS X. Moreover, fl_read_image() behaves differently with and without OS virtualization for X11 and MSWindows. The patched function reads whatever is in the rectangle transmitted in arguments, with and without GL data, with and without subwindows, on ‘true’ OS or on virtualized OS. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10436 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-01-10A redraw of the GL window may be necessary before printing, at least with ↵Manolo Gouy
the glpuzzle demo on Mac OS. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10051 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-05-19It doesn't seem necessary to redraw a GL window before capturing its pixel ↵Manolo Gouy
content. Calling Fl_Gl_Window::make_current() is enough. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9921 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-05-04print_gl_window(): it's safer to memorize and restore the value of the ↵Manolo Gouy
fl_window global variable. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9909 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-07-19Modifications to all LGPL headers for STR #2685.Greg Ercolano
(to clarify static exception LGPL by changing license references) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8864 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2011-02-04Fix STR #2535: clipping + coordinate transformations are now managed ↵Manolo Gouy
separately for each surface device. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8368 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-10-11Applied sjb's patch to fix STR #2429.Greg Ercolano
Removed #include <config.h> from public include files. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7715 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-21Fl_Gl_Device_Plugin.cxx: fixed compilation error under some 10.4Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7613 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-06Fl_Gl_Device_Plugin: more device-independant APIManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7458 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-28Fl_Gl_Device_Plugin: better code for GL window capture after coverage by ↵Manolo Gouy
print dialog windows git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7348 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-24Fixed all Doxygen warnings triggered by new Fl_Device and Fl_Printer classesManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7325 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-18Renamed class Fl_Virtual_Printer into Fl_Abstract_PrinterManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7301 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-18Setting copyright dates to 2010Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7299 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-18Setting copyright dates to 2010Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7298 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-18Added id lines and copyrightManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7296 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-17Added trick to force loading of Fl_Gl_Device_Plugin whenever fltk_gl is loaded.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7290 ea41ed52-d2ee-0310-a9c1-e6b18d33e121