]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/postscrp.cpp
* Fixed two memory leaks.
[wxWidgets.git] / src / common / postscrp.cpp
index 84f5daeaf5c1b123fe25609de4e70d8c7572a15c..e8e5b5bef19f473a6abd60bdcc1ef45188dddd22 100644 (file)
@@ -44,7 +44,7 @@
 
 #include "wx/dcmemory.h"
 
 
 #include "wx/dcmemory.h"
 
-#ifdef __WINDOWS__
+#ifdef __WXMSW__
 #include "wx/msw/private.h"
 #endif
 
 #include "wx/msw/private.h"
 #endif
 
@@ -62,7 +62,7 @@
 #include <limits.h>
 #include <assert.h>
 
 #include <limits.h>
 #include <assert.h>
 
-#ifdef __GTK__
+#ifdef __WXGTK__
 
 #include "gdk/gdkx.h"        // GDK_DISPLAY
 #include "gdk/gdkprivate.h"  // XImage
 
 #include "gdk/gdkx.h"        // GDK_DISPLAY
 #include "gdk/gdkprivate.h"  // XImage
@@ -71,7 +71,7 @@
 
 #endif
 
 
 #endif
 
-#ifdef __WINDOWS__
+#ifdef __WXMSW__
 
 #ifdef DrawText
 #undef DrawText
 
 #ifdef DrawText
 #undef DrawText
 // SGI's Display Postscript Previewer
 //# define PS_VIEWER_PROG "dps"
 # define PS_VIEWER_PROG "xpsview"
 // SGI's Display Postscript Previewer
 //# define PS_VIEWER_PROG "dps"
 # define PS_VIEWER_PROG "xpsview"
-#elif defined(__X__) || defined(__GTK__)
+#elif defined(__X__) || defined(__WXGTK__)
 // Front-end to ghostscript
 # define PS_VIEWER_PROG "ghostview"
 #else
 // Front-end to ghostscript
 # define PS_VIEWER_PROG "ghostview"
 #else
 # define PS_VIEWER_PROG NULL
 #endif
 
 # define PS_VIEWER_PROG NULL
 #endif
 
-wxPrintSetupData *wxThePrintSetupData = NULL;
+wxPrintSetupData *wxThePrintSetupData = (wxPrintSetupData *) NULL;
 
 // these should move into wxPostscriptDC:
 double UnderlinePosition = 0.0F;
 
 // these should move into wxPostscriptDC:
 double UnderlinePosition = 0.0F;
@@ -141,7 +141,7 @@ static const char *wxPostScriptHeaderSpline = " \
 ";
 #else
 // No extra PS header for this spline implementation.
 ";
 #else
 // No extra PS header for this spline implementation.
-static const char *wxPostScriptHeaderSpline = NULL;
+static const char *wxPostScriptHeaderSpline = (char *) NULL;
 
 #endif /* USE_XFIG_SPLINE_CODE */
 
 
 #endif /* USE_XFIG_SPLINE_CODE */
 
@@ -173,9 +173,9 @@ wxPostScriptDC::wxPostScriptDC (void)
   m_maxY = -1000;
   m_title = "";
 
   m_maxY = -1000;
   m_title = "";
 
-  m_pstream = NULL;
+  m_pstream = (ofstream *) NULL;
 
 
-#ifdef __WINDOWS__
+#ifdef __WXMSW__
   // Can only send to file in Windows
   wxThePrintSetupData->SetPrinterMode(PS_FILE);
 #endif
   // Can only send to file in Windows
   wxThePrintSetupData->SetPrinterMode(PS_FILE);
 #endif
