From d2ce59e9bb71dbe7a01d96ec3df158e626aaa145 Mon Sep 17 00:00:00 2001 From: Stefan Neis <Stefan.Neis@t-online.de> Date: Sat, 12 Jan 2008 14:31:29 +0000 Subject: [PATCH] Blind compilation fixes. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51175 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/msw/metafile.h | 20 ++++++++++++-------- src/msw/metafile.cpp | 25 ++++++++++++++----------- 2 files changed, 26 insertions(+), 19 deletions(-) diff --git a/include/wx/msw/metafile.h b/include/wx/msw/metafile.h index a74416887e..341b1ce3b8 100644 --- a/include/wx/msw/metafile.h +++ b/include/wx/msw/metafile.h @@ -69,6 +69,10 @@ public: int GetWindowsMappingMode() const { return M_METAFILEDATA->m_windowsMappingMode; } void SetWindowsMappingMode(int mm); +protected: + virtual wxGDIRefData *CreateGDIRefData() const; + virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const; + private: DECLARE_DYNAMIC_CLASS(wxMetafile) }; @@ -76,8 +80,9 @@ private: class WXDLLEXPORT wxMetafileDCImpl: public wxMSWDCImpl { public: - wxMetafileDCImpl(const wxString& file = wxEmptyString); - wxMetafileDC(const wxString& file, int xext, int yext, int xorg, int yorg); + wxMetafileDCImpl(wxDC *owner, const wxString& file = wxEmptyString); + wxMetafileDCImpl(wxDC *owner, const wxString& file, + int xext, int yext, int xorg, int yorg); virtual ~wxMetafileDCImpl(); virtual wxMetafile *Close(); @@ -97,9 +102,6 @@ public: protected: virtual void DoGetSize(int *width, int *height) const; - virtual wxGDIRefData *CreateGDIRefData() const; - virtual wxGDIRefData *CloneGDIRefData(const wxGDIRefData *data) const; - int m_windowsMappingMode; wxMetafile* m_metaFile; @@ -113,13 +115,15 @@ class WXDLLEXPORT wxMetafileDC: public wxDC public: // Don't supply origin and extent // Supply them to wxMakeMetaFilePlaceable instead. - wxMetafileDC(const wxString& file); - { m_pimpl = new wxMetafileDCImpl( this, file ); } + wxMetafileDC(const wxString& file) + : wxDC(new wxMetafileDCImpl( this, file )) + { } // Supply origin and extent (recommended). // Then don't need to supply them to wxMakeMetaFilePlaceable. wxMetafileDC(const wxString& file, int xext, int yext, int xorg, int yorg) - { m_pimpl = new wxMetafileDCImpl( this, file, xext, yext, xorg, yorg ); } + : wxDC(new wxMetafileDCImpl( this, file, xext, yext, xorg, yorg )) + { } wxMetafile *GetMetafile() const { return ((wxMetafileDCImpl*)m_pimpl)->GetMetaFile(); } diff --git a/src/msw/metafile.cpp b/src/msw/metafile.cpp index 3076145d20..7152568160 100644 --- a/src/msw/metafile.cpp +++ b/src/msw/metafile.cpp @@ -101,7 +101,7 @@ wxGDIRefData *wxMetafile::CreateGDIRefData() const wxGDIRefData *wxMetafile::CloneGDIRefData(const wxGDIRefData *data) const { - return new wxMetafileRefData(wx_static_cast(wxMetafileRefData *, data)); + return new wxMetafileRefData(*wx_static_cast(const wxMetafileRefData *, data)); } bool wxMetafile::SetClipboard(int width, int height) @@ -166,7 +166,8 @@ void wxMetafile::SetWindowsMappingMode(int mm) // Original constructor that does not takes origin and extent. If you use this, // *DO* give origin/extent arguments to wxMakeMetafilePlaceable. -wxMetafileDC::wxMetafileDC(const wxString& file) +wxMetafileDCImpl::wxMetafileDCImpl(wxDC *owner, const wxString& file) + : wxMSWDCImpl(owner) { m_metaFile = NULL; m_minX = 10000; @@ -193,7 +194,9 @@ wxMetafileDC::wxMetafileDC(const wxString& file) // New constructor that takes origin and extent. If you use this, don't // give origin/extent arguments to wxMakeMetafilePlaceable. -wxMetafileDC::wxMetafileDC(const wxString& file, int xext, int yext, int xorg, int yorg) +wxMetafileDCImpl::wxMetafileDCImpl(wxDC *owner, const wxString& file, + int xext, int yext, int xorg, int yorg) + : wxMSWDCImpl(owner) { m_minX = 10000; m_minY = 10000; @@ -214,15 +217,15 @@ wxMetafileDC::wxMetafileDC(const wxString& file, int xext, int yext, int xorg, i SetMapMode(wxMM_TEXT); // NOTE: does not set HDC mapmode (this is correct) } -wxMetafileDC::~wxMetafileDC() +wxMetafileDCImpl::~wxMetafileDCImpl() { m_hDC = 0; } -void wxMetafileDC::DoGetTextExtent(const wxString& string, - wxCoord *x, wxCoord *y, - wxCoord *descent, wxCoord *externalLeading, - const wxFont *theFont) const +void wxMetafileDCImpl::DoGetTextExtent(const wxString& string, + wxCoord *x, wxCoord *y, + wxCoord *descent, wxCoord *externalLeading, + const wxFont *theFont) const { const wxFont *fontToUse = theFont; if (!fontToUse) @@ -246,7 +249,7 @@ void wxMetafileDC::DoGetTextExtent(const wxString& string, *externalLeading = tm.tmExternalLeading; } -void wxMetafileDC::DoGetSize(int *width, int *height) const +void wxMetafileDCImpl::DoGetSize(int *width, int *height) const { wxCHECK_RET( m_refData, _T("invalid wxMetafileDC") ); @@ -256,7 +259,7 @@ void wxMetafileDC::DoGetSize(int *width, int *height) const *height = M_METAFILEDATA->m_height; } -wxMetafile *wxMetafileDC::Close() +wxMetafile *wxMetafileDCImpl::Close() { SelectOldObjects(m_hDC); HANDLE mf = CloseMetaFile((HDC) m_hDC); @@ -271,7 +274,7 @@ wxMetafile *wxMetafileDC::Close() return NULL; } -void wxMetafileDC::SetMapMode(int mode) +void wxMetafileDCImpl::SetMapMode(int mode) { m_mappingMode = mode; -- 2.45.2