X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/341366c67a9af796d39e1f0af92635d47af5308f..fd775aae7b8eace70d8fc41a23623505ad568355:/include/wx/os2/bitmap.h diff --git a/include/wx/os2/bitmap.h b/include/wx/os2/bitmap.h index 0908e667d5..1260879e6b 100644 --- a/include/wx/os2/bitmap.h +++ b/include/wx/os2/bitmap.h @@ -29,6 +29,7 @@ class WXDLLEXPORT wxIcon; class WXDLLEXPORT wxMask; class WXDLLEXPORT wxCursor; class WXDLLEXPORT wxControl; +class WXDLLEXPORT wxImage; // ---------------------------------------------------------------------------- // Bitmap data @@ -54,12 +55,12 @@ public: // ------------ wxDC* m_pSelectedInto; - HPS m_hPresentationSpace; - LONG m_lId; - // optional mask for transparent drawing + // + // Optional mask for transparent drawing + // wxMask* m_pBitmapMask; -}; +}; // end of CLASS wxBitmapRefData // ---------------------------------------------------------------------------- // wxBitmap: a mono or colour bitmap @@ -83,9 +84,8 @@ public: ); // Initialize with XPM data - wxBitmap( char** ppData - ,wxControl* pAnItem = NULL - ); + wxBitmap(const char** ppData) { CreateFromXpm(ppData); } + wxBitmap(char** ppData) { CreateFromXpm((const char**)ppData); } // Load a file or resource wxBitmap( const wxString& rName @@ -106,6 +106,9 @@ public: ,int nDepth = -1 ); + wxBitmap( const wxImage& image, int depth = -1 ) + { (void)CreateFromImage(image, depth); } + // we must have this, otherwise icons are silently copied into bitmaps using // the copy ctor but the resulting bitmap is invalid! inline wxBitmap(const wxIcon& rIcon) @@ -133,6 +136,8 @@ public: virtual ~wxBitmap(); + wxImage ConvertToImage() const; + // get the given part of bitmap wxBitmap GetSubBitmap(const wxRect& rRect) const; @@ -178,10 +183,10 @@ public: void SetMask(wxMask* pMask) ; - inline bool operator==(const wxBitmap& rBitmap) + inline bool operator==(const wxBitmap& rBitmap) const { return m_refData == rBitmap.m_refData; } - inline bool operator!=(const wxBitmap& rBitmap) + inline bool operator!=(const wxBitmap& rBitmap) const { return m_refData != rBitmap.m_refData; } #if WXWIN_COMPATIBILITY_2 @@ -214,8 +219,8 @@ public: // An OS/2 version that probably doesn't do anything like the msw version wxBitmap GetBitmapForDC(wxDC& rDc) const; - inline LONG GetId() const - { return (GetBitmapData() ? GetBitmapData()->m_lId : 0L); } +// inline LONG GetId() const +// { return (GetBitmapData() ? GetBitmapData()->m_lId : 0L); } protected: @@ -226,7 +231,8 @@ protected: { return new wxBitmapRefData; } // creates the bitmap from XPM data, supposed to be called from ctor - bool CreateFromXpm(const char **bits); + bool CreateFromXpm(const char** ppData); + bool CreateFromImage(const wxImage& image, int depth); private: bool CopyFromIconOrCursor(const wxGDIImage& rIcon); @@ -281,10 +287,7 @@ public: protected: WXHBITMAP m_hMaskBitmap; DECLARE_DYNAMIC_CLASS(wxMask) -private: - HDC m_hDc; - HPS m_hPs; -}; // end of wxMask +}; // end of CLASS wxMask // ---------------------------------------------------------------------------- // wxBitmapHandler is a class which knows how to load/save bitmaps to/from file @@ -348,7 +351,7 @@ public: ); private: DECLARE_DYNAMIC_CLASS(wxBitmapHandler) -}; // end of wxBitmapHandler +}; // end of CLASS wxBitmapHandler #endif // _WX_BITMAP_H_