X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ad6bd8701eda692b5fcf6f833e041c38756c608a..77b5dc955b1bdd138cae77795b4d403a7db8eca6:/include/wx/os2/bitmap.h diff --git a/include/wx/os2/bitmap.h b/include/wx/os2/bitmap.h index 68efa96758..a809df37ad 100644 --- a/include/wx/os2/bitmap.h +++ b/include/wx/os2/bitmap.h @@ -12,10 +12,6 @@ #ifndef _WX_BITMAP_H_ #define _WX_BITMAP_H_ -#ifdef __GNUG__ - #pragma interface "bitmap.h" -#endif - #include "wx/os2/private.h" #include "wx/os2/gdiimage.h" #include "wx/gdicmn.h" @@ -74,7 +70,11 @@ public: // Copy constructors inline wxBitmap(const wxBitmap& rBitmap) - { Init(); Ref(rBitmap); } + : wxGDIImage(rBitmap) + { + Init(); + SetHandle(rBitmap.GetHandle()); + } // Initialize with raw data wxBitmap( const char bits[] @@ -84,16 +84,20 @@ public: ); // Initialize with XPM data - wxBitmap(const char** ppData) { CreateFromXpm(ppData); } - wxBitmap(char** ppData) { CreateFromXpm((const char**)ppData); } + wxBitmap(const char* const* bits); - // Load a file or resource - wxBitmap( const wxString& rName + // Load a resource + wxBitmap( int nId ,long lType = wxBITMAP_TYPE_BMP_RESOURCE ); + // For compatiability with other ports, under OS/2 does same as default ctor + inline wxBitmap( const wxString& WXUNUSED(rFilename) + ,long WXUNUSED(lType) + ) + { Init(); } // New constructor for generalised creation from data - wxBitmap( void* pData + wxBitmap( const void* pData ,long lType ,int nWidth ,int nHeight @@ -101,10 +105,7 @@ public: ); // If depth is omitted, will create a bitmap compatible with the display - wxBitmap( int nWidth - ,int nHeight - ,int nDepth = -1 - ); + wxBitmap( int nWidth, int nHeight, int nDepth = -1 ); wxBitmap( const wxImage& image, int depth = -1 ) { (void)CreateFromImage(image, depth); } @@ -114,13 +115,6 @@ public: inline wxBitmap(const wxIcon& rIcon) { Init(); CopyFromIcon(rIcon); } - wxBitmap& operator=(const wxBitmap& rBitmap) - { - if ( m_refData != rBitmap.m_refData ) - Ref(rBitmap); - return(*this); - } - wxBitmap& operator=(const wxIcon& rIcon) { (void)CopyFromIcon(rIcon); @@ -151,15 +145,18 @@ public: ,int nHeight ,int nDepth = -1 ); - virtual bool Create( void* pData + virtual bool Create( const void* pData ,long lType ,int nWidth ,int nHeight ,int nDepth = 1 ); - virtual bool LoadFile( const wxString& rName + virtual bool LoadFile( int nId ,long lType = wxBITMAP_TYPE_BMP_RESOURCE ); + virtual bool LoadFile( const wxString& rName + ,long lType = wxBITMAP_TYPE_XPM + ); virtual bool SaveFile( const wxString& rName ,int lType ,const wxPalette* pCmap = NULL @@ -189,19 +186,6 @@ public: inline bool operator!=(const wxBitmap& rBitmap) const { return m_refData != rBitmap.m_refData; } -#if WXWIN_COMPATIBILITY_2 - void SetOk(bool bIsOk); -#endif // WXWIN_COMPATIBILITY_2 - -#if WXWIN_COMPATIBILITY - inline wxPalette* GetColourMap() const - { return GetPalette(); } - - inline void SetColourMap(wxPalette* pCmap) - { SetPalette(*pCmap); }; - -#endif // WXWIN_COMPATIBILITY - // Implementation public: inline void SetHBITMAP(WXHBITMAP hBmp) @@ -218,14 +202,9 @@ public: inline bool IsMono(void) const { return m_bIsMono; } - // 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); } - - protected: // common part of all ctors void Init(); @@ -233,8 +212,6 @@ protected: inline virtual wxGDIImageRefData* CreateData() const { return new wxBitmapRefData; } - // creates the bitmap from XPM data, supposed to be called from ctor - bool CreateFromXpm(const char** ppData); bool CreateFromImage(const wxImage& image, int depth); private: @@ -316,15 +293,20 @@ public: // keep wxBitmapHandler derived from wxGDIImageHandler compatible with the // old class which worked only with bitmaps virtual bool Create( wxBitmap* pBitmap - ,void* pData + ,const void* pData ,long lFlags ,int nWidth ,int nHeight ,int nDepth = 1 ); + virtual bool LoadFile( wxBitmap* pBitmap + ,int nId + ,long lFlags + ,int nDesiredWidth + ,int nDesiredHeight + ); virtual bool LoadFile( wxBitmap* pBitmap ,const wxString& rName - ,HPS hPs ,long lFlags ,int nDesiredWidth ,int nDesiredHeight @@ -336,15 +318,14 @@ public: ); virtual bool Create( wxGDIImage* pImage - ,void* pData + ,const void* pData ,long lFlags ,int nWidth ,int nHeight ,int nDepth = 1 ); virtual bool Load( wxGDIImage* pImage - ,const wxString& rName - ,HPS hPs + ,int nId ,long lFlags ,int nDesiredWidth ,int nDesiredHeight @@ -354,6 +335,14 @@ public: ,int lType ); private: + inline virtual bool Load( wxGDIImage* WXUNUSED(pImage) + ,const wxString& WXUNUSED(rName) + ,HPS WXUNUSED(hPs) + ,long WXUNUSED(lFlags) + ,int WXUNUSED(nDesiredWidth) + ,int WXUNUSED(nDesiredHeight) + ) + { return false; } DECLARE_DYNAMIC_CLASS(wxBitmapHandler) }; // end of CLASS wxBitmapHandler