X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c71ce6751172eb3b4752c6b48d087a844a36f8e4..2936a6b18cfcc0093e55e4484a6514fb28f07d21:/src/common/gdicmn.cpp diff --git a/src/common/gdicmn.cpp b/src/common/gdicmn.cpp index 0f73fff839..e2c0f65521 100644 --- a/src/common/gdicmn.cpp +++ b/src/common/gdicmn.cpp @@ -1,5 +1,5 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: gdicmn.cpp +// Name: src/common/gdicmn.cpp // Purpose: Common GDI classes // Author: Julian Smart // Modified by: @@ -9,10 +9,6 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "gdicmn.h" -#endif - #ifdef __VMS #define XtDisplay XTDISPLAY #endif @@ -42,7 +38,7 @@ #include "wx/log.h" #include -#if defined(__WXMSW__) && !defined(__PALMOS__) +#if defined(__WXMSW__) #include "wx/msw/wrapwin.h" #endif @@ -163,23 +159,33 @@ wxRect& wxRect::Union(const wxRect& rect) wxRect& wxRect::Inflate(wxCoord dx, wxCoord dy) { - x -= dx; - y -= dy; - width += 2*dx; - height += 2*dy; - - // check that we didn't make the rectangle invalid by accident (you almost - // never want to have negative coords and never want negative size) - if ( x < 0 ) - x = 0; - if ( y < 0 ) - y = 0; - - // what else can we do? - if ( width < 0 ) - width = 0; - if ( height < 0 ) - height = 0; + if (-2*dx>width) + { + // Don't allow deflate to eat more width than we have, + // a well-defined rectangle cannot have negative width. + x+=width/2; + width=0; + } + else + { + // The inflate is valid. + x-=dx; + width+=2*dx; + } + + if (-2*dy>height) + { + // Don't allow deflate to eat more height than we have, + // a well-defined rectangle cannot have negative height. + y+=height/2; + height=0; + } + else + { + // The inflate is valid. + y-=dy; + height+=2*dy; + } return *this; } @@ -482,6 +488,7 @@ wxString wxColourDatabase::FindName(const wxColour& colour) const // deprecated wxColourDatabase methods // ---------------------------------------------------------------------------- +#if WXWIN_COMPATIBILITY_2_6 wxColour *wxColourDatabase::FindColour(const wxString& name) { // This function is deprecated, use Find() instead. @@ -510,6 +517,7 @@ wxColour *wxColourDatabase::FindColour(const wxString& name) return new wxColour(s_col); } +#endif // WXWIN_COMPATIBILITY_2_6 // ============================================================================ // stock objects @@ -944,4 +952,3 @@ wxResourceCache::~wxResourceCache () node = node->GetNext (); } } -