restored wxEnhMetaFileDC::Close() lost in wxDC reorganization

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51258 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2008-01-17 00:31:33 +00:00
parent 1342e47ccb
commit 0273787aba
2 changed files with 31 additions and 15 deletions

View File

@ -87,6 +87,10 @@ public:
int width = 0, int height = 0,
const wxString& description = wxEmptyString);
// obtain a pointer to the new metafile (caller should delete it)
wxEnhMetaFile *Close();
private:
DECLARE_DYNAMIC_CLASS_NO_COPY(wxEnhMetaFileDC)
};

View File

@ -209,7 +209,7 @@ bool wxEnhMetaFile::SetClipboard(int WXUNUSED(width), int WXUNUSED(height))
}
// ----------------------------------------------------------------------------
// wxEnhMetaFileDC
// wxEnhMetaFileDCImpl
// ----------------------------------------------------------------------------
class wxEnhMetaFileDCImpl : public wxMSWDCImpl
@ -233,24 +233,11 @@ private:
};
IMPLEMENT_ABSTRACT_CLASS(wxEnhMetaFileDC, wxDC)
wxEnhMetaFileDC::wxEnhMetaFileDC(const wxString& filename,
int width, int height,
const wxString& description)
: wxDC(new wxEnhMetaFileDCImpl(this,
filename,
width, height,
description))
{
}
wxEnhMetaFileDCImpl::wxEnhMetaFileDCImpl( wxEnhMetaFileDC* owner,
const wxString& filename,
int width, int height,
const wxString& description )
: wxMSWDCImpl( owner )
: wxMSWDCImpl( owner )
{
m_width = width;
m_height = height;
@ -315,6 +302,31 @@ wxEnhMetaFileDCImpl::~wxEnhMetaFileDCImpl()
m_hDC = 0;
}
// ----------------------------------------------------------------------------
// wxEnhMetaFileDC
// ----------------------------------------------------------------------------
IMPLEMENT_ABSTRACT_CLASS(wxEnhMetaFileDC, wxDC)
wxEnhMetaFileDC::wxEnhMetaFileDC(const wxString& filename,
int width, int height,
const wxString& description)
: wxDC(new wxEnhMetaFileDCImpl(this,
filename,
width, height,
description))
{
}
wxEnhMetaFile *wxEnhMetaFileDC::Close()
{
wxEnhMetaFileDCImpl * const
impl = wx_static_cast(wxEnhMetaFileDCImpl *, GetImpl());
wxCHECK_MSG( impl, NULL, _T("no wxEnhMetaFileDC implementation") );
return impl->Close();
}
#if wxUSE_DRAG_AND_DROP
// ----------------------------------------------------------------------------