]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gdicmn.h
As per wx-dev, split the sort arrow options out to a separate parameter.
[wxWidgets.git] / include / wx / gdicmn.h
index 0c27e93a9b971a42d972acf70bd6d5e6ea47a9d0..c2fbc87d7538dd000ebdc974ff16dc288503f565 100644 (file)
@@ -20,6 +20,7 @@
 #include "wx/list.h"
 #include "wx/string.h"
 #include "wx/fontenc.h"
+#include "wx/hashmap.h"
 #include "wx/math.h"
 
 // ---------------------------------------------------------------------------
@@ -36,7 +37,6 @@ class WXDLLIMPEXP_CORE wxPalette;
 class WXDLLIMPEXP_CORE wxPen;
 class WXDLLIMPEXP_CORE wxRegion;
 class WXDLLIMPEXP_BASE wxString;
-class wxStringToColourHashMap;
 
 // ---------------------------------------------------------------------------
 // constants
@@ -229,6 +229,9 @@ public:
     void DecTo(const wxSize& sz)
         { if ( sz.x < x ) x = sz.x; if ( sz.y < y ) y = sz.y; }
 
+    void Scale(float xscale, float yscale)
+        { x = (int)(x*xscale); y = (int)(y*yscale); }
+
     // accessors
     void Set(int xx, int yy) { x = xx; y = yy; }
     void SetWidth(int w) { x = w; }
@@ -304,6 +307,8 @@ public:
 
     wxPoint operator+(const wxSize& s) const { return wxPoint(x + s.GetWidth(), y + s.GetHeight()); }
     wxPoint operator-(const wxSize& s) const { return wxPoint(x - s.GetWidth(), y - s.GetHeight()); }
+
+    wxPoint operator-() const { return wxPoint(-x, -y); }
 };
 
 // ---------------------------------------------------------------------------
@@ -412,8 +417,17 @@ public:
     bool operator!=(const wxRect& rect) const { return !(*this == rect); }
 
     // return true if the point is (not strcitly) inside the rect
-    bool Inside(int x, int y) const;
-    bool Inside(const wxPoint& pt) const { return Inside(pt.x, pt.y); }
+    bool Contains(int x, int y) const;
+    bool Contains(const wxPoint& pt) const { return Contains(pt.x, pt.y); }
+    // return true if the rectangle is (not strcitly) inside the rect
+    bool Contains(const wxRect& rect) const;
+
+#if WXWIN_COMPATIBILITY_2_6
+    // use Contains() instead
+    wxDEPRECATED( bool Inside(int x, int y) const );
+    wxDEPRECATED( bool Inside(const wxPoint& pt) const );
+    wxDEPRECATED( bool Inside(const wxRect& rect) const );
+#endif // WXWIN_COMPATIBILITY_2_6
 
     // return true if the rectangles have a non empty intersection
     bool Intersects(const wxRect& rect) const;
@@ -446,6 +460,13 @@ public:
     int x, y, width, height;
 };
 
+#if WXWIN_COMPATIBILITY_2_6
+inline bool wxRect::Inside(int x, int y) const { return Contains(x, y); }
+inline bool wxRect::Inside(const wxPoint& pt) const { return Contains(pt); }
+inline bool wxRect::Inside(const wxRect& rect) const { return Contains(rect); }
+#endif // WXWIN_COMPATIBILITY_2_6
+
+
 // ---------------------------------------------------------------------------
 // Management of pens, brushes and fonts
 // ---------------------------------------------------------------------------
@@ -494,6 +515,8 @@ public:
 #endif
 };
 
+WX_DECLARE_STRING_HASH_MAP(wxColour*, wxStringToColourHashMap);
+
 class WXDLLEXPORT wxColourDatabase
 {
 public:
@@ -534,7 +557,7 @@ public:
 #if !wxUSE_STL
     wxResourceCache(const unsigned int keyType) : wxList(keyType) { }
 #endif
-    ~wxResourceCache();
+    virtual ~wxResourceCache();
 };
 
 // ---------------------------------------------------------------------------