/////////////////////////////////////////////////////////////////////////////
-// Name: src/mac/carbon/metafile.cpp
+// Name: src/osx/carbon/metafile.cpp
// Purpose: wxMetaFile, wxMetaFileDC etc. These classes are optional.
// Author: Stefan Csomor
// Modified by:
#include "wx/metafile.h"
#include "wx/clipbrd.h"
-#include "wx/osx/uma.h"
+#include "wx/osx/private.h"
#include "wx/graphics.h"
-#include "wx/osx/carbon/metafile.h"
+#include "wx/osx/metafile.h"
#include <stdio.h>
#include <string.h>
int m_width ;
int m_height ;
+
+
+ // Our m_pdfDoc field can't be easily (deep) copied and so we don't define a
+ // copy ctor.
+ wxDECLARE_NO_COPY_CLASS(wxMetafileRefData);
};
wxMetafileRefData::wxMetafileRefData(CFDataRef data) :
{
CGPDFPageRef page = CGPDFDocumentGetPage( m_pdfDoc, 1 );
CGRect rect = CGPDFPageGetBoxRect ( page, kCGPDFMediaBox);
- m_width = wx_static_cast(int, rect.size.width);
- m_height = wx_static_cast(int, rect.size.height);
+ m_width = static_cast<int>(rect.size.width);
+ m_height = static_cast<int>(rect.size.height);
}
}
return new wxMetafileRefData;
}
-wxGDIRefData *wxMetaFile::CloneGDIRefData(const wxGDIRefData *data) const
+wxGDIRefData *
+wxMetaFile::CloneGDIRefData(const wxGDIRefData * WXUNUSED(data)) const
{
- return new wxMetafileRefData(*wx_static_cast(const wxMetafileRefData *, data));
+ wxFAIL_MSG( wxS("Cloning metafiles is not implemented in wxCarbon.") );
+
+ return new wxMetafileRefData;
}
WXHMETAFILE wxMetaFile::GetHMETAFILE() const
m_refData = new wxMetafileRefData((CFDataRef)mf);
}
-#ifndef __LP64__
-void wxMetafile::SetPICT(void* pictHandle)
-{
- UnRef();
-
- Handle picHandle = (Handle) pictHandle;
- HLock(picHandle);
- CFDataRef data = CFDataCreateWithBytesNoCopy( kCFAllocatorDefault, (const UInt8*) *picHandle, GetHandleSize(picHandle), kCFAllocatorNull);
- wxCFRef<CGDataProviderRef> provider(wxMacCGDataProviderCreateWithCFData(data));
- QDPictRef pictRef = QDPictCreateWithProvider(provider);
- CGRect rect = QDPictGetBounds(pictRef);
- m_refData = new wxMetafileRefData(wx_static_cast(int, rect.size.width),
- wx_static_cast(int, rect.size.height));
- QDPictDrawToCGContext( ((wxMetafileRefData*) m_refData)->GetContext(), rect, pictRef );
- CFRelease( data );
- QDPictRelease( pictRef );
- ((wxMetafileRefData*) m_refData)->Close();
-}
-#endif
-
bool wxMetaFile::Play(wxDC *dc)
{
if (!m_refData)
{
wxSize dataSize = wxDefaultSize;
- if (Ok())
+ if (IsOk())
{
dataSize.x = M_METAFILEDATA->GetWidth();
dataSize.y = M_METAFILEDATA->GetHeight();
wxMetaFile *wxMetafileDCImpl::Close()
{
- delete m_graphicContext;
- m_graphicContext = NULL;
+ wxDELETE(m_graphicContext);
m_ok = false;
M_METAFILEREFDATA(*m_metaFile)->Close();