]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/bitmap.h
Move code removing "-psn_xxx" command line arguments to common code.
[wxWidgets.git] / interface / wx / bitmap.h
index 4874563bd4ba24cb5b0ec75ac1a6cfbb11aca568..d6f603b9076e55c88aa75daa713901b1e0be8a26 100644 (file)
@@ -2,7 +2,6 @@
 // Name:        bitmap.h
 // Purpose:     interface of wxBitmap* classes
 // Author:      wxWidgets team
 // Name:        bitmap.h
 // Purpose:     interface of wxBitmap* classes
 // Author:      wxWidgets team
-// RCS-ID:      $Id$
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
@@ -92,6 +91,12 @@ public:
         Loads a bitmap from a file or resource, putting the resulting data into
         @a bitmap.
 
         Loads a bitmap from a file or resource, putting the resulting data into
         @a bitmap.
 
+        @note Under MSW, when loading a bitmap from resources (i.e. using @c
+            wxBITMAP_TYPE_BMP_RESOURCE as @a type), the light grey colour is
+            considered to be transparent, for historical reasons. If you want
+            to handle the light grey pixels normally instead, call
+            SetMask(NULL) after loading the bitmap.
+
         @param bitmap
             The bitmap object which is to be affected by this operation.
         @param name
         @param bitmap
             The bitmap object which is to be affected by this operation.
         @param name
@@ -165,7 +170,7 @@ public:
     If you need direct access the bitmap data instead going through
     drawing to it using wxMemoryDC you need to use the wxPixelData
     class (either wxNativePixelData for RGB bitmaps or wxAlphaPixelData
     If you need direct access the bitmap data instead going through
     drawing to it using wxMemoryDC you need to use the wxPixelData
     class (either wxNativePixelData for RGB bitmaps or wxAlphaPixelData
-    for bitmaps with an additionaly alpha channel).
+    for bitmaps with an additionally alpha channel).
 
     Note that many wxBitmap functions take a @e type parameter, which is a 
     value of the ::wxBitmapType enumeration.
 
     Note that many wxBitmap functions take a @e type parameter, which is a 
     value of the ::wxBitmapType enumeration.
@@ -276,7 +281,7 @@ public:
         In wxPerl use Wx::Bitmap->newFromBits(bits, width, height, depth).
         @endWxPerlOnly
     */
         In wxPerl use Wx::Bitmap->newFromBits(bits, width, height, depth).
         @endWxPerlOnly
     */
-    wxBitmap(const char* bits[], int width, int height, int depth = 1);
+    wxBitmap(const char bits[], int width, int height, int depth = 1);
 
     /**
         Creates a new bitmap. A depth of ::wxBITMAP_SCREEN_DEPTH indicates the
 
     /**
         Creates a new bitmap. A depth of ::wxBITMAP_SCREEN_DEPTH indicates the
@@ -584,6 +589,31 @@ public:
     */
     virtual bool LoadFile(const wxString& name, wxBitmapType type = wxBITMAP_DEFAULT_TYPE);
 
     */
     virtual bool LoadFile(const wxString& name, wxBitmapType type = wxBITMAP_DEFAULT_TYPE);
 
+    /**
+        Loads a bitmap from the memory containing image data in PNG format.
+
+        This helper function provides the simplest way to create a wxBitmap
+        from PNG image data. On most platforms, it's simply a wrapper around
+        wxImage loading functions and so requires the PNG image handler to be
+        registered by either calling wxInitAllImageHandlers() which also
+        registers all the other image formats or including the necessary
+        header:
+        @code
+            #include <wx/imagpng.h>
+        @endcode
+        and calling
+        @code
+            wxImage::AddHandler(new wxPNGHandler);
+        @endcode
+        in your application startup code.
+
+        However under OS X this function uses native image loading and so
+        doesn't require wxWidgets PNG support.
+
+        @since 2.9.5
+     */
+    static wxBitmap NewFromPNGData(const void* data, size_t size);
+
     /**
         Finds the handler with the given name, and removes it.
         The handler is not deleted.
     /**
         Finds the handler with the given name, and removes it.
         The handler is not deleted.
@@ -710,19 +740,11 @@ public:
 
     /**
         Constructs a mask from a monochrome bitmap.
 
     /**
         Constructs a mask from a monochrome bitmap.
-
-        @beginWxPythonOnly
-        This is the default constructor for wxMask in wxPython.
-        @endWxPythonOnly
     */
     wxMask(const wxBitmap& bitmap);
 
     /**
         Constructs a mask from a bitmap and a colour that indicates the background.
     */
     wxMask(const wxBitmap& bitmap);
 
     /**
         Constructs a mask from a bitmap and a colour that indicates the background.
-
-        @beginWxPythonOnly
-        wxPython has an alternate wxMask constructor matching this form called wxMaskColour.
-        @endWxPythonOnly
     */
     wxMask(const wxBitmap& bitmap, const wxColour& colour);
 
     */
     wxMask(const wxBitmap& bitmap, const wxColour& colour);
 
@@ -752,5 +774,13 @@ public:
         Constructs a mask from a bitmap and a colour that indicates the background.
     */
     bool Create(const wxBitmap& bitmap, const wxColour& colour);
         Constructs a mask from a bitmap and a colour that indicates the background.
     */
     bool Create(const wxBitmap& bitmap, const wxColour& colour);
+
+    /**
+        Returns the mask as a monochrome bitmap.
+        Currently this method is implemented in wxMSW, wxGTK and wxOSX.
+
+        @since 2.9.5
+    */
+    wxBitmap GetBitmap() const;
 };
 
 };