diff --git a/include/wx/bmpbndl.h b/include/wx/bmpbndl.h index ef2e8dde2d..924b99bcf5 100644 --- a/include/wx/bmpbndl.h +++ b/include/wx/bmpbndl.h @@ -63,6 +63,8 @@ public: // form name_2x or name@2x (and also using other factors) will be used. static wxBitmapBundle FromResources(const wxString& name); + // Create from existing implementation + static wxBitmapBundle FromImpl(wxBitmapBundleImpl* impl); // Check if bitmap bundle is non-empty. bool IsOk() const { return m_impl; } @@ -77,6 +79,9 @@ public: // If size == wxDefaultSize, GetDefaultSize() is used for it instead. wxBitmap GetBitmap(const wxSize size) const; + // Access implementation + wxBitmapBundleImpl* GetImpl() const { return m_impl.get(); } + private: typedef wxObjectDataPtr wxBitmapBundleImplPtr; diff --git a/src/common/bmpbndl.cpp b/src/common/bmpbndl.cpp index 2e926f352c..709fca8009 100644 --- a/src/common/bmpbndl.cpp +++ b/src/common/bmpbndl.cpp @@ -244,6 +244,13 @@ wxBitmapBundle wxBitmapBundle::FromBitmaps(const wxVector& bitmaps) return wxBitmapBundle(new wxBitmapBundleImplSet(bitmaps)); } +/* static */ +wxBitmapBundle wxBitmapBundle::FromImpl(wxBitmapBundleImpl* impl) +{ + return wxBitmapBundle(impl); +} + + // MSW has its own, actually working, version, in MSW-specific code. #ifndef __WXMSW__