Commit graph

104 commits

Author SHA1 Message Date
Riccardo Mottola
b35b5714ed update Adam's historic mail and copyright dates 2024-05-08 11:18:13 +02:00
Riccardo Mottola
55b75b9e33 instad of using NSBitmapFormat use individual flags 2024-05-08 10:28:49 +02:00
Riccardo Mottola
7c833cb5a6 try to swap 16bit and 32bit images line-per-line always into host byte order for TIFF library to write 2024-05-07 23:22:05 +02:00
rfm
324308b4e8 fixup error in pasteboard types provided when png is available 2024-03-04 22:08:00 +00:00
Fred Kiefer
a047b10a51
16bit (#123)
* Fix compiler warnings

* Attempt to sort out byte order for 15 bit images.

* Try to get integer types from standard location

* Remove extra swap code by using more complex condition.
Thanks to Riccardo Mottola.
2021-11-08 22:46:25 +01:00
Gregory John Casamento
19426c573d Update behavior of initWithBitmapDataPlanes:... to match documentation and return nil if it cannot initialize given the existing data 2021-10-12 19:20:24 -04:00
fredkiefer
7f07e4dd43 * Source/NSBitmapImageRep.m (-_convertToFormatBitsPerSample:...):
+	Correct division by zero bug in image conversion.
2019-12-02 22:46:44 +01:00
Riccardo Mottola
78be5ef0ea Initialize density to 0, so that in case it is unset (72dpi) it is not a random value in case the struct is not zeroed 2017-08-25 14:20:58 +02:00
Riccardo Mottola
9c7eeb9c20 Support for writing resolution
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40491 72102866-910b-0410-8b05-ffd578937521
2017-04-24 10:42:32 +00:00
Fred Kiefer
a3d9637182 2016-10-29 Fred Kiefer <FredKiefer@gmx.de>
* Source/NSBitmapImageRep.m: Set the TIFF subfield type to 0
	instead of 255.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@40185 72102866-910b-0410-8b05-ffd578937521
2016-10-29 12:29:26 +00:00
Richard Frith-MacDonald
3a4e6d5be1 apply patch to fix spelling error
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39952 72102866-910b-0410-8b05-ffd578937521
2016-07-01 07:30:43 +00:00
Fred Kiefer
c3f90683a6 Extract protocol into private header file and use it from both places.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39838 72102866-910b-0410-8b05-ffd578937521
2016-06-04 20:36:46 +00:00
Richard Frith-MacDonald
08910fb913 lintian spelling correctes provided by Eric Heintzmann
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39816 72102866-910b-0410-8b05-ffd578937521
2016-05-28 09:49:15 +00:00
Fred Kiefer
7272bf329b * Source/NSBitmapImageRep.m
(TIFFRepresentationOfImageRepsInArray:): Only return a non-null
        NSData object.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39090 72102866-910b-0410-8b05-ffd578937521
2015-10-24 21:16:46 +00:00
Fred Kiefer
4d5254c74a 2015-10-13 Fred Kiefer <FredKiefer@gmx.de>
* Source/NSBitmapImageRep.m: Correct bug in fast path for image
        premultiply/unpremultiply.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39062 72102866-910b-0410-8b05-ffd578937521
2015-10-13 22:04:35 +00:00
Fred Kiefer
8e8a1af817 * Source/nsimage-tiff.h: Correct field types.
* Source/NSImage.m (-TIFFRepresentation)
        (TIFFRepresentationUsingCompression:factor:): Pass on bitmaps
only.
        * Source/NSBitmapImageRep.m: Implement methods to generate tiff
        for multiple bitmaps.
        * Source/tiff.m: Fix long standing bug in TiffHandleSeek.
        In NSTiffWrite write image tiff directory to allow for multiple
        images.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39050 72102866-910b-0410-8b05-ffd578937521
2015-10-10 19:18:33 +00:00
Fred Kiefer
1d2c5d5ebd First set of changes based on pathces by Josh Freeman
<pikopixel@twilightedge.com>


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@39004 72102866-910b-0410-8b05-ffd578937521
2015-09-19 16:45:36 +00:00
Fred Kiefer
8da8a7add8 * Source/NSBitmapImageRep.m (-copyWithZone): Changed the call
from -copyWithZone: to -mutableCopyWithZone:. 
        * Tests/gui/NSBitmapImageRep/testcopy.m: Test for this change
        Patch by Josh Freeman <tedge>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@38301 72102866-910b-0410-8b05-ffd578937521
2015-01-23 17:16:08 +00:00
Fred Kiefer
d56182771b * Source/NSBitmapImageRep.m (-copyWithZone:) Deep copy ivar _properties.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@38217 72102866-910b-0410-8b05-ffd578937521
2014-11-30 20:45:29 +00:00
Riccardo Mottola
44500d28e6 Transform 0..255 compression factor to 0..1 quality to match Cocoa specs
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37898 72102866-910b-0410-8b05-ffd578937521
2014-05-21 14:52:09 +00:00
Fred Kiefer
35b547f964 * Source/NSBitmapImageRep+PNG.m: Better cleanup on error.
* Source/NSBitmapImageRep.m (_set_bit_value): Correct error in
bit operation. This should allow the code to work with 16 bit images.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@37267 72102866-910b-0410-8b05-ffd578937521
2013-10-20 20:41:52 +00:00
Fred Kiefer
0561a46d2f Correct problems found by valgrind.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36188 72102866-910b-0410-8b05-ffd578937521
2013-02-22 15:39:29 +00:00
Fred Kiefer
270baf4037 More CGFloat, NSUInteger and NSInteger changes.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@36148 72102866-910b-0410-8b05-ffd578937521
2013-02-16 00:08:33 +00:00
Fred Kiefer
4d8bbcfe9b * Source/NSBitmapImageRep.m (-_convertToFormatBitsPerSample:...bitsPerPixel:): Correct
handling of black data.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34762 72102866-910b-0410-8b05-ffd578937521
2012-02-15 22:04:08 +00:00
Fred Kiefer
2d48b49175 Deal with images taht result in no data. This happens in themes that
have to small images to be split up into 9 tiles.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34688 72102866-910b-0410-8b05-ffd578937521
2012-02-01 10:49:35 +00:00
Fred Kiefer
d570812401 Fix clang compiler warnings as reported by Sebastian Reitenbach
<sebastia@l00-bugdead-prods.de>.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34608 72102866-910b-0410-8b05-ffd578937521
2012-01-23 14:27:58 +00:00
Fred Kiefer
afe8c3bea5 * Source/NSBitmapImageRep.m (+imageRepWithData:): Add missing
AUTORELEASE.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34078 72102866-910b-0410-8b05-ffd578937521
2011-10-27 17:07:54 +00:00
Eric Wasylishen
25c6770196 * Source/NSBitmapImageRep.m:
* Source/NSColor.m:
* Source/GSThemeTools.m:
* Source/NSGraphicsContext.m:
* Headers/AppKit/NSColor.h:
* Headers/AppKit/NSGraphicsContext.h:
* ColorPickers/GSGrayColorPicker.m:
* ColorPickers/GSCMYKColorPicker.m:
* ColorPickers/GSWheelColorPicker.m:
* ColorPickers/GSRGBColorPicker.m:
* ColorPickers/GSHSBColorPicker.m: Migrate float to CGFloat in
NSColor


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@34070 72102866-910b-0410-8b05-ffd578937521
2011-10-26 00:21:57 +00:00
Fred Kiefer
86ff6abf69 Replace direct use of the isa pointer with a call to object_getClass()
to make David happy.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33545 72102866-910b-0410-8b05-ffd578937521
2011-07-14 07:17:24 +00:00
David Chisnall
002f6635b4 Small GC fixups. Make sure that we're actually using GC-tracked memory when we think that we are.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33416 72102866-910b-0410-8b05-ffd578937521
2011-06-29 15:41:14 +00:00
Eric Wasylishen
af6f2c29bc * Source/NSBitmapImageRep.m: Reduce floating-point error in the
expression which computes image point size using DPI and pixel size
(for TIFF images.)


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33293 72102866-910b-0410-8b05-ffd578937521
2011-06-13 22:09:52 +00:00
David Chisnall
b4e3915c33 Turn release messages sent to autorelease pools into drain messages. No
functionality change in non-GC mode, in GC mode it invokes a quick GC pass to
try to delete the short-lived objects.

Also deleted some [pool release] lines just before exit() or return-from-main
statements.  These cause objects to be swapped in and destructors to be run to
no benefit (the OS will reclaim this memory without requiring stuff to be
swapped in when the process exits).



git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33146 72102866-910b-0410-8b05-ffd578937521
2011-05-27 12:42:37 +00:00
Fred Kiefer
2608a790ed Method to get all images from an ICNS file.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@33062 72102866-910b-0410-8b05-ffd578937521
2011-05-18 20:07:02 +00:00
Eric Wasylishen
76d30190e9 * Source/tiff.m:
* Source/nsimage-tiff.h:
* Source/NSBitmapImageRep.m: Read DPI metadata in TIFF files and use this
to set the point size of the image rep


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32920 72102866-910b-0410-8b05-ffd578937521
2011-04-21 22:19:06 +00:00
Fred Kiefer
2e738f7ba2 Correct issues with missing or incorrect self
tests in initXXX methods pointed out by static analyser.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32588 72102866-910b-0410-8b05-ffd578937521
2011-03-14 22:59:20 +00:00
Richard Frith-MacDonald
edb6aa47ee avoid obsolete macros
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@32412 72102866-910b-0410-8b05-ffd578937521
2011-02-28 15:43:25 +00:00
Fred Kiefer
99e273a57d few compiler warning fixes plus a lot of #import replacement.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@30448 72102866-910b-0410-8b05-ffd578937521
2010-05-24 10:48:14 +00:00
Fred Kiefer
b8d68dcdbb Apply patch by Eric Wasylishen to correct the orientation of colorAtX:y:
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@29120 72102866-910b-0410-8b05-ffd578937521
2009-12-14 13:26:26 +00:00
Fred Kiefer
97d5040a02 Made the code a bit more tolerant on matching colour spaces during
image conversion.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27280 72102866-910b-0410-8b05-ffd578937521
2008-12-11 23:34:56 +00:00
Fred Kiefer
99acf8e220 Filled with some more code. The conversion within the same colour
space and be between black/white and RGB should now be correct
and faster.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@27013 72102866-910b-0410-8b05-ffd578937521
2008-11-06 09:23:10 +00:00
Fred Kiefer
288bf8cfbe Add drop in replacement code for libicns.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26829 72102866-910b-0410-8b05-ffd578937521
2008-09-03 07:02:34 +00:00
Gregory John Casamento
8b4277dcdc * configure: Regenerated file
* configure.ac: Added check for libicns. (http://icns.sourceforge.net/)
        * Headers/Additions/GNUstepGUI/config.h.in
        * Source/GNUmakefile: Added new files
        * Source/NSBitmapImageRep+ICNS.h: Header for ICNS category
        * Source/NSBitmapImageRep+ICNS.m: Implementation if ICNS reading
        logic.
        * Source/NSBitmapImageRep.m: Add support for the ICNS file 
        format so that GNUstep can read Mac OS X icon files.   Uses
        the libicns library available from sourceforge.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26805 72102866-910b-0410-8b05-ffd578937521
2008-08-12 04:58:04 +00:00
Adam Fedor
7afdd32ac1 Revert library license version to 2 until applications can be converted
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26619 72102866-910b-0410-8b05-ffd578937521
2008-06-10 04:01:49 +00:00
Fred Kiefer
0d146e1c55 Small improvements on premultiplcation of alpha.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26276 72102866-910b-0410-8b05-ffd578937521
2008-03-11 20:11:53 +00:00
Fred Kiefer
2dabdc3270 In _premultiply and _unpremultiply flag the format as changed.
Add fast path for 8 bit images.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26131 72102866-910b-0410-8b05-ffd578937521
2008-02-25 15:35:57 +00:00
Fred Kiefer
5efc693137 Better support for transparent images and more image formats.
Add background image in info panel.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@26043 72102866-910b-0410-8b05-ffd578937521
2008-02-08 22:40:38 +00:00
Fred Kiefer
56b6a0ff3e Do all bitmap image drawing via GSDrawImage:: to allow better
implementations in backends.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@25600 72102866-910b-0410-8b05-ffd578937521
2007-11-22 10:47:33 +00:00
Fred Kiefer
193e31e678 Change all files to use GPL 3 and LGPL 3.
Prepare for next release.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@25536 72102866-910b-0410-8b05-ffd578937521
2007-10-29 21:16:17 +00:00
Fred Kiefer
d9445dfd53 Add MacOSX 10.4 methods and constants.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@25359 72102866-910b-0410-8b05-ffd578937521
2007-07-26 17:55:36 +00:00
Richard Frith-MacDonald
bc34ad5f62 Document some typedefs
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gui/trunk@24351 72102866-910b-0410-8b05-ffd578937521
2007-01-15 10:18:24 +00:00