X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f54a35fe2206fa815f0a77bd13d04d37a3895e72..8262f9aecb42cefb62a6c574812a2db3dcc33661:/wxPython/src/gdi.i diff --git a/wxPython/src/gdi.i b/wxPython/src/gdi.i index 117d7c9779..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)); } } @@ -1148,7 +1167,7 @@ public: //--------------------------------------------------------------------------- -#ifndef __WXGTK__ +#ifdef __WXMSW__ %{ #include @@ -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);