1) fixed handling of 48bit colors in XPMs

2) re-added #if wxUSE_IMAGE && wxUSE_XPM


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10739 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Václav Slavík 2001-07-01 15:07:14 +00:00
parent cc6e1950f5
commit 942285dcfa

View File

@ -105,6 +105,7 @@ license is as follows:
# include "wx/defs.h"
#endif
#if wxUSE_IMAGE && wxUSE_XPM
#include "wx/stream.h"
#include "wx/image.h"
@ -522,12 +523,14 @@ static bool GetRGBFromName(const char *inname, bool *isNone,
char *name;
char *grey, *p;
// #rrggbb are not in database, we parse them directly
if ( *inname == '#' && strlen(inname) == 7 )
// Neither #rrggbb nor #rrrrggggbbbb are in database, we parse them directly
size_t inname_len = strlen(inname);
if ( *inname == '#' && (inname_len == 7 || inname_len == 13))
{
size_t ofs = (inname_len == 7) ? 2 : 4;
*r = ParseHexadecimal(inname[1], inname[2]);
*g = ParseHexadecimal(inname[3], inname[4]);
*b = ParseHexadecimal(inname[5], inname[6]);
*g = ParseHexadecimal(inname[1*ofs+1], inname[1*ofs+2]);
*b = ParseHexadecimal(inname[2*ofs+1], inname[2*ofs+2]);
*isNone = FALSE;
return TRUE;
}
@ -751,4 +754,4 @@ wxImage wxXPMDecoder::ReadData(const char **xpm_data)
return img;
}
#endif // wxUSE_IMAGE && wxUSE_XPM