@@ -203,9 +203,9 @@ bool wxPostScriptDC::Create(const wxString& file, bool interactive, wxWindow *pa
   m_maxY = -1000;
   m_title = "";
   m_filename = file;
   m_maxY = -1000;
   m_title = "";
   m_filename = file;
-  m_pstream = NULL;
+  m_pstream = (ofstream *) NULL;
 
 
-#ifdef __WINDOWS__
+#ifdef __WXMSW__
   // Can only send to file in Windows
   wxThePrintSetupData->SetPrinterMode(PS_FILE);
 #endif
   // Can only send to file in Windows
   wxThePrintSetupData->SetPrinterMode(PS_FILE);
 #endif
@@ -234,7 +234,7 @@ wxPostScriptDC::~wxPostScriptDC (void)
 
 bool wxPostScriptDC::PrinterDialog(wxWindow *parent)
 {
 
 bool wxPostScriptDC::PrinterDialog(wxWindow *parent)
 {
-  wxPostScriptPrintDialog dialog (parent, "Printer Settings", wxPoint(150, 150), wxSize(400, 400), wxDEFAULT_DIALOG_STYLE | wxDIALOG_MODAL);
+  wxPostScriptPrintDialog dialog (parent, _("Printer Settings"), wxPoint(150, 150), wxSize(400, 400), wxDEFAULT_DIALOG_STYLE | wxDIALOG_MODAL);
   m_ok = (dialog.ShowModal () == wxID_OK) ;
 
   if (!m_ok)
   m_ok = (dialog.ShowModal () == wxID_OK) ;
 
   if (!m_ok)
@@ -264,7 +264,7 @@ bool wxPostScriptDC::PrinterDialog(wxWindow *parent)
     }
     else if ((m_filename == "") && (wxThePrintSetupData->GetPrinterMode() == PS_FILE))
     {
     }
     else if ((m_filename == "") && (wxThePrintSetupData->GetPrinterMode() == PS_FILE))
     {
-      char *file = wxSaveFileSelector ("PostScript", "ps");
+      char *file = wxSaveFileSelector (_("PostScript"), "ps");
       if (!file)
       {
         m_ok = FALSE;
       if (!file)
       {
         m_ok = FALSE;
@@ -669,7 +669,7 @@ void wxPostScriptDC::DrawEllipse (long x, long y, long width, long height)
 
 void wxPostScriptDC::DrawIcon (const wxIcon& icon, long x, long y)
 {
 
 void wxPostScriptDC::DrawIcon (const wxIcon& icon, long x, long y)
 {
-#if defined(__X__) || defined(__GTK__)
+#if defined(__X__) || defined(__WXGTK__)
   wxMemoryDC memDC;
   memDC.SelectObject(icon);
   Blit(x, y, icon.GetWidth(), icon.GetHeight(), &memDC, 0, 0);
   wxMemoryDC memDC;
   memDC.SelectObject(icon);
   Blit(x, y, icon.GetWidth(), icon.GetHeight(), &memDC, 0, 0);
@@ -690,8 +690,8 @@ void wxPostScriptDC::SetFont (const wxFont& the_font)
        return;
 
   char buf[100];
        return;
 
   char buf[100];
-  char *name;
-  char *style = "";
+  const char *name;
+  const char *style = "";
   int Style = m_font.GetStyle ();
   int Weight = m_font.GetWeight ();
 
   int Style = m_font.GetStyle ();
   int Weight = m_font.GetWeight ();
 
@@ -790,12 +790,12 @@ void wxPostScriptDC::SetPen (const wxPen& pen)
      will be first black line *2* units long, then space 4 units, then the
      pattern of *3* units black, 4 units space will be repeated.
    */
      will be first black line *2* units long, then space 4 units, then the
      pattern of *3* units black, 4 units space will be repeated.
    */
-  static char *dotted = "[2 5] 2";
-  static char *short_dashed = "[4 4] 2";
-  static char *long_dashed = "[4 8] 2";
-  static char *dotted_dashed = "[6 6 2 6] 4";
+  static const char *dotted = "[2 5] 2";
+  static const char *short_dashed = "[4 4] 2";
+  static const char *long_dashed = "[4 8] 2";
+  static const char *dotted_dashed = "[6 6 2 6] 4";
 
 
-  char *psdash = NULL;
+  const char *psdash = (char *) NULL;
   switch (m_pen.GetStyle ())
     {
     case wxDOT:
   switch (m_pen.GetStyle ())
     {
     case wxDOT:
@@ -1134,7 +1134,7 @@ void wxPostScriptDC::EndDoc (void)
   if (m_pstream)
     {
       delete m_pstream;
   if (m_pstream)
     {
       delete m_pstream;
-      m_pstream = NULL;
+      m_pstream = (ofstream *) NULL;
     }
 
   // Write header now
     }
 
   // Write header now
@@ -1258,7 +1258,7 @@ void wxPostScriptDC::EndDoc (void)
   *m_pstream << "%%EndProlog\n";
 
   delete m_pstream;
   *m_pstream << "%%EndProlog\n";
 
   delete m_pstream;
-  m_pstream = NULL;
+  m_pstream = (ofstream *) NULL;
 
 #ifdef __VMS__
   char *tmp_file = "tmp.ps";
 
 #ifdef __VMS__
   char *tmp_file = "tmp.ps";
@@ -1272,7 +1272,7 @@ void wxPostScriptDC::EndDoc (void)
   wxRemoveFile (wxThePrintSetupData->GetPrinterFile());
   wxRenameFile(tmp_file, wxThePrintSetupData->GetPrinterFile());
 
   wxRemoveFile (wxThePrintSetupData->GetPrinterFile());
   wxRenameFile(tmp_file, wxThePrintSetupData->GetPrinterFile());
 
-#if defined(__X__) || defined(__GTK__)
+#if defined(__X__) || defined(__WXGTK__)
   if (m_ok)
     {
       switch (wxThePrintSetupData->GetPrinterMode()) {
   if (m_ok)
     {
       switch (wxThePrintSetupData->GetPrinterMode()) {
@@ -1281,7 +1281,7 @@ void wxPostScriptDC::EndDoc (void)
           char *argv[3];
           argv[0] = wxThePrintSetupData->GetPrintPreviewCommand();
           argv[1] = wxThePrintSetupData->GetPrinterFile();
           char *argv[3];
           argv[0] = wxThePrintSetupData->GetPrintPreviewCommand();
           argv[1] = wxThePrintSetupData->GetPrinterFile();
-          argv[2] = NULL;
+          argv[2] = (char *) NULL;
          wxExecute (argv, TRUE);
           wxRemoveFile(wxThePrintSetupData->GetPrinterFile());
        }
          wxExecute (argv, TRUE);
           wxRemoveFile(wxThePrintSetupData->GetPrinterFile());
        }
@@ -1300,7 +1300,7 @@ void wxPostScriptDC::EndDoc (void)
               argv[argc++] = opts;
               
           argv[argc++] = wxThePrintSetupData->GetPrinterFile();
               argv[argc++] = opts;
               
           argv[argc++] = wxThePrintSetupData->GetPrinterFile();
-          argv[argc++] = NULL;
+          argv[argc++] = (char *) NULL;
          wxExecute (argv, TRUE);
           wxRemoveFile(wxThePrintSetupData->GetPrinterFile());
        }
          wxExecute (argv, TRUE);
           wxRemoveFile(wxThePrintSetupData->GetPrinterFile());
        }
@@ -1406,7 +1406,7 @@ Blit (long xdest, long ydest, long fwidth, long fheight,
 {
   long width, height, x, y;
 
 {
   long width, height, x, y;
 
-#if !defined(__X__) && !defined(__GTK__)
+#if !defined(__X__) && !defined(__WXGTK__)
   return FALSE;
 #endif
 
   return FALSE;
 #endif
 
@@ -1428,7 +1428,7 @@ Blit (long xdest, long ydest, long fwidth, long fheight,
   *m_pstream << "  currentfile DataString readhexstring pop\n";
   *m_pstream << "} bind image\n";
 
   *m_pstream << "  currentfile DataString readhexstring pop\n";
   *m_pstream << "} bind image\n";
 
-#if defined(__X__) || defined(__GTK__)
+#if defined(__X__) || defined(__WXGTK__)
 
   /* Output data as hex digits: */
   Display *d;
 
   /* Output data as hex digits: */
   Display *d;
@@ -1437,7 +1437,7 @@ Blit (long xdest, long ydest, long fwidth, long fheight,
   long j, i;
   char s[3];
   
   long j, i;
   char s[3];
   
-#ifdef __GTK__
+#ifdef __WXGTK__
 
   d = gdk_display;
   cm = ((GdkColormapPrivate*)gdk_colormap_get_system())->xcolormap;
 
   d = gdk_display;
   cm = ((GdkColormapPrivate*)gdk_colormap_get_system())->xcolormap;
@@ -1446,7 +1446,7 @@ Blit (long xdest, long ydest, long fwidth, long fheight,
 
 #else  
 
 
 #else  
 
-#ifdef __MOTIF__
+#ifdef __WXMOTIF__
   d = source->display;
 #else
   d = wxGetDisplay();
   d = source->display;
 #else
   d = wxGetDisplay();
@@ -1640,12 +1640,12 @@ void wxPostScriptDC::GetTextExtent (const wxString& string, long *x, long *y,
 
     // 1. construct filename ******************************************
     /* MATTHEW: [2] Use wxTheFontNameDirectory */
 
     // 1. construct filename ******************************************
     /* MATTHEW: [2] Use wxTheFontNameDirectory */
-    char *name;
+    const char *name;
 
        // Julian - we'll need to do this a different way now we've removed the
        // font directory system. Must find Stefan's original code.
 
 
        // Julian - we'll need to do this a different way now we've removed the
        // font directory system. Must find Stefan's original code.
 
-    name = wxTheFontNameDirectory.GetAFMName(Family, Weight, Style);
+    name = wxTheFontNameDirectory->GetAFMName(Family, Weight, Style);
     if (!name)
       name = "unknown";
 
     if (!name)
       name = "unknown";
 
@@ -1983,13 +1983,13 @@ long wxPostScriptDC::LogicalToDeviceYRel (long y) const
 
 void wxPostScriptDC::GetSize(int* width, int* height) const
 {
 
 void wxPostScriptDC::GetSize(int* width, int* height) const
 {
-  char *paperType = wxThePrintSetupData->GetPaperName();
+  const char *paperType = wxThePrintSetupData->GetPaperName();
   if (!paperType)
   if (!paperType)
-    paperType = "A4 210 x 297 mm";
+    paperType = _("A4 210 x 297 mm");
 
   wxPrintPaperType *paper = wxThePrintPaperDatabase->FindPaperType(paperType);
   if (!paper)
 
   wxPrintPaperType *paper = wxThePrintPaperDatabase->FindPaperType(paperType);
   if (!paper)
-    paper = wxThePrintPaperDatabase->FindPaperType("A4 210 x 297 mm");
+    paper = wxThePrintPaperDatabase->FindPaperType(_("A4 210 x 297 mm"));
   if (paper)
   {
     *width = paper->widthPixels;
   if (paper)
   {
     *width = paper->widthPixels;
@@ -2004,13 +2004,13 @@ void wxPostScriptDC::GetSize(int* width, int* height) const
 
 void wxPostScriptDC::GetSizeMM(long *width, long *height) const
 {
 
 void wxPostScriptDC::GetSizeMM(long *width, long *height) const
 {
-  char *paperType = wxThePrintSetupData->GetPaperName();
+  const char *paperType = wxThePrintSetupData->GetPaperName();
   if (!paperType)
   if (!paperType)
-    paperType = "A4 210 x 297 mm";
+    paperType = _("A4 210 x 297 mm");
 
   wxPrintPaperType *paper = wxThePrintPaperDatabase->FindPaperType(paperType);
   if (!paper)
 
   wxPrintPaperType *paper = wxThePrintPaperDatabase->FindPaperType(paperType);
   if (!paper)
-    paper = wxThePrintPaperDatabase->FindPaperType("A4 210 x 297 mm");
+    paper = wxThePrintPaperDatabase->FindPaperType(_("A4 210 x 297 mm"));
   if (paper)
   {
     *width = paper->widthMM;
   if (paper)
   {
     *width = paper->widthMM;
@@ -2047,21 +2047,21 @@ wxDialog(parent, -1, title, pos, size, style)
   (void) new wxButton (this, wxID_CANCEL, _("Cancel"), wxPoint(40, 5));
   okBut->SetDefault();
 
   (void) new wxButton (this, wxID_CANCEL, _("Cancel"), wxPoint(40, 5));
   okBut->SetDefault();
 
-  int yPos = 30;
+  int yPos = 40;
 
 
-#ifdef __X__
-  (void) new wxStaticText(this, -1, "Printer Command: ", wxPoint(5, yPos));
+#if defined(__WXGTK__) || defined (__WXMOTIF__)
+  (void) new wxStaticText(this, -1, _("Printer Command: "), wxPoint(5, yPos));
   wxTextCtrl *text_prt = new wxTextCtrl(this, wxID_PRINTER_COMMAND, wxThePrintSetupData->GetPrinterCommand(), wxPoint(100, yPos), wxSize(100, -1));
   wxTextCtrl *text_prt = new wxTextCtrl(this, wxID_PRINTER_COMMAND, wxThePrintSetupData->GetPrinterCommand(), wxPoint(100, yPos), wxSize(100, -1));
+  
+  (void) new wxStaticText(this, -1, _("Printer Options: "), wxPoint(210, yPos));
+  wxTextCtrl *text0 = new wxTextCtrl(this, wxID_PRINTER_OPTIONS, wxThePrintSetupData->GetPrinterOptions(), wxPoint(305, yPos), wxSize(150, -1));
 
 
-  (void) new wxStaticText(this, -1, "Printer Options: ", wxPoint(210, yPos));
-  wxTextCtrl *text0 = new wxTextCtrl(this, wxID_PRINTER_OPTIONS, wxThePrintSetupData->GetPrinterOptions(), wxPoint(305, -1), wxSize(150, -1));
-
-  yPos += 25;
+  yPos += 40;
 #endif
 
   wxString orientation[2];
 #endif
 
   wxString orientation[2];
-  orientation[0] = "Portrait";
-  orientation[1] = "Landscape";
+  orientation[0] = _("Portrait");
+  orientation[1] = _("Landscape");
 
   wxRadioBox *radio0 = new wxRadioBox(this, wxID_PRINTER_ORIENTATION, "Orientation: ", wxPoint(5, yPos), wxSize(-1,-1),
                2,orientation,2,0);
 
   wxRadioBox *radio0 = new wxRadioBox(this, wxID_PRINTER_ORIENTATION, "Orientation: ", wxPoint(5, yPos), wxSize(-1,-1),
                2,orientation,2,0);
@@ -2074,15 +2074,15 @@ wxDialog(parent, -1, title, pos, size, style)
   wxGetResource ("wxWindows", "PSView", &wxThePrintSetupData->previewCommand);
 
   wxString print_modes[3];
   wxGetResource ("wxWindows", "PSView", &wxThePrintSetupData->previewCommand);
 
   wxString print_modes[3];
-  print_modes[0] = "Send to Printer";
-  print_modes[1] = "Print to File";
-  print_modes[2] = "Preview Only";
+  print_modes[0] = _("Send to Printer");
+  print_modes[1] = _("Print to File");
+  print_modes[2] = _("Preview Only");
 
   int features = (wxThePrintSetupData->GetPrintPreviewCommand() && *wxThePrintSetupData->GetPrintPreviewCommand()) ? 3 : 2;
 
   int features = (wxThePrintSetupData->GetPrintPreviewCommand() && *wxThePrintSetupData->GetPrintPreviewCommand()) ? 3 : 2;
-  wxRadioBox *radio1 = new wxRadioBox(this, wxID_PRINTER_MODES, "PostScript:",
+  wxRadioBox *radio1 = new wxRadioBox(this, wxID_PRINTER_MODES, _("PostScript:"),
     wxPoint(150, yPos), wxSize(-1,-1), features, print_modes, features, 0);
 
     wxPoint(150, yPos), wxSize(-1,-1), features, print_modes, features, 0);
 
-#ifdef __WINDOWS__
+#ifdef __WXMSW__
   radio1->Enable(0, FALSE);
   if (wxThePrintSetupData->GetPrintPreviewCommand() && *wxThePrintSetupData->GetPrintPreviewCommand())
     radio1->Enable(2, FALSE);
   radio1->Enable(0, FALSE);
   if (wxThePrintSetupData->GetPrintPreviewCommand() && *wxThePrintSetupData->GetPrintPreviewCommand())
     radio1->Enable(2, FALSE);
@@ -2097,24 +2097,24 @@ wxDialog(parent, -1, title, pos, size, style)
 
   sprintf (buf, "%.2f", wx_printer_scale_x);
 
 
   sprintf (buf, "%.2f", wx_printer_scale_x);
 
-  yPos += 60;
+  yPos += 90;
 
 
-  (void) new wxStaticText(this, -1, "X Scaling", wxPoint(5, yPos));
-  /* wxTextCtrl *text1 = */ (void) new wxTextCtrl(this, wxID_PRINTER_X_SCALE, buf, wxPoint(100, -1), wxSize(100, -1));
+  (void) new wxStaticText(this, -1, _("X Scaling"), wxPoint(5, yPos));
+  /* wxTextCtrl *text1 = */ (void) new wxTextCtrl(this, wxID_PRINTER_X_SCALE, buf, wxPoint(100, yPos), wxSize(100, -1));
 
   sprintf (buf, "%.2f", wx_printer_scale_y);
 
   sprintf (buf, "%.2f", wx_printer_scale_y);
-  (void) new wxStaticText(this, -1, "Y Scaling", wxPoint(120, yPos));
-  /* wxTextCtrl *text2 = */ (void) new wxTextCtrl(this, wxID_PRINTER_Y_SCALE, buf, wxPoint(230, -1), wxSize(100, -1));
+  (void) new wxStaticText(this, -1, _("Y Scaling"), wxPoint(220, yPos));
+  /* wxTextCtrl *text2 = */ (void) new wxTextCtrl(this, wxID_PRINTER_Y_SCALE, buf, wxPoint(320, yPos), wxSize(100, -1));
 
   yPos += 25;
 
 
   yPos += 25;
 
-  (void) new wxStaticText(this, -1, "X Translation", wxPoint(5, yPos));
+  (void) new wxStaticText(this, -1, _("X Translation"), wxPoint(5, yPos));
   sprintf (buf, "%.2ld", wx_printer_translate_x);
   sprintf (buf, "%.2ld", wx_printer_translate_x);
-  /* wxTextCtrl *text3 = */ (void) new wxTextCtrl(this, wxID_PRINTER_X_TRANS, buf, wxPoint(100, -1), wxSize(100, -1));
+  /* wxTextCtrl *text3 = */ (void) new wxTextCtrl(this, wxID_PRINTER_X_TRANS, buf, wxPoint(100, yPos), wxSize(100, -1));
 
 
-  (void) new wxStaticText(this, -1, "Y Translation", wxPoint(120, yPos));
+  (void) new wxStaticText(this, -1, _("Y Translation"), wxPoint(220, yPos));
   sprintf (buf, "%.2ld", wx_printer_translate_y);
   sprintf (buf, "%.2ld", wx_printer_translate_y);
-  /* wxTextCtrl *text4 = */ (void) new wxTextCtrl(this, wxID_PRINTER_Y_TRANS, buf, wxPoint(230, -1), wxSize(100, -1));
+  /* wxTextCtrl *text4 = */ (void) new wxTextCtrl(this, wxID_PRINTER_Y_TRANS, buf, wxPoint(320, yPos), wxSize(100, -1));
 
   Fit ();
 
 
   Fit ();
 
@@ -2148,9 +2148,9 @@ int wxPostScriptPrintDialog::ShowModal (void)
 
       // C++ wants this
       switch ( radio1->GetSelection() ) {
 
       // C++ wants this
       switch ( radio1->GetSelection() ) {
-               case PS_PREVIEW: wxThePrintSetupData->SetPrinterMode(PS_PREVIEW); break;
-               case PS_FILE:    wxThePrintSetupData->SetPrinterMode(PS_FILE);    break;
-               case PS_PRINTER: wxThePrintSetupData->SetPrinterMode(PS_PRINTER); break;
+               case 0: wxThePrintSetupData->SetPrinterMode(PS_PRINTER); break;
+               case 1:  wxThePrintSetupData->SetPrinterMode(PS_FILE); break;
+               case 2: wxThePrintSetupData->SetPrinterMode(PS_PREVIEW); break;
       }
          return wxID_OK;
   }
       }
          return wxID_OK;
   }
@@ -2159,22 +2159,22 @@ int wxPostScriptPrintDialog::ShowModal (void)
 
 // PostScript printer settings
 // RETAINED FOR BACKWARD COMPATIBILITY
 
 // PostScript printer settings
 // RETAINED FOR BACKWARD COMPATIBILITY
-void wxSetPrinterCommand(char *cmd)
+void wxSetPrinterCommand(const char *cmd)
 {
   wxThePrintSetupData->SetPrinterCommand(cmd);
 }
 
 {
   wxThePrintSetupData->SetPrinterCommand(cmd);
 }
 
-void wxSetPrintPreviewCommand(char *cmd)
+void wxSetPrintPreviewCommand(const char *cmd)
 {
   wxThePrintSetupData->SetPrintPreviewCommand(cmd);
 }
 
 {
   wxThePrintSetupData->SetPrintPreviewCommand(cmd);
 }
 
-void wxSetPrinterOptions(char *flags)
+void wxSetPrinterOptions(const char *flags)
 {
   wxThePrintSetupData->SetPrinterOptions(flags);
 }
 
 {
   wxThePrintSetupData->SetPrinterOptions(flags);
 }
 
-void wxSetPrinterFile(char *f)
+void wxSetPrinterFile(const char *f)
 {
   wxThePrintSetupData->SetPrinterFile(f);
 }
 {
   wxThePrintSetupData->SetPrinterFile(f);
 }
@@ -2200,7 +2200,7 @@ void wxSetPrinterMode(int mode)
   wxThePrintSetupData->SetPrinterMode(mode);
 }
 
   wxThePrintSetupData->SetPrinterMode(mode);
 }
 
-void wxSetAFMPath(char *f)
+void wxSetAFMPath(const char *f)
 {
   wxThePrintSetupData->SetAFMPath(f);
 }
 {
   wxThePrintSetupData->SetAFMPath(f);
 }
@@ -2257,9 +2257,9 @@ char *wxGetAFMPath(void)
 
 wxPrintSetupData::wxPrintSetupData(void)
 {
 
 wxPrintSetupData::wxPrintSetupData(void)
 {
-  printerCommand = NULL;
-  previewCommand = NULL;
-  printerFlags = NULL;
+  printerCommand = (char *) NULL;
+  previewCommand = (char *) NULL;
+  printerFlags = (char *) NULL;
   printerOrient = PS_PORTRAIT;
   printerScaleX = (double)1.0;
   printerScaleY = (double)1.0;
   printerOrient = PS_PORTRAIT;
   printerScaleX = (double)1.0;
   printerScaleY = (double)1.0;
@@ -2267,10 +2267,10 @@ wxPrintSetupData::wxPrintSetupData(void)
   printerTranslateY = 0;
   // 1 = Preview, 2 = print to file, 3 = send to printer
   printerMode = 3;
   printerTranslateY = 0;
   // 1 = Preview, 2 = print to file, 3 = send to printer
   printerMode = 3;
-  afmPath = NULL;
-  paperName = NULL;
+  afmPath = (char *) NULL;
+  paperName = (char *) NULL;
   printColour = TRUE;
   printColour = TRUE;
-  printerFile = NULL;
+  printerFile = (char *) NULL;
 }
 
 wxPrintSetupData::~wxPrintSetupData(void)
 }
 
 wxPrintSetupData::~wxPrintSetupData(void)
@@ -2289,7 +2289,7 @@ wxPrintSetupData::~wxPrintSetupData(void)
     delete[] printerFile;
 }
 
     delete[] printerFile;
 }
 
-void wxPrintSetupData::SetPrinterCommand(char *cmd)
+void wxPrintSetupData::SetPrinterCommand(const char *cmd)
 {
   if (cmd == printerCommand)
     return;
 {
   if (cmd == printerCommand)
     return;
@@ -2299,10 +2299,10 @@ void wxPrintSetupData::SetPrinterCommand(char *cmd)
   if (cmd)
     printerCommand = copystring(cmd);
   else
   if (cmd)
     printerCommand = copystring(cmd);
   else
-    printerCommand = NULL;
+    printerCommand = (char *) NULL;
 }
 
 }
 
-void wxPrintSetupData::SetPrintPreviewCommand(char *cmd)
+void wxPrintSetupData::SetPrintPreviewCommand(const char *cmd)
 {
   if (cmd == previewCommand)
     return;
 {
   if (cmd == previewCommand)
     return;
@@ -2312,10 +2312,10 @@ void wxPrintSetupData::SetPrintPreviewCommand(char *cmd)
   if (cmd)
     previewCommand = copystring(cmd);
   else
   if (cmd)
     previewCommand = copystring(cmd);
   else
-    previewCommand = NULL;
+    previewCommand = (char *) NULL;
 }
 
 }
 
-void wxPrintSetupData::SetPaperName(char *name)
+void wxPrintSetupData::SetPaperName(const char *name)
 {
   if (name == paperName)
     return;
 {
   if (name == paperName)
     return;
@@ -2325,10 +2325,10 @@ void wxPrintSetupData::SetPaperName(char *name)
   if (name)
     paperName = copystring(name);
   else
   if (name)
     paperName = copystring(name);
   else
-    paperName = NULL;
+    paperName = (char *) NULL;
 }
 
 }
 
-void wxPrintSetupData::SetPrinterOptions(char *flags)
+void wxPrintSetupData::SetPrinterOptions(const char *flags)
 {
   if (printerFlags == flags)
     return;
 {
   if (printerFlags == flags)
     return;
@@ -2338,10 +2338,10 @@ void wxPrintSetupData::SetPrinterOptions(char *flags)
   if (flags)
     printerFlags = copystring(flags);
   else
   if (flags)
     printerFlags = copystring(flags);
   else
-    printerFlags = NULL;
+    printerFlags = (char *) NULL;
 }
 
 }
 
-void wxPrintSetupData::SetPrinterFile(char *f)
+void wxPrintSetupData::SetPrinterFile(const char *f)
 {
   if (f == printerFile)
     return;
 {
   if (f == printerFile)
     return;
@@ -2351,7 +2351,7 @@ void wxPrintSetupData::SetPrinterFile(char *f)
   if (f)
     printerFile = copystring(f);
   else
   if (f)
     printerFile = copystring(f);
   else
-    printerFile = NULL;
+    printerFile = (char *) NULL;
 }
 
 void wxPrintSetupData::SetPrinterOrientation(int orient)
 }
 
 void wxPrintSetupData::SetPrinterOrientation(int orient)
@@ -2377,7 +2377,7 @@ void wxPrintSetupData::SetPrinterMode(int mode)
   printerMode = mode;
 }
 
   printerMode = mode;
 }
 
-void wxPrintSetupData::SetAFMPath(char *f)
+void wxPrintSetupData::SetAFMPath(const char *f)
 {
   if (f == afmPath)
     return;
 {
   if (f == afmPath)
     return;
@@ -2387,7 +2387,7 @@ void wxPrintSetupData::SetAFMPath(char *f)
   if (f)
     afmPath = copystring(f);
   else
   if (f)
     afmPath = copystring(f);
   else
-    afmPath = NULL;
+    afmPath = (char *) NULL;
 }
 
 void wxPrintSetupData::SetColour(bool col)
 }
 
 void wxPrintSetupData::SetColour(bool col)
@@ -2482,7 +2482,7 @@ void wxInitializePrintSetupData(bool init)
     wxThePrintSetupData->SetPrintPreviewCommand(PS_VIEWER_PROG);
     wxThePrintSetupData->SetPrinterOrientation(PS_PORTRAIT);
     wxThePrintSetupData->SetPrinterMode(PS_PREVIEW);
     wxThePrintSetupData->SetPrintPreviewCommand(PS_VIEWER_PROG);
     wxThePrintSetupData->SetPrinterOrientation(PS_PORTRAIT);
     wxThePrintSetupData->SetPrinterMode(PS_PREVIEW);
-    wxThePrintSetupData->SetPaperName("A4 210 x 297 mm");
+    wxThePrintSetupData->SetPaperName(_("A4 210 x 297 mm"));
 
     // Could have a .ini file to read in some defaults
     // - and/or use environment variables, e.g. WXWIN
 
     // Could have a .ini file to read in some defaults
     // - and/or use environment variables, e.g. WXWIN
@@ -2491,22 +2491,22 @@ void wxInitializePrintSetupData(bool init)
     wxThePrintSetupData->SetPrinterOptions("/nonotify/queue=psqueue");
     wxThePrintSetupData->SetAFMPath("sys$ps_font_metrics:");
 #endif
     wxThePrintSetupData->SetPrinterOptions("/nonotify/queue=psqueue");
     wxThePrintSetupData->SetAFMPath("sys$ps_font_metrics:");
 #endif
-#ifdef __WINDOWS__
+#ifdef __WXMSW__
     wxThePrintSetupData->SetPrinterCommand("print");
     wxThePrintSetupData->SetAFMPath("c:\\windows\\system\\");
     wxThePrintSetupData->SetPrinterOptions(NULL);
 #endif
     wxThePrintSetupData->SetPrinterCommand("print");
     wxThePrintSetupData->SetAFMPath("c:\\windows\\system\\");
     wxThePrintSetupData->SetPrinterOptions(NULL);
 #endif
-#if !defined(__VMS__) && !defined(__WINDOWS__)
+#if !defined(__VMS__) && !defined(__WXMSW__)
     wxThePrintSetupData->SetPrinterCommand("lpr");
     wxThePrintSetupData->SetPrinterCommand("lpr");
-    wxThePrintSetupData->SetPrinterOptions(NULL);
-    wxThePrintSetupData->SetAFMPath(NULL);
+    wxThePrintSetupData->SetPrinterOptions((char *) NULL);
+    wxThePrintSetupData->SetAFMPath((char *) NULL);
 #endif
   }
   else
   {
     if (wxThePrintSetupData)
       delete wxThePrintSetupData;
 #endif
   }
   else
   {
     if (wxThePrintSetupData)
       delete wxThePrintSetupData;
-     wxThePrintSetupData = NULL;
+     wxThePrintSetupData = (wxPrintSetupData *) NULL;
   }
 }
 
   }
 }
 
@@ -2514,7 +2514,7 @@ void wxInitializePrintSetupData(bool init)
  * Paper size database for PostScript
  */
 
  * Paper size database for PostScript
  */
 
-wxPrintPaperType::wxPrintPaperType(char *name, int wmm, int hmm, int wp, int hp)
+wxPrintPaperType::wxPrintPaperType(const char *name, int wmm, int hmm, int wp, int hp)
 {
   widthMM = wmm;
   heightMM = hmm;
 {
   widthMM = wmm;
   heightMM = hmm;
@@ -2549,10 +2549,10 @@ void wxPrintPaperDatabase::CreateDatabase(void)
   // Heck, someone will know how to make it hunky-dory...
   // JACS 25/5/95
   
   // Heck, someone will know how to make it hunky-dory...
   // JACS 25/5/95
   
-  AddPaperType("A4 210 x 297 mm", 210, 297,         595, 842);
-  AddPaperType("A3 297 x 420 mm", 297, 420,         842, 1191);
-  AddPaperType("Letter 8 1/2 x 11 in", 216, 279,    612, 791);
-  AddPaperType("Legal 8 1/2 x 14 in", 216, 356,     612, 1009);
+  AddPaperType(_("A4 210 x 297 mm"), 210, 297,         595, 842);
+  AddPaperType(_("A3 297 x 420 mm"), 297, 420,         842, 1191);
+  AddPaperType(_("Letter 8 1/2 x 11 in"), 216, 279,    612, 791);
+  AddPaperType(_("Legal 8 1/2 x 14 in"), 216, 356,     612, 1009);
 }
 
 void wxPrintPaperDatabase::ClearDatabase(void)
 }
 
 void wxPrintPaperDatabase::ClearDatabase(void)
@@ -2560,18 +2560,18 @@ void wxPrintPaperDatabase::ClearDatabase(void)
   Clear();
 }
 
   Clear();
 }
 
-void wxPrintPaperDatabase::AddPaperType(char *name, int wmm, int hmm, int wp, int hp)
+void wxPrintPaperDatabase::AddPaperType(const char *name, int wmm, int hmm, int wp, int hp)
 {
   Append(name, new wxPrintPaperType(name, wmm, hmm, wp, hp));
 }
 
 {
   Append(name, new wxPrintPaperType(name, wmm, hmm, wp, hp));
 }
 
-wxPrintPaperType *wxPrintPaperDatabase::FindPaperType(char *name)
+wxPrintPaperType *wxPrintPaperDatabase::FindPaperType(const char *name)
 {
   wxNode *node = Find(name);
   if (node)
     return (wxPrintPaperType *)node->Data();
   else
 {
   wxNode *node = Find(name);
   if (node)
     return (wxPrintPaperType *)node->Data();
   else
-    return NULL;
+    return (wxPrintPaperType *) NULL;
 }
 
 #endif
 }
 
 #endif