]> git.saurik.com Git - wxWidgets.git/blobdiff - src/osx/carbon/metafile.cpp
Explicitly set "C" locale for the tests using decimal point.
[wxWidgets.git] / src / osx / carbon / metafile.cpp
index a671b772b5b377c0e72e32a16f0756fe78906a87..6e8905e6b41758dd6966ab2d51ed46bb9d705132 100644 (file)
@@ -26,7 +26,7 @@
 #include "wx/clipbrd.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>
@@ -76,6 +76,11 @@ private:
 
     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) :
@@ -156,8 +161,8 @@ void wxMetafileRefData::UpdateDocumentFromData()
     {
         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);
     }
 }
 
@@ -175,9 +180,12 @@ wxGDIRefData *wxMetaFile::CreateGDIRefData() const
     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
@@ -216,7 +224,7 @@ void wxMetafile::SetHMETAFILE(WXHMETAFILE mf)
     m_refData = new wxMetafileRefData((CFDataRef)mf);
 }
 
-#ifndef __LP64__
+#if wxOSX_USE_COCOA_OR_CARBON && !defined( __LP64__ )
 void wxMetafile::SetPICT(void* pictHandle)
 {
     UnRef();
@@ -227,8 +235,8 @@ void wxMetafile::SetPICT(void* pictHandle)
     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));
+    m_refData = new wxMetafileRefData(static_cast<int>(rect.size.width),
+                                      static_cast<int>(rect.size.height));
     QDPictDrawToCGContext( ((wxMetafileRefData*) m_refData)->GetContext(), rect, pictRef );
     CFRelease( data );
     QDPictRelease( pictRef );
@@ -318,8 +326,7 @@ void wxMetafileDCImpl::DoGetSize(int *width, int *height) const
 
 wxMetaFile *wxMetafileDCImpl::Close()
 {
-    delete m_graphicContext;
-    m_graphicContext = NULL;
+    wxDELETE(m_graphicContext);
     m_ok = false;
 
     M_METAFILEREFDATA(*m_metaFile)->Close();