]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/metafile.cpp
an assert added to check that we're not doing something stupid
[wxWidgets.git] / src / msw / metafile.cpp
index 4a7b28900fcd01cb4e7c4d5c5c8efa167e6c3136..0d4a30f506b979a778f63ca25fba0e1a843ffd34 100644 (file)
@@ -72,7 +72,7 @@ wxMetafile::wxMetafile(const wxString& file)
 
     M_METAFILEDATA->m_windowsMappingMode = wxMM_ANISOTROPIC;
     M_METAFILEDATA->m_metafile = 0;
-    if (!file.IsNull() && (file.Cmp("") == 0))
+    if (!file.IsNull() && (file.Cmp(_T("")) == 0))
         M_METAFILEDATA->m_metafile = (WXHANDLE) GetMetaFile(file);
 }
 
@@ -146,7 +146,7 @@ wxMetafileDC::wxMetafileDC(const wxString& file)
   if (!file.IsNull() && wxFileExists(file))
     wxRemoveFile(file);
 
-  if (!file.IsNull() && (file != ""))
+  if (!file.IsNull() && (file != _T("")))
     m_hDC = (WXHDC) CreateMetaFile(file);
   else
     m_hDC = (WXHDC) CreateMetaFile(NULL);
@@ -167,7 +167,7 @@ wxMetafileDC::wxMetafileDC(const wxString& file, int xext, int yext, int xorg, i
   m_minY = 10000;
   m_maxX = -10000;
   m_maxY = -10000;
-  if (file != "" && wxFileExists(file)) wxRemoveFile(file);
+  if (file != _T("") && wxFileExists(file)) wxRemoveFile(file);
   m_hDC = (WXHDC) CreateMetaFile(file);
 
   m_ok = TRUE;
@@ -197,15 +197,19 @@ void wxMetafileDC::GetTextExtent(const wxString& string, long *x, long *y,
 
   SIZE sizeRect;
   TEXTMETRIC tm;
-  GetTextExtentPoint(dc, (char *)(const char *) string, strlen((char *)(const char *) string), &sizeRect);
+  GetTextExtentPoint(dc, WXSTRINGCAST string, wxStrlen(WXSTRINGCAST string), &sizeRect);
   GetTextMetrics(dc, &tm);
 
   ReleaseDC(NULL, dc);
 
-  *x = XDEV2LOGREL(sizeRect.cx);
-  *y = YDEV2LOGREL(sizeRect.cy);
-  if (descent) *descent = tm.tmDescent;
-  if (externalLeading) *externalLeading = tm.tmExternalLeading;
+  if ( x )
+      *x = sizeRect.cx;
+  if ( y )
+    *y = sizeRect.cy;
+  if ( descent )
+      *descent = tm.tmDescent;
+  if ( externalLeading )
+      *externalLeading = tm.tmExternalLeading;
 }
 
 wxMetafile *wxMetafileDC::Close(void)
@@ -336,12 +340,12 @@ bool wxMakeMetafilePlaceable(const wxString& filename, int x1, int y1, int x2, i
        p < (WORD *)&pMFHead ->checksum; ++p)
        pMFHead ->checksum ^= *p;
 
-  FILE *fd = fopen((char *)(const char *)filename, "rb");
+  FILE *fd = fopen(filename.mb_str(wxConvFile), "rb");
   if (!fd) return FALSE;
   
-  char tempFileBuf[256];
-  wxGetTempFileName("mf", tempFileBuf);
-  FILE *fHandle = fopen(tempFileBuf, "wb");
+  wxChar tempFileBuf[256];
+  wxGetTempFileName(_T("mf"), tempFileBuf);
+  FILE *fHandle = fopen(wxConvFile.cWX2MB(tempFileBuf), "wb");
   if (!fHandle)
     return FALSE;
   fwrite((void *)&header, sizeof(unsigned char), sizeof(mfPLACEABLEHEADER), fHandle);