#
59d0c2e4 |
|
30-Apr-2010 |
Stephan Aßmus <superstippi@gmx.de> |
* Introduced PaletteConverter::IndexForRGBA32() which checks if the alpha component of a 32 bit color is below 128 and returns the special CMAP8 index for indicating transparency. * Changed the WriteCMAP() color conversion function to expext a 32bit RGBA value and use IndexForRGBA32(). * Adapted B_CMAP8 target color space case of ConvertBits() to the new semantics. This allows transparency in bitmaps when converting B_RGBA32 bitmaps to B_CMAP8, tested only for this case and working as expected. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36549 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
015943d7 |
|
30-Nov-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use pthread_once() to guard the initialization of sPaletteConverter. This changes the semantics slightly: Previously after a failed initialization another invocation of InitializeDefault() could theoretically initialize the converter. Since the only error conditions are out of memory and broken app server connection, this shouldn't really matter, though. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34383 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3572efc2 |
|
01-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Should fix bug #3401. Put the parenthesis at the wrong spot resulting in wrong offsets. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29125 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6eb09230 |
|
01-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
* Resolve further warnings on GCC4. * Enable -Werror on GCC4 builds as well (limited to the same selected targets). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29118 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
37b83b1a |
|
22-Oct-2007 |
Stefano Ceccherini <stefano.ceccherini@gmail.com> |
The system palette was defined in two files. Moved to a private header, included by the two. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22660 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
fc6a714e |
|
11-Oct-2007 |
Stefano Ceccherini <stefano.ceccherini@gmail.com> |
Static variables should have the s prefix. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22509 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
65e63b98 |
|
11-Oct-2007 |
Stefano Ceccherini <stefano.ceccherini@gmail.com> |
PaletteConverter now exports a static InitializeDefault() method, which can be used (and is, by _init_interface_kit()) to initialize the ... er... default instance of PaletteConverter using the system color map, thus avoid building the list of colors, which takes some time. Fixes bug #505. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22508 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4ad4c6c1 |
|
26-Dec-2006 |
Michael Lotz <mmlr@mlotz.ch> |
ConvertBits() now checks the out of range case before reading/writing the buffers. Previously it was possible to read/write one line after the buffers end because the values were not checked after line advancement. This fixes the crashing bug #850. It however reveals another bug that brings the app_server into an endless loop when using the TextFader screensaver. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19626 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0354c3c2 |
|
01-Aug-2006 |
Stefano Ceccherini <stefano.ceccherini@gmail.com> |
Added missing return statement git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18326 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b0bc48fb |
|
19-May-2006 |
Axel Dörfler <axeld@pinc-software.de> |
Some more GCC 4 and PPC fixes. * Mesa doesn't compile yet, as some PPC specific stuff seems to be missing, Philippe? * Cortex and some other stuff has been marked x86-only, although it's more of a "GCC 2.95.3"-only. * I'm not sure if it's a bug in GCC 4, or if that's what the C standard demands, but sizeof(some_type::some_field) is not valid anymore :-/ git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17515 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0ce9ba6b |
|
15-Mar-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* BPrivate::ConvertBits() did not take the source or destination bits length into account when copying to the same color space (new code isn't that fast, but it works). * BBitmap::ImportBits() did not take the specified offset into account at all. This fixes bug #313. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16812 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0581480c |
|
13-Mar-2006 |
Michael Lotz <mmlr@mlotz.ch> |
* Fixed ServerBitmap::ImportBits() to use the correct width/height * Extended ConvertBits() to properly handle negative offsets and overlapping lines * Implemented blitting the software cursor to the bitmap returned from ReadBitmap() Note: In the future we will have to directly use the final graphics buffer for ReadBitmap() if we want DirectWindow output too (R5 includes it). I don't know how R5 handles the hardware cursor though. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16766 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
bdc6f9e7 |
|
05-Mar-2006 |
Michael Lotz <mmlr@mlotz.ch> |
* Fixed a swapping bug for 16 bit colorspaces * Added some comments * Added some checking to avoid noop shifts * Added buffer length checks * Implemented (as Stephan suggested) a version of ConvertBits() that takes offsets. This new version allows to move a region of the source into a region (possibly not at the same point) on the dest while converting colorspaces on the fly. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16592 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b09e53fa |
|
04-Mar-2006 |
Michael Lotz <mmlr@mlotz.ch> |
Wrote a new color conversion engine. It's 2-5 times faster than the old one (depending on colorspaces) and about half in size. I've put it into ColorConversion.cpp and moved PaletteConverter there too, cleaning up Bitmap.cpp. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16580 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
59d0c2e45e612140ff9a9b82ed56e02499eefe66 |
|
30-Apr-2010 |
Stephan Aßmus <superstippi@gmx.de> |
* Introduced PaletteConverter::IndexForRGBA32() which checks if the alpha component of a 32 bit color is below 128 and returns the special CMAP8 index for indicating transparency. * Changed the WriteCMAP() color conversion function to expext a 32bit RGBA value and use IndexForRGBA32(). * Adapted B_CMAP8 target color space case of ConvertBits() to the new semantics. This allows transparency in bitmaps when converting B_RGBA32 bitmaps to B_CMAP8, tested only for this case and working as expected. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@36549 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
015943d78f29e326cf9d120ea52b3badab627775 |
|
30-Nov-2009 |
Ingo Weinhold <ingo_weinhold@gmx.de> |
Use pthread_once() to guard the initialization of sPaletteConverter. This changes the semantics slightly: Previously after a failed initialization another invocation of InitializeDefault() could theoretically initialize the converter. Since the only error conditions are out of memory and broken app server connection, this shouldn't really matter, though. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@34383 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
3572efc23974d8404c31e3eace4470ae68a7ec8b |
|
01-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
Should fix bug #3401. Put the parenthesis at the wrong spot resulting in wrong offsets. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29125 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
6eb09230bae52bcdf045e1f1920b67205c29adc8 |
|
01-Feb-2009 |
Michael Lotz <mmlr@mlotz.ch> |
* Resolve further warnings on GCC4. * Enable -Werror on GCC4 builds as well (limited to the same selected targets). git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@29118 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
37b83b1a2d32b92cb6e11a18ace276039b90bd2a |
|
22-Oct-2007 |
Stefano Ceccherini <stefano.ceccherini@gmail.com> |
The system palette was defined in two files. Moved to a private header, included by the two. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22660 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
fc6a714ec0834d7526dfdb0f4ea5c4a399bbe53c |
|
11-Oct-2007 |
Stefano Ceccherini <stefano.ceccherini@gmail.com> |
Static variables should have the s prefix. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22509 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
65e63b987dda42a7492b7f8eb68b4f71bd8134cc |
|
11-Oct-2007 |
Stefano Ceccherini <stefano.ceccherini@gmail.com> |
PaletteConverter now exports a static InitializeDefault() method, which can be used (and is, by _init_interface_kit()) to initialize the ... er... default instance of PaletteConverter using the system color map, thus avoid building the list of colors, which takes some time. Fixes bug #505. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22508 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
4ad4c6c1b8cff539aa22f09584358130dfef4630 |
|
26-Dec-2006 |
Michael Lotz <mmlr@mlotz.ch> |
ConvertBits() now checks the out of range case before reading/writing the buffers. Previously it was possible to read/write one line after the buffers end because the values were not checked after line advancement. This fixes the crashing bug #850. It however reveals another bug that brings the app_server into an endless loop when using the TextFader screensaver. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@19626 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0354c3c2d5d044694513311205daecee3f957cc9 |
|
01-Aug-2006 |
Stefano Ceccherini <stefano.ceccherini@gmail.com> |
Added missing return statement git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@18326 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b0bc48fbd360f10cee1856e03393c63dcbdd180f |
|
19-May-2006 |
Axel Dörfler <axeld@pinc-software.de> |
Some more GCC 4 and PPC fixes. * Mesa doesn't compile yet, as some PPC specific stuff seems to be missing, Philippe? * Cortex and some other stuff has been marked x86-only, although it's more of a "GCC 2.95.3"-only. * I'm not sure if it's a bug in GCC 4, or if that's what the C standard demands, but sizeof(some_type::some_field) is not valid anymore :-/ git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@17515 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0ce9ba6ba32a6e28971899c78b83ae4c63b231fb |
|
15-Mar-2006 |
Axel Dörfler <axeld@pinc-software.de> |
* BPrivate::ConvertBits() did not take the source or destination bits length into account when copying to the same color space (new code isn't that fast, but it works). * BBitmap::ImportBits() did not take the specified offset into account at all. This fixes bug #313. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16812 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
0581480cfec831197846c0449f838768412e2e03 |
|
13-Mar-2006 |
Michael Lotz <mmlr@mlotz.ch> |
* Fixed ServerBitmap::ImportBits() to use the correct width/height * Extended ConvertBits() to properly handle negative offsets and overlapping lines * Implemented blitting the software cursor to the bitmap returned from ReadBitmap() Note: In the future we will have to directly use the final graphics buffer for ReadBitmap() if we want DirectWindow output too (R5 includes it). I don't know how R5 handles the hardware cursor though. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16766 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
bdc6f9e7ef0a4ef9c8f729c2979af0c0207fd007 |
|
05-Mar-2006 |
Michael Lotz <mmlr@mlotz.ch> |
* Fixed a swapping bug for 16 bit colorspaces * Added some comments * Added some checking to avoid noop shifts * Added buffer length checks * Implemented (as Stephan suggested) a version of ConvertBits() that takes offsets. This new version allows to move a region of the source into a region (possibly not at the same point) on the dest while converting colorspaces on the fly. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16592 a95241bf-73f2-0310-859d-f6bbb57e9c96
|
#
b09e53fae0c50ed31994c3f03d477ae2af8ab951 |
|
04-Mar-2006 |
Michael Lotz <mmlr@mlotz.ch> |
Wrote a new color conversion engine. It's 2-5 times faster than the old one (depending on colorspaces) and about half in size. I've put it into ColorConversion.cpp and moved PaletteConverter there too, cleaning up Bitmap.cpp. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@16580 a95241bf-73f2-0310-859d-f6bbb57e9c96
|