]> git.saurik.com Git - wxWidgets.git/blobdiff - src/msw/dcprint.cpp
Initial revision
[wxWidgets.git] / src / msw / dcprint.cpp
index 0ec356c405da14b10e22cc1020e66c4097a1ae6c..35c9be54be32ce76eb13192b1646ca4b576b6857 100644 (file)
 #include <print.h>
 #endif
 
-#if !USE_SHARED_LIBRARY
 IMPLEMENT_CLASS(wxPrinterDC, wxDC)
-#endif
 
 // This form is deprecated
 wxPrinterDC::wxPrinterDC(const wxString& driver_name, const wxString& device_name, const wxString& file, bool interactive, int orientation)
 {
     m_isInteractive = interactive;
-    
-    if (!file.IsNull() && file != T(""))
+
+    if (!file.IsNull() && file != wxT(""))
         m_printData.SetFilename(file);
-    
+
 #if wxUSE_COMMON_DIALOGS
     if (interactive)
     {
         PRINTDLG pd;
-        
+
         pd.lStructSize = sizeof( PRINTDLG );
         pd.hwndOwner=(HWND) NULL;
         pd.hDevMode=(HANDLE)NULL;
@@ -66,7 +64,7 @@ wxPrinterDC::wxPrinterDC(const wxString& driver_name, const wxString& device_nam
         pd.nMaxPage=0;
         pd.nCopies=1;
         pd.hInstance=(HINSTANCE)NULL;
-        
+
         if ( PrintDlg( &pd ) != 0 )
         {
             m_hDC = (WXHDC) pd.hDC;
@@ -77,14 +75,14 @@ wxPrinterDC::wxPrinterDC(const wxString& driver_name, const wxString& device_nam
             m_ok = FALSE;
             return;
         }
-        
+
         //     m_dontDelete = TRUE;
     }
     else
 #endif
-        if ((!driver_name.IsNull() && driver_name != T("")) &&
-            (!device_name.IsNull() && device_name != T("")) &&
-            (!file.IsNull() && file != T("")))
+        if ((!driver_name.IsNull() && driver_name != wxT("")) &&
+            (!device_name.IsNull() && device_name != wxT("")) &&
+            (!file.IsNull() && file != wxT("")))
         {
             m_hDC = (WXHDC) CreateDC(WXSTRINGCAST driver_name, WXSTRINGCAST device_name, WXSTRINGCAST file, NULL);
             m_ok = m_hDC ? TRUE: FALSE;
@@ -96,7 +94,7 @@ wxPrinterDC::wxPrinterDC(const wxString& driver_name, const wxString& device_nam
             m_hDC = wxGetPrinterDC(printData);
             m_ok = m_hDC ? TRUE: FALSE;
         }
-        
+
         if (m_hDC)
         {
             //     int width = GetDeviceCaps(m_hDC, VERTRES);
@@ -115,10 +113,10 @@ wxPrinterDC::wxPrinterDC(const wxPrintData& printData)
 
     m_hDC = wxGetPrinterDC(printData);
     m_ok = (m_hDC != 0);
-    
+
     if (m_hDC)
         SetMapMode(wxMM_TEXT);
-    
+
     SetBrush(*wxBLACK_BRUSH);
     SetPen(*wxBLACK_PEN);
 }
@@ -127,7 +125,7 @@ wxPrinterDC::wxPrinterDC(const wxPrintData& printData)
 wxPrinterDC::wxPrinterDC(WXHDC theDC)
 {
     m_isInteractive = FALSE;
-    
+
     m_hDC = theDC;
     m_ok = TRUE;
     if (m_hDC)
@@ -161,10 +159,10 @@ bool wxPrinterDC::StartDoc(const wxString& message)
     docinfo.lpszDatatype = NULL;
     docinfo.fwType = 0;
 #endif
-    
+
     if (!m_hDC)
         return FALSE;
-    
+
     int ret =
 #ifndef __WIN32__
         ::StartDoc((HDC) m_hDC, &docinfo);
@@ -179,15 +177,15 @@ bool wxPrinterDC::StartDoc(const wxString& message)
 #endif
 #endif
 #endif
-    
+
 #ifndef __WIN16__
     if (ret <= 0)
     {
         DWORD lastError = GetLastError();
-        wxLogDebug(T("wxDC::StartDoc failed with error: %d\n"), lastError);
+        wxLogDebug(wxT("wxDC::StartDoc failed with error: %d\n"), lastError);
     }
 #endif
-    
+
     return (ret > 0);
 }
 
@@ -217,7 +215,7 @@ static bool wxGetDefaultDeviceName(wxString& deviceName, wxString& portName)
     LPSTR       lpszDriverName;
     LPSTR       lpszDeviceName;
     LPSTR       lpszPortName;
-    
+
     PRINTDLG    pd;
 
     // Cygwin has trouble believing PRINTDLG is 66 bytes - thinks it is 68
@@ -232,37 +230,38 @@ static bool wxGetDefaultDeviceName(wxString& deviceName, wxString& portName)
     pd.hDevNames      = NULL; // Ditto
     pd.Flags          = PD_RETURNDEFAULT;
     pd.nCopies        = 1;
-    
+
     if (!PrintDlg((LPPRINTDLG)&pd))
     {
         if ( pd.hDevMode )
             GlobalFree(pd.hDevMode);
         if (pd.hDevNames)
             GlobalFree(pd.hDevNames);
-        
+
         return FALSE;
     }
-    
+
     if (pd.hDevNames)
     {
         lpDevNames = (LPDEVNAMES)GlobalLock(pd.hDevNames);
         lpszDriverName = (LPSTR)lpDevNames + lpDevNames->wDriverOffset;
         lpszDeviceName = (LPSTR)lpDevNames + lpDevNames->wDeviceOffset;
         lpszPortName   = (LPSTR)lpDevNames + lpDevNames->wOutputOffset;
-        GlobalUnlock(pd.hDevNames);
-        GlobalFree(pd.hDevNames);
-        pd.hDevNames=NULL;
 
         deviceName = lpszDeviceName;
         portName = lpszPortName;
+
+        GlobalUnlock(pd.hDevNames);
+        GlobalFree(pd.hDevNames);
+        pd.hDevNames=NULL;
     }
-    
+
     if (pd.hDevMode)
     {
         GlobalFree(pd.hDevMode);
         pd.hDevMode=NULL;
     }
-    return ( deviceName != T("") );
+    return ( deviceName != wxT("") );
 }
 
 #if 0
@@ -276,7 +275,7 @@ WXHDC wxGetPrinterDC(int orientation)
     LPSTR       lpszDriverName;
     LPSTR       lpszDeviceName;
     LPSTR       lpszPortName;
-    
+
     PRINTDLG    pd;
     // __GNUWIN32__ has trouble believing PRINTDLG is 66 bytes - thinks it is 68
 #ifdef __GNUWIN32__
@@ -289,45 +288,45 @@ WXHDC wxGetPrinterDC(int orientation)
     pd.hDevNames      = NULL; // Ditto
     pd.Flags          = PD_RETURNDEFAULT;
     pd.nCopies        = 1;
-    
+
     if (!PrintDlg((LPPRINTDLG)&pd))
     {
         if ( pd.hDevMode )
             GlobalFree(pd.hDevMode);
         if (pd.hDevNames)
             GlobalFree(pd.hDevNames);
-        
+
         return(0);
     }
-    
+
     if (!pd.hDevNames)
     {
         if ( pd.hDevMode )
             GlobalFree(pd.hDevMode);
     }
-    
+
     lpDevNames = (LPDEVNAMES)GlobalLock(pd.hDevNames);
     lpszDriverName = (LPSTR)lpDevNames + lpDevNames->wDriverOffset;
     lpszDeviceName = (LPSTR)lpDevNames + lpDevNames->wDeviceOffset;
     lpszPortName   = (LPSTR)lpDevNames + lpDevNames->wOutputOffset;
     GlobalUnlock(pd.hDevNames);
-    
+
     if ( pd.hDevMode )
     {
         lpDevMode = (DEVMODE*) GlobalLock(pd.hDevMode);
         lpDevMode->dmOrientation = orientation;
         lpDevMode->dmFields |= DM_ORIENTATION;
     }
-    
+
 #ifdef __WIN32__
     hDC = CreateDC(lpszDriverName, lpszDeviceName, lpszPortName, (DEVMODE *)lpDevMode);
 #else
     hDC = CreateDC(lpszDriverName, lpszDeviceName, lpszPortName, (LPSTR)lpDevMode);
 #endif
-    
+
     if (pd.hDevMode && lpDevMode)
         GlobalUnlock(pd.hDevMode);
-    
+
     if (pd.hDevNames)
     {
         GlobalFree(pd.hDevNames);
@@ -347,14 +346,14 @@ WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& printDataConst)
 {
     wxPrintData printData = printDataConst;
     printData.ConvertToNative();
-    
+
     wxChar* driverName = (wxChar*) NULL;
-    
+
     wxString devNameStr = printData.GetPrinterName();
     wxChar* deviceName;
     wxChar* portName = (wxChar*) NULL; // Obsolete in WIN32
-    
-    if (devNameStr == T(""))
+
+    if (devNameStr == wxT(""))
         deviceName = (wxChar*) NULL;
     else
         deviceName = WXSTRINGCAST devNameStr;
@@ -366,26 +365,31 @@ WXHDC WXDLLEXPORT wxGetPrinterDC(const wxPrintData& printDataConst)
     if ( hDevMode )
         lpDevMode = (DEVMODE*) GlobalLock(hDevMode);
 
-    if (devNameStr == T(""))
+    if (devNameStr == wxT(""))
     {
         // Retrieve the default device name
         wxString portName;
-        bool ret = wxGetDefaultDeviceName(devNameStr, portName);
+#ifdef  __WXDEBUG__
+        bool ret =
+#else   // !Debug
+        (void)
+#endif // Debug/Release
+        wxGetDefaultDeviceName(devNameStr, portName);
 
-        wxASSERT_MSG( ret, T("Could not get default device name.") );
+        wxASSERT_MSG( ret, wxT("Could not get default device name.") );
 
         deviceName = WXSTRINGCAST devNameStr;
     }
-    
+
 #ifdef __WIN32__
     HDC hDC = CreateDC(driverName, deviceName, portName, (DEVMODE *) lpDevMode);
 #else
     HDC hDC = CreateDC(driverName, deviceName, portName, (LPSTR) lpDevMode);
 #endif
-    
+
     if (hDevMode && lpDevMode)
         GlobalUnlock(hDevMode);
-    
+
     return (WXHDC) hDC;
 }