X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8907154c1a8a6882c6797d1f16393ddfb23e7f3a..1e9bafca0f56de34638d4c3fef8cf74fe9351193:/src/msw/palette.cpp diff --git a/src/msw/palette.cpp b/src/msw/palette.cpp index dc9dfabf86..c958a25a2a 100644 --- a/src/msw/palette.cpp +++ b/src/msw/palette.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: palette.cpp +// Name: src/msw/palette.cpp // Purpose: wxPalette // Author: Julian Smart // Modified by: @@ -33,7 +33,7 @@ IMPLEMENT_DYNAMIC_CLASS(wxPalette, wxGDIObject) wxPaletteRefData::wxPaletteRefData(void) { - m_hPalette = 0; + m_hPalette = 0; } wxPaletteRefData::~wxPaletteRefData(void) @@ -67,71 +67,72 @@ bool wxPalette::FreeResource(bool WXUNUSED(force)) bool wxPalette::Create(int n, const unsigned char *red, const unsigned char *green, const unsigned char *blue) { - UnRef(); + UnRef(); #if defined(__WXMICROWIN__) - return false; + return false; #else - m_refData = new wxPaletteRefData; + m_refData = new wxPaletteRefData; - NPLOGPALETTE npPal = (NPLOGPALETTE)LocalAlloc(LMEM_FIXED, sizeof(LOGPALETTE) + - (WORD)n * sizeof(PALETTEENTRY)); - if (!npPal) - return false; + NPLOGPALETTE npPal = (NPLOGPALETTE)LocalAlloc(LMEM_FIXED, sizeof(LOGPALETTE) + + (WORD)n * sizeof(PALETTEENTRY)); + if (!npPal) + return false; - npPal->palVersion = 0x300; - npPal->palNumEntries = (WORD)n; - - int i; - for (i = 0; i < n; i ++) - { - npPal->palPalEntry[i].peRed = red[i]; - npPal->palPalEntry[i].peGreen = green[i]; - npPal->palPalEntry[i].peBlue = blue[i]; - npPal->palPalEntry[i].peFlags = 0; - } - M_PALETTEDATA->m_hPalette = (WXHPALETTE) CreatePalette((LPLOGPALETTE)npPal); - LocalFree((HANDLE)npPal); - return true; + npPal->palVersion = 0x300; + npPal->palNumEntries = (WORD)n; + + int i; + for (i = 0; i < n; i ++) + { + npPal->palPalEntry[i].peRed = red[i]; + npPal->palPalEntry[i].peGreen = green[i]; + npPal->palPalEntry[i].peBlue = blue[i]; + npPal->palPalEntry[i].peFlags = 0; + } + M_PALETTEDATA->m_hPalette = (WXHPALETTE) CreatePalette((LPLOGPALETTE)npPal); + LocalFree((HANDLE)npPal); + return true; #endif } -int wxPalette::GetPixel(const unsigned char red, const unsigned char green, const unsigned char blue) const +int wxPalette::GetPixel(unsigned char red, unsigned char green, unsigned char blue) const { #ifdef __WXMICROWIN__ - return 0; + return wxNOT_FOUND; #else - if ( !m_refData ) - return 0; + if ( !m_refData ) + return wxNOT_FOUND; - return ::GetNearestPaletteIndex((HPALETTE) M_PALETTEDATA->m_hPalette, PALETTERGB(red, green, blue)); + return ::GetNearestPaletteIndex((HPALETTE) M_PALETTEDATA->m_hPalette, PALETTERGB(red, green, blue)); #endif } bool wxPalette::GetRGB(int index, unsigned char *red, unsigned char *green, unsigned char *blue) const { #ifdef __WXMICROWIN__ - return false; -#else - if ( !m_refData ) return false; +#else + if ( !m_refData ) + return false; + + if (index < 0 || index > 255) + return false; - if (index < 0 || index > 255) - return false; - - PALETTEENTRY entry; - if (::GetPaletteEntries((HPALETTE) M_PALETTEDATA->m_hPalette, index, 1, &entry)) - { - *red = entry.peRed; - *green = entry.peGreen; - *blue = entry.peBlue; - return true; - } else - return false; + PALETTEENTRY entry; + if (::GetPaletteEntries((HPALETTE) M_PALETTEDATA->m_hPalette, index, 1, &entry)) + { + *red = entry.peRed; + *green = entry.peGreen; + *blue = entry.peBlue; + return true; + } + else + return false; #endif } @@ -144,4 +145,3 @@ void wxPalette::SetHPALETTE(WXHPALETTE pal) } #endif // wxUSE_PALETTE -