summaryrefslogtreecommitdiff
path: root/src/Fl_Image.cxx
AgeCommit message (Collapse)Author
2009-04-21Fixed gray scale w/alpha image drawing for Mac OS with Quartz (FLTK 1.1Albrecht Schlosser
with Quickdraw worked) in src/Fl_Images.cxx. Changed test/unittest_images.cxx to use Fl_RGB_Image::draw() to draw images with alpha channel, because the current version of fl_draw_image() supports alpha channels only on Mac. Tested on Windows[1], Linux, and Mac. [1] Windows with GDI drawing doesn't work yet for gray+alpha (STR 2105). To do: Check, if fl_draw_image() should support alpha channel images on all platforms or not at all. The current documentation mentions only RGB and gray scale images. IMHO the behavior is undefined for values of abs(d) == 2 and abs(d) > 3. See also fl_draw_image_mono(). git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6773 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2009-01-01Changed Copyright in 'src' directoryMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6616 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-10-13Quickdraw removal: option removed from configure, all Qd code removed from ↵Fabien Costantini
sources. Also took this opportunity to sort the ifdef clauses so that USE_X11 shows first. Also added error pragma to enforce proper target checking, thus make even less assumptions. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6423 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-16Doxygen documentation : took the opportunity to update copyright info as we ↵Fabien Costantini
modified already in batch almost all sources, added also a fil doxygen command to class headers to harmonize with original matt Fl_Widget dox. format. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6265 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2008-09-14Doxygen Documentation WP5 Done, WP6 half finished so that all Fl_Image class ↵Fabien Costantini
hierarchy is up-to-date. Also completed the documentation of the useful Fl_Shared_Image. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.3@6241 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-06-07Fixed rendering of grayscale images with alpha channel on unaccelerated ↵Matthias Melcher
machines. Thanks, Sanel (STR #1703) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5888 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2007-05-14- Fixed calculation of stride for image scaling and color manipulation (STR ↵Matthias Melcher
#1673) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5825 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-12-21Fixed silly bug in OS X that would free a pixmap multiple times within ↵Matthias Melcher
Fl_RGB_Image::unchache. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5566 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-10-02Fix new alpha blending code to use the source image width instead ofMichael R Sweet
the destination width when computing the start pointer. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5503 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-24Adapt Sadysta's alpha compositing code for current implementation ofMichael R Sweet
Fl_RGB_Image. We now provide (unaccellerated) alpha compositing of RGBA and Grayscale-Alpha images (d() == 4 and d() == 2) on X11 and QuickDraw... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5486 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-16OK, I believe I fixed the transparency issues on WIN32. Please everyone, ↵Matthias Melcher
test the code on all machines. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5436 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-15Implemented alpha blending for WIN32. I believe that I did it in a way that ↵Matthias Melcher
is compatible even with Windows 95, but please let me know if you have any concerns. Cygwin not tested, but hopefully OK. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5430 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-13Fixed Fl_RGB_Image::copy. My previous fix had the meaning of ld() wrong.Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5427 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-09-04STR 1412: fixed RGB image block copy for ld() values != 0Matthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5411 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2006-06-04OS X Quartz: one pretty essential fix to the call order in Quartz context ↵Matthias Melcher
change which fixed a lot of warnings. I also added a file that helps tremondously to debug Core Graphics calls. This file is not compiled into the source tree by default, but the annotations in "src/cgdebug.h" explain the usage. In regard to CG Text drawing vs. the new ATSU Text drawing: I now remember why I did not ATSU in the beginning: STDU does not use the CG clipping area or text pen settings. So, if you plan on using the current SVN with --enable-quartz, please be aware that you will not have any text clipping or any other text color than black. Finally, I added code to FLTK on OS X that retreives the selection color from the system instead of assuming dark blue. I am not entirely confident about this change as it may require OS X 10.4 . Feedback appreciiated. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@5173 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-11-02STR #1052: The outline drawing of not existing images is now in foreground ↵Matthias Melcher
color instead of black git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4621 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-09-12STR #1007: Applied second patch by hand. OP: could you please check if all ↵Matthias Melcher
changes were made correctly? Thanks! git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4563 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-04-16Update source file headers with STR web page.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4288 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2005-02-24Copyright updates.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4052 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-09-24Now look for 8 bits of alpha when the developer has requestedMichael R Sweet
FL_RGB8 (STR #541) The last line in an Fl_Help_View widget was not aligned properly (STR #536) The "search" symbol looked like a Q (STR #536) Changed Fl_Help_View::get_color() to use a lookup table to avoid serious Borland C++ 5.5 compiler bugs (STR #533) Fixed Watcom compiler warnings with FL/Fl_Widget.H (STR #540) The image class copy() methods did not always make a separate copy of the image data (STR #539) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3844 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-31Quartz for FLTK1.1Matthias Melcher
- Pixmaps now correctly support transparency/masking - subimage drawing aligned correctly - lines with a size over 1 always anti-alias - fl_begin_points/fl_end_points works - fixed refresh problem for multiple open windows Will check Linux compile right after this commit to make sure that I didn't destroy anything. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3800 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-31Quartz for FLTK 1.1:Matthias Melcher
- added pixmap drawing (no masking yet) - added bitmap drawing - added line styles (complete) todo: - missing refresh (double test, fluid, others) - missing pixmap mask - color_chooser has alignment issues - images scale instead of beeing scissored - fonts git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3798 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-28Fix bad #elif (Matthias, please check your commits more closely, thanks!)Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3796 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-27Quartz:Matthias Melcher
- support for Fl_RGB_Image, including alpha rendering git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3794 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-08-25Updated config stuff to allow for --enable-quartz ofr Mac OS X which inMatthias Melcher
turn defined USE_QUARTZ to 1 and defines __APPLE_QUARTZ__. If Quartz is not disabled, it will define __APPLE_QD__ for Quickdraw. I also replaced all relevand #ifdef __APPLE__ with #ifdef __APPLE_QD__ #elif defined(__APPLE_QUARTZ__). This does not affect the compile at this time and both version will generate the same Quickdraw code. I will start to replace all QD calls with Quartz calls for the remainder of the week until I can completely remove all QD calls from the Quartz branch. Thanks to Robert Smith for a great initial Quartz implementation. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3782 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2004-04-11Copyright updates and prep for 1.1.5rc1.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3391 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-08-04Fix typo...Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3076 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-07-29Fix scheme and image drawing bugs.Michael R Sweet
Bump to 1.1.4rc2. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@3064 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-01-30Copyright update for 1.1.3 release (not quite yet, but soon...)Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2936 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-01-15Fix build problems on Windows.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2913 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2003-01-10Update Fl_Image and friends so that we don't need to include theMichael R Sweet
system headers (which unfortunately are not too friendly with other code...) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2893 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-12-19Doco updates.Michael R Sweet
Added filename_setext() macro for FLTK_1_0_COMPAT. Fixed copy() methods so they don't overflow the source image buffer. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2881 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-11-19Get rid of some valid compiler warnings with CodeWarrior that were reportedMichael R Sweet
by Paul Chambers. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2845 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-10-11Bug #621737: Add range checking for the width and height arguments to theMichael R Sweet
::copy() methods. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2671 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-08-09Move the rest of the image file formats (except for XBM and XPM) toMichael R Sweet
the fltk_images library; saves about 16k in the FLTK core library on my Intel system. Fix a memory leak bug in most of the fl_set_fonts*.cxx implementations; as a result, the Fl_Fontdesc structure now has a fontname member to old the human-readable font name. Lots of fixes for shadowed variables, etc. Use snprintf, strlcpy, and strlcat in more places. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2566 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-08-05Range check Fl_Text_Buffer::search_forward().Michael R Sweet
Don't use png_read_destroy() - it doesn't free all memory. Add uncache() method to image classes. Memory/initialization bugs in Fl_File_Chooser (valgrind) Make sure both Fl_Window constructors have default cursor initialization code... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2562 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-05-24Get rid of as many compiler warnings as possible.Michael R Sweet
Add missing offbits seek when reading BMP files. Add -OPT:Olimit=4000 to SGI compiler options (for keyboard_ui) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2253 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-04-26Images in menu items...Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2109 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-04-15Fix transparency stuff for MacOS X; currently it appears that CopyDeepMaskMichael R Sweet
does not work with an 8-bit mask image, so we can't provide true alpha blending just yet... (just the screen-door transparency provided on X11 and WIN32...) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2085 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-04-15Change fl_create_deepmask() to fl_create_alphamask().Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2084 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-04-14Added fl_create_deepmask() method for creating alpha blend masks.Michael R Sweet
Implemented Fl_RGB_Image alpha blending for MacOS X - others still get 1-bit screen-door transparency... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2083 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-04-11Make Fl_Output a subclass of Fl_Input, and add input_type and readonlyMichael R Sweet
methods/constants to support Fl_Output as a special case of Fl_Input (you can do everything but change the text in Fl_Output...) git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@2073 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-01-07Fixed from Teun.Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1919 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-01-03cleaned up src/Fl_mac.cxx, fixed Fl::wait(0.0), fixed Cmd-Q handlingMatthias Melcher
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1905 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2002-01-01Copyright updates...Michael R Sweet
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1903 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-12-19Multiple bug fixes from Sebastien:Michael R Sweet
- Fl_GIF_Image and Fl_PNG_Image didn't close the file before calling Fl::error(). - Fl_Help_View didn't clear the line array in Fl_Help_Block, and Fl_Help_Block::font and ::size were not used. - Fl_Shared_Image::get() didn't return NULL if the image could not be loaded. - Switched to more efficient code for Fl_Tiled_Image::color_average() and ::desaturate(). - Don't delete children in Fl_Text_Display since the group will do it. - Fixes to filename_isdir(), filename_absolute(), and filename_relative(). - Was using numbers instead of define constants for some OpenGL stuff under WIN32. - Wasn't exporting threading functions under WIN32. - The Fl_Widget destructor now removes from the parent to avoid a Purify error since the old widget would be referenced by the parent when it was destroyed; this has no apparent performance impact since Fl_Group::clear() sets children_ to 0, making Fl_Group::remove() very fast... - WIN32 font enumeration datatype fixes... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1878 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-11-27Preliminary commit of my MacOS X work.Michael R Sweet
**** THIS CODE COMPILES BUT DOES NOT WORK. **** TODO: fix event handling - getting blank windows, etc. TODO: re-port OpenGL code. TODO: add support for images with alpha. TODO: add support for more then just beeps in fl_beep(). TODO: other stuff I'm sure... git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1765 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-11-26Add note about using RENDER extension in the future for proper alphaMichael R Sweet
rendering. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1732 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-11-25Add flstring.h header file to include string functions, strcasecmpMichael R Sweet
definitions, and (v)snprintf function declarations... Fix Fl_File_Chooser so it always checks for an empty directory_ (so that is doesn't add the leading slash to drive letters and mount points) Make Fl_File_Icon use Fl_Shared_Image, and look in all KDE icon directories. Fl::error() no longer exits by default; only Fl::fatal() does... Wasn't doing callbacks in Fl_Tabs when the current tab was changed via the keyboard. FLUID wasn't writing the tooltips in message files, and didn't count tooltips when computing the message number for catgets. Update dependencies. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1729 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
2001-11-24Fix bugs in copy() methods.Michael R Sweet
Add Fl_Shared_Image class, with get() and release() methods. Update Fl_Help_View to use Fl_Shared_Image class. Update image demo to accept a filename, and to use the Fl_Shared_Image class. git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@1714 ea41ed52-d2ee-0310-a9c1-e6b18d33e121