]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/bitmap.h
Don't define __STRICT_ANSI__, we should build both with and without it.
[wxWidgets.git] / include / wx / bitmap.h
index 82943ca228b8fd930ba9dd9bfdbc07004864ae16..6d9ffe71b75192a32cc34862c5e70c6d440dc3e7 100644 (file)
@@ -4,7 +4,6 @@
 // Author:      Vaclav Slavik
 // Modified by:
 // Created:     22.04.01
-// RCS-ID:      $Id$
 // Copyright:   (c) wxWidgets team
 // Licence:     wxWindows licence
 ///////////////////////////////////////////////////////////////////////////////
@@ -26,6 +25,7 @@ class WXDLLIMPEXP_FWD_CORE wxBitmapHandler;
 class WXDLLIMPEXP_FWD_CORE wxIcon;
 class WXDLLIMPEXP_FWD_CORE wxMask;
 class WXDLLIMPEXP_FWD_CORE wxPalette;
+class WXDLLIMPEXP_FWD_CORE wxDC;
 
 // ----------------------------------------------------------------------------
 // wxVariant support
@@ -89,7 +89,7 @@ protected:
 
 // Unfortunately, currently wxBitmap does not inherit from wxBitmapBase on all
 // platforms and this is not easy to fix. So we extract at least some common
-// methods into this class from which both wxBitmapBase (and hase wxBitmap on
+// methods into this class from which both wxBitmapBase (and hence wxBitmap on
 // all platforms where it does inherit from it) and wxBitmap in wxMSW and other
 // exceptional ports (only wxPM and old wxCocoa) inherit.
 class WXDLLIMPEXP_CORE wxBitmapHelpers
@@ -174,6 +174,8 @@ public:
 
     virtual bool Create(int width, int height, int depth = wxBITMAP_SCREEN_DEPTH) = 0;
     virtual bool Create(const wxSize& sz, int depth = wxBITMAP_SCREEN_DEPTH) = 0;
+    virtual bool CreateScaled(int w, int h, int d, double logicalScale)
+        { return Create(w*logicalScale,h*logicalScale,d); }
 
     virtual int GetHeight() const = 0;
     virtual int GetWidth() const = 0;
@@ -182,6 +184,13 @@ public:
     wxSize GetSize() const
         { return wxSize(GetWidth(), GetHeight()); }
 
+    // support for scaled bitmaps
+    virtual double GetScaleFactor() const { return 1.0; }
+    virtual double GetScaledWidth() const { return GetWidth() / GetScaleFactor(); }
+    virtual double GetScaledHeight() const { return GetHeight() / GetScaleFactor(); }
+    virtual wxSize GetScaledSize() const
+    { return wxSize(GetScaledWidth(), GetScaledHeight()); }
+
 #if wxUSE_IMAGE
     virtual wxImage ConvertToImage() const = 0;