Fix Ok/IsOk() mess in wxGDIObject-derived classes; also added
wxGDIObject::Create/CloneGDIRefData() and implemented them for (almost) all ports git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50727 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -211,7 +211,7 @@ wxBitmapRefData::wxBitmapRefData(const wxBitmapRefData& data)
|
||||
m_bitmapMask = new wxMask(*data.m_bitmapMask);
|
||||
|
||||
// FIXME: we don't copy m_hBitmap currently but we should, see wxBitmap::
|
||||
// CloneRefData()
|
||||
// CloneGDIRefData()
|
||||
|
||||
wxASSERT_MSG( !data.m_isDIB,
|
||||
_T("can't copy bitmap locked for raw access!") );
|
||||
@@ -250,7 +250,7 @@ wxGDIImageRefData *wxBitmap::CreateData() const
|
||||
return new wxBitmapRefData;
|
||||
}
|
||||
|
||||
wxObjectRefData *wxBitmap::CloneRefData(const wxObjectRefData *dataOrig) const
|
||||
wxGDIRefData *wxBitmap::CloneGDIRefData(const wxGDIRefData *dataOrig) const
|
||||
{
|
||||
const wxBitmapRefData *
|
||||
data = wx_static_cast(const wxBitmapRefData *, dataOrig);
|
||||
@@ -277,16 +277,17 @@ wxObjectRefData *wxBitmap::CloneRefData(const wxObjectRefData *dataOrig) const
|
||||
self->m_refData = new wxBitmapRefData(*data);
|
||||
}
|
||||
|
||||
wxBitmapRefData * const
|
||||
selfdata = wx_static_cast(wxBitmapRefData *, m_refData);
|
||||
|
||||
// copy also the mask
|
||||
wxMask * const maskSrc = data->GetMask();
|
||||
if ( maskSrc )
|
||||
{
|
||||
wxBitmapRefData *selfdata = wx_static_cast(wxBitmapRefData *, m_refData);
|
||||
|
||||
selfdata->SetMask(new wxMask(*maskSrc));
|
||||
}
|
||||
|
||||
return m_refData;
|
||||
return selfdata;
|
||||
}
|
||||
|
||||
bool wxBitmap::CopyFromIconOrCursor(const wxGDIImage& icon,
|
||||
|
Reference in New Issue
Block a user