]> git.saurik.com Git - wxWidgets.git/blobdiff - src/generic/dcpsg.cpp
compilation fix
[wxWidgets.git] / src / generic / dcpsg.cpp
index fc713f7ca2cc017029bd39360d540893a95973ec..5f785feac96ca8941f3aee0d1922b376175df3a2 100644 (file)
@@ -5,7 +5,7 @@
 // Modified by:
 // Created:     04/01/98
 // RCS-ID:      $Id$
-// Copyright:   (c) Julian Smart and Markus Holzem
+// Copyright:   (c) Julian Smart
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
@@ -1745,7 +1745,7 @@ bool wxPostScriptDC::StartDoc( const wxString& message )
     
     // fprintf( m_pstream, "%%%%Pages: %d\n", (wxPageNumber - 1) );
     
-    char *paper = "A4";
+    const char *paper;
     switch (m_printData.GetPaperId())
     {
        case wxPAPER_LETTER: paper = "Letter"; break;             // Letter: paper ""; 8 1/2 by 11 inches
@@ -1881,6 +1881,8 @@ void wxPostScriptDC::EndDoc ()
         wxString command;
         command += m_printData.GetPrinterCommand();
         command += wxT(" ");
+        command += m_printData.GetPrinterOptions();
+        command += wxT(" ");
         command += m_printData.GetFilename();
 
         wxExecute( command, TRUE );
@@ -1988,6 +1990,8 @@ void wxPostScriptDC::DoGetTextExtent(const wxString& string,
     {
         if (x) (*x) = 0;
         if (y) (*y) = 0;
+        if (descent) (*descent) = 0;
+        if (externalLeading) (*externalLeading) = 0;
         return;
     }
     
@@ -2282,13 +2286,15 @@ void wxPostScriptDC::DoGetTextExtent(const wxString& string,
            /  the correct way would be to map the character names
            /  like 'adieresis' to corresp. positions of ISOEnc and read
            /  these values from AFM files, too. Maybe later ... */
-        lastWidths[196] = lastWidths['A'];  // Ä
-        lastWidths[228] = lastWidths['a'];  // ä
-        lastWidths[214] = lastWidths['O'];  // Ö
-        lastWidths[246] = lastWidths['o'];  // ö
-        lastWidths[220] = lastWidths['U'];  // Ü
-        lastWidths[252] = lastWidths['u'];  // ü
-        lastWidths[223] = lastWidths[251];  // ß
+
+        // NB: casts to int are needed to suppress gcc 3.3 warnings
+        lastWidths[196] = lastWidths[(int)'A'];  // Ä
+        lastWidths[228] = lastWidths[(int)'a'];  // ä
+        lastWidths[214] = lastWidths[(int)'O'];  // Ö
+        lastWidths[246] = lastWidths[(int)'o'];  // ö
+        lastWidths[220] = lastWidths[(int)'U'];  // Ü
+        lastWidths[252] = lastWidths[(int)'u'];  // ü
+        lastWidths[223] = lastWidths[(int)251];  // ß
 
         /* JC: calculate UnderlineThickness/UnderlinePosition */