summaryrefslogtreecommitdiff
path: root/src/drivers
AgeCommit message (Collapse)Author
2016-11-30Remove Fl_Image_Surface::end_current() to be called after usage of the ↵Manolo Gouy
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
2016-11-28X11 platform: fix STR#3353 and correct drawing of depth-2 RGB images when ↵Manolo Gouy
XRender extension is present. Fl_RGB_Image's of depth-2, that is, monocolor and transparent, were not drawn using the XRender extension, when present, as are depth-4 images. With this change they are. A by-product of this change is that it fixes an erroneous drawing (STR#3353) that occurred when the image expands outside the window. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12124 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-19Remove change at r.12120 because STR#3353 note #6 shows it is not OK.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12122 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-18Fix for STR#3353: bad depth-2 image drawing when the window is resized ↵Manolo Gouy
smaller than the image. The problem is specific to the X11 platform. The cause is that depth-2 images were not considered in a previous change (r.10628) that introduced transparent image drawing with alpha blending. Depth-2 images can be processed just as depth-4 images with alpha-blending. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12120 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-18X11 platform: Fl_RGB_Image::mask_ is always 0, so remove code to process ↵Manolo Gouy
mask_ in Fl_Xlib_Graphics_Driver. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12119 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-18Remove commented out code for what used to be : static int start_rgb()Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12118 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-17WIN32 platform: Fix drawing of depth-4 scaled image when ↵Manolo Gouy
can_do_alpha_blending() is false. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12116 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-16Replace global fl_line_width_ used only by X11 platform by ↵Manolo Gouy
Fl_Xlib_Graphics_Driver::line_width_ git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12114 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-14Remove compilation warning apparent with -Wnull-conversionManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.4@12108 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-10Fl_Quartz_Graphics_Driver::uncache() should also reset mask_.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12095 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-09Use Fl_Graphics_Driver::default_driver() when convenient.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12088 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-09Reuse the same "data provider release callback" several times.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12087 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-08MacOS: use less temporary copies of image data for image printing.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12086 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-05Slightly improve the parameter list of member function int ↵Manolo Gouy
Fl_Graphics_Driver::start_image(...) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12079 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-03Rename Fl_Bitmap::start() to Fl_Bitmap::prepare().Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12078 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-03Factorize repeated code across platform-specific graphics drivers and image ↵Manolo Gouy
types git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12077 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-11-02Replace declarations such as "friend class Fl_Xlib_Graphics_Driver;" by ↵Manolo Gouy
platform-independent declarations. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12076 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-30Replace erroneous bitwise & by logical &&Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12063 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-30Add virtual Fl_RGB_Image* Fl_Image::as_rgb_image() to detect whether an ↵Manolo Gouy
Fl_Image is derived from Fl_RGB_Image git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12061 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-22WIN platform: implement Fl_GDI_Graphics_Driver::draw_scaled(Fl_Image ↵Manolo Gouy
*img,int,int,int,int) when img is a Fl_RGB_Image Implementation uses StretchBlt() when img->d() is 1 or 3 and AlphaBlend() when it is 2 or 4. This should turn useful to draw images on HighDPI displays using the display's true resolution. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12053 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-19Remove erroneous uses of sizeof(filename) where filename is a char* and not ↵Manolo Gouy
a char array git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12051 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-19Add one more argument to virtual ↵Manolo Gouy
Fl_System_Driver::file_browser_load_filesystem() giving length of the filename argument git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12050 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-19Make sure "/" is always in the list of file systems reported by ↵Manolo Gouy
Fl_File_Chooser (Unix/Linux platform) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12049 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-14MacOS: finer control of the compilation conditions under which Core text and ↵Manolo Gouy
ATSU are used or not. The compilation conditions depend on the targeted architecture, what version of the SDK is used, and what MacOS deployment version is used. Under most conditions, a single API is possible, and no pointer-to-member function is used. But the code supports building apps that can run both APIs depending on the version of the running MacOS. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12025 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-11Add public: to definition of class Fl_Quartz_Printer_Graphics_Driver.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12024 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-11Replace .h by .H in #include "Fl_Quartz_Graphics_Driver.h"Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12023 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-10Re-organisation of code to support CoreText and ATSU for drawing text.Manolo Gouy
We avoid using one CoreText-related and one ATSU-related derived classes of class Fl_Quartz_Graphics_Driver. Thus, class Fl_Quartz_Graphics_Driver can be derived if useful and still support both text APIs. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12022 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-07Remove Fl_Xlib_Graphics_Driver::global_gc() because identical to ↵Manolo Gouy
Fl_Graphics_Driver::global_gc() git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12019 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-07Fl_Graphics_Driver::global_gc() is already implemented in Fl_Graphics_Driver.cxxManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12018 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-06 Correct function Fl_GDI_Graphics_Driver::gc(void*) that did not update the ↵Manolo Gouy
global variable fl_gc correctly. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12017 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-10-06Correct function Fl_Quartz_Graphics_Driver::gc(void*) that did not update ↵Manolo Gouy
the global variable fl_gc correctly. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@12016 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-29Avoid compilation warnings with -Wmaybe-uninitializedManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11993 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26Replace a few global variables by members of the Fl_Quartz_Graphics_Driver classManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11985 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26These files are no longer useful.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11984 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26MacOS platform: the printer's graphics driver should also call ↵Manolo Gouy
Fl_Graphics_Driver::newMainGraphicsDriver() git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11982 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-26MacOS platform: centralize check whether a font has been set before drawing textManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11979 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-25X11: More explicit warning when using rotated text w/o Xft.Albrecht Schlosser
The warning is issued to stderr only once (previously: every time rotated text was used). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11978 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-24Mac OS platform: restore usability with SDK 10.3 and 10.4Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11973 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-23Move font-related member functions from Fl_Screen_Driver to Fl_Graphics_Driver.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11968 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-23Fl_Quartz_Graphics_Driver: separate CoreText- and ATSU-based code using new, ↵Manolo Gouy
derived classes. FLTK for the Mac OS platform draws text using 2 distinct system APIs depending on the version of the running OS. Classes Fl_CoreText_Graphics_Driver and Fl_ATSU_Graphics_Driver are defined and implement the same virtual functions of class Fl_Quartz_Graphics_Driver using CoreText and ATSU, respectively. The app allocates an object of one of these derived classes according to the running OS version. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11967 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-22Fl_Screen_Driver class: its platform dependent member functions should not ↵Manolo Gouy
be static. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11966 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-22Rewrite Fl::set_fonts(), Fl::get_font_sizes(), Fl::get_font_name() under the ↵Manolo Gouy
driver model. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11965 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-21Remove a block of header comments in the middle of the file.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11964 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-21Restore building with X11 but not XftManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11963 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-20Restructure the code behind double Fl_Cocoa_Screen_Driver::wait(double ↵Manolo Gouy
time_to_wait) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11958 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-20Remove fl_wait() that is not part of the public API.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11953 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-19Remove fl_ready() not in public API and mostly same as ↵Manolo Gouy
Fl_XXX_Screen_Driver::ready() git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11951 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-13Remove possible warnings when compiling with -WundefManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11942 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-12Fix typo in macro __LP64__Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11938 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-09-12Remove code requiring config.h from public header FL/x.HManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11937 ea41ed52-d2ee-0310-a9c1-e6b18d33e121