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:
parent
cc6e1950f5
commit
942285dcfa
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user