summaryrefslogtreecommitdiff
path: root/src/Fl_Image.cxx
AgeCommit message (Collapse)Author
2016-04-17MSWindows fixes for previous commits.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11644 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-03-25Remove a bunch of useless #include <FL/x.H> directives.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11422 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-23Fix Fl_RGB_Image::uncache() and Fl_Bitmap::uncache().Manolo Gouy
It is not possible to use fl_graphics_driver in these functions because when they are called *fl_graphics_driver may have been deleted. A solution is to use Fl_Display_Device::display_device()->driver() instead which is always valid. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11212 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-10Moving fl_beep into screen driver.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11152 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-02-09Move ifdef's in RGB_Image into driver system.Matthias Melcher
- change image caching variable types to uintptr_t - added driver function to uncache image data - cleaning up (Xlib and GDI will likely throw syntax errors. Trying to fix ASAP) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11138 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-31Needed for Linux/Unix build.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11098 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-29Fixed a few warnings from a picky compiler setting.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11086 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-27Modify Xlib driver code not to #include source files.Albrecht Schlosser
Adjusted CMake build, and with some additional temporary #ifdef's the old Linux Makefile system works as well. Defined FL_LIBRARY_CMAKE for now - will be removed later. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11067 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2016-01-27Removed all references to Quartz driver files from library headers in Xcode. ↵Matthias Melcher
Works in Xcode. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@11065 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-04Created pseudo code for all FL_PORTED section so that FLTK compiles and ↵Matthias Melcher
links (Xcode, hello, other C flags: -D FL_PORTING -U __APPLE__ -U __APPLE_QUARTZ__) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3-porting@10993 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-06-08Fixed typo in Doxygen doc of Fl_RGB_Image constructor.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10744 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-05-24Moved docs for fail() from prototype in Fl_Image.H -> implementation in ↵Greg Ercolano
Fl_Image.cxx. Also added coded example to assist app programmers in usage. (Matt: feel free to modify the example code as needed) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10734 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-05-23STR #2873: new function Fl_Image::fail() that returns 0, ERR_NO_IMAGE, ↵Matthias Melcher
ERR_FORMAT, or ERR_FILE_ACCESS to make life easier when loading images. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10732 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-04-28Doc clarifications for Fl_Image methods:Greg Ercolano
> inactive() > desaturate() > color_average() git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10725 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-03-16Add support for accelerated alpha blending under X11.Lauri Kasanen
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10628 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-03-11Implementation of Fl_Shared_Image::scale(width, height) for scaled image ↵Manolo Gouy
drawing - cont'd Shorter implementation based on Fl_Graphics_Driver::draw_scaled(Fl_Image *,...). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10616 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-03-10Added Fl_Shared_Image::scale(width, height) to support scaled image drawing ↵Manolo Gouy
(STR #3185). Useful for printing, PostScript or PDF output, or retina displays. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10615 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-02-11Fixed error introduced at r.10568 that prevented non-Apple compilation.Manolo Gouy
Also, replaced __APPLE_QUARTZ__ by __APPLE__ git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10571 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-02-10Mac OS: more parsimonious memory usage when drawing Fl_RGB_Image. The image ↵Manolo Gouy
data are no longer duplicated when printing an image with alloc_array = 1. Duplication remains when printing with alloc_array = 0. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10568 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-02-08Allow compilation with -std=c++11 on Mac OS XManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10560 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2015-02-07Modified Fl_Quartz_Graphics_Driver::draw(Fl_RGB_Image *img,...) to accept ↵Manolo Gouy
worst case scenario for memory usage: while printing, delete the printed image before completing the printed page. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10559 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-10-14Move RGB image scaling algorithm methods in base class Fl_Image.Albrecht Schlosser
See also discussion in fltk.coredev of Sept 07, 2014 and later with subject "Fixing the nearest-neighbour scaling". git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10377 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-09-06Bilinear div-by-zero fixLauri Kasanen
Probably temporary if this will be replaced with Roman's int version, but better have it anyway. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10281 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-09-04Small fix in the bilinear formulaLauri Kasanen
After consulting Gimp again, the formula was missing a final divide. This takes care of the 1:1 discrepancy. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10270 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-09-03Add bilinear scaling support. STRs #2869 and #3062.Lauri Kasanen
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10268 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2014-06-12Add ability to convert a Fl_Pixmap into a Fl_RGB_Image.Pierre Ossman
This is very convenient as a lot of other functions only accept a Fl_RGB_Image. Adding this functionality also required a bit of spring cleaning in the the drawing routines. STR #2659. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@10192 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2013-01-16Allow compilation with early Mac OS versions.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9795 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-11-09Fix STR#2881: the new static function Fl_RGB_Image::max_size(size) allows to ↵Manolo Gouy
control the maximum memory size allowed when creating an Fl_RGB_Image. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9709 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-03-18Fix STR#2810: removed all uses of function Fl_Device::class_name().Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9293 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-03-14Moved a few local variable declarations.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9283 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-03-14Simplified Fl_Paged_Device::print_window() under Mac OSManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9282 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2012-03-12Replaced fl_copy_offscreen_with_alpha() by ↵Manolo Gouy
Fl_GDI_Graphics_Driver::copy_offscreen_with_alpha() and fl_create_offscreen_with_alpha() by Fl_Quartz_Graphics_Driver::create_offscreen_with_alpha() git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@9278 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-04-20Fixed alpha blending under X11 when line data size != 0 (STR #2606)Albrecht Schlosser
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@8611 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-11-28Fixed Copyright to 2010.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7903 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-07-01Renamed global variable from fl_device to fl_graphics_driver to better ↵Manolo Gouy
express its class git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7659 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-18Removed commented out codeManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7649 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-06-07Fix image bug reported by Csaba in r7626 + fix regression in ps_image.cxx Manolo Gouy
inadvertently brought in by r7617. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7634 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-05-27Better device hierarchy with surfaces and graphics drivers.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7617 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-18Removed multiple inheritance: back to r. 7519 exactly.Manolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7522 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-16Improved the hierarchy of Fl_Device subclasses to allow separation of ↵Manolo Gouy
platform-specific devices. This introduces multiple inheritance. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7520 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-04-14More logical use of Fl_Device::draw(<image class> *,...) functionsManolo Gouy
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7501 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-29Started to remove USE_QUARTZ, as all Apple implementations use Quartz as ↵Matthias Melcher
their Graphics Rendering system now. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7353 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-25Reorganized code to allow compilation with Fl_Device, Fl_Display but without ↵Manolo Gouy
Fl_Abstract_Printer (may be useful for embarked devices) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7330 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-15Renamed internal member variables id and mask to id_ and mask_ to avoidAlbrecht Schlosser
conflict with Mac OS X/gcc 3.x name clash when compiling with obj-c. Also made them private instead of public. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7273 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2010-03-14Merge of branch-1.3-Fl_Printer, with the following main changes:Albrecht Schlosser
(1) adding Fl_Device class (and more) for device abstraction (2) adding Fl_Pinter class (and more) for printing support. Todo: Code cleanup, update dependencies, remove/replace test print window. I'm looking into converting the test window popup in a global shortcut that would pop up the print dialog now... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@7263 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-06-29Fixed gray-scale images with alpha channel (STR #2105).Albrecht Schlosser
Note: Windows needs RGBA Bitmaps (4 bytes) to do alpha blending. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6804 ea41ed52-d2ee-0310-a9c1-e6b18d33e121