X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/23bed520417f9946f01bbcf2f18c26a7bc3cb2a7..3216dbf5dccab8ed6dc0245b7e5c998738ef51d7:/wxPython/src/gdi.i diff --git a/wxPython/src/gdi.i b/wxPython/src/gdi.i index 697de042fa..29aca1dcac 100644 --- a/wxPython/src/gdi.i +++ b/wxPython/src/gdi.i @@ -643,6 +643,25 @@ public: %addmethods { void Append(const wxString& name, int red, int green, int blue) { + // first see if the name is already there + wxString cName = name; + cName.MakeUpper(); + wxString cName2 = cName; + if ( !cName2.Replace("GRAY", "GREY") ) + cName2.clear(); + + wxNode *node = self->First(); + while ( node ) { + const wxChar *key = node->GetKeyString(); + if ( cName == key || cName2 == key ) { + wxColour* c = (wxColour *)node->Data(); + c->Set(red, green, blue); + return; + } + node = node->Next(); + } + + // otherwise append the new colour self->Append(name.c_str(), new wxColour(red, green, blue)); } } @@ -1248,7 +1267,9 @@ public: ~wxRegion(); void Clear(); +#ifndef __WXMAC__ bool Offset(wxCoord x, wxCoord y); +#endif wxRegionContain Contains(long x, long y); %name(ContainsPoint)wxRegionContain Contains(const wxPoint& pt);