Removed all deprecated printing code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -21,13 +21,8 @@
|
|||||||
#include "wx/colour.h"
|
#include "wx/colour.h"
|
||||||
#include "wx/gdicmn.h"
|
#include "wx/gdicmn.h"
|
||||||
|
|
||||||
#if (defined(__WXMOTIF__) || defined(__WXMGL__) || defined(__WXX11__) || defined(__WXGTK__) || defined(__WXPM__) || defined(__WXMAC__)) && wxUSE_POSTSCRIPT
|
|
||||||
class WXDLLEXPORT wxPrintSetupData;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
class WXDLLEXPORT wxColourData: public wxObject
|
class WXDLLEXPORT wxColourData: public wxObject
|
||||||
{
|
{
|
||||||
DECLARE_DYNAMIC_CLASS(wxColourData)
|
|
||||||
public:
|
public:
|
||||||
wxColourData();
|
wxColourData();
|
||||||
wxColourData(const wxColourData& data);
|
wxColourData(const wxColourData& data);
|
||||||
@@ -49,11 +44,13 @@ public:
|
|||||||
wxColour dataColour;
|
wxColour dataColour;
|
||||||
wxColour custColours[16];
|
wxColour custColours[16];
|
||||||
bool chooseFull;
|
bool chooseFull;
|
||||||
|
|
||||||
|
private:
|
||||||
|
DECLARE_DYNAMIC_CLASS(wxColourData)
|
||||||
};
|
};
|
||||||
|
|
||||||
class WXDLLEXPORT wxFontData: public wxObject
|
class WXDLLEXPORT wxFontData: public wxObject
|
||||||
{
|
{
|
||||||
DECLARE_DYNAMIC_CLASS(wxFontData)
|
|
||||||
public:
|
public:
|
||||||
wxFontData();
|
wxFontData();
|
||||||
~wxFontData();
|
~wxFontData();
|
||||||
@@ -130,6 +127,9 @@ public:
|
|||||||
private:
|
private:
|
||||||
wxFontEncoding m_encoding;
|
wxFontEncoding m_encoding;
|
||||||
wxNativeEncodingInfo m_encodingInfo;
|
wxNativeEncodingInfo m_encodingInfo;
|
||||||
|
|
||||||
|
private:
|
||||||
|
DECLARE_DYNAMIC_CLASS(wxFontData)
|
||||||
};
|
};
|
||||||
|
|
||||||
#if wxUSE_PRINTING_ARCHITECTURE
|
#if wxUSE_PRINTING_ARCHITECTURE
|
||||||
@@ -140,8 +140,7 @@ private:
|
|||||||
|
|
||||||
class WXDLLEXPORT wxPrintData: public wxObject
|
class WXDLLEXPORT wxPrintData: public wxObject
|
||||||
{
|
{
|
||||||
DECLARE_DYNAMIC_CLASS(wxPrintData)
|
public:
|
||||||
|
|
||||||
wxPrintData();
|
wxPrintData();
|
||||||
wxPrintData(const wxPrintData& printData);
|
wxPrintData(const wxPrintData& printData);
|
||||||
~wxPrintData();
|
~wxPrintData();
|
||||||
@@ -199,11 +198,6 @@ class WXDLLEXPORT wxPrintData: public wxObject
|
|||||||
|
|
||||||
void operator=(const wxPrintData& data);
|
void operator=(const wxPrintData& data);
|
||||||
|
|
||||||
// For compatibility
|
|
||||||
#if (defined(__WXMOTIF__) || defined(__WXMGL__) || defined(__WXX11__) || defined(__WXGTK__) || defined(__WXPM__) || defined(__WXMAC__)) && wxUSE_POSTSCRIPT
|
|
||||||
void operator=(const wxPrintSetupData& setupData);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(__WXMSW__)
|
#if defined(__WXMSW__)
|
||||||
// Convert to/from the DEVMODE structure
|
// Convert to/from the DEVMODE structure
|
||||||
void ConvertToNative();
|
void ConvertToNative();
|
||||||
@@ -227,7 +221,6 @@ public:
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
int m_printNoCopies;
|
int m_printNoCopies;
|
||||||
int m_printOrientation;
|
int m_printOrientation;
|
||||||
bool m_printCollate;
|
bool m_printCollate;
|
||||||
@@ -251,6 +244,9 @@ private:
|
|||||||
long m_printerTranslateX;
|
long m_printerTranslateX;
|
||||||
long m_printerTranslateY;
|
long m_printerTranslateY;
|
||||||
wxPrintMode m_printMode;
|
wxPrintMode m_printMode;
|
||||||
|
|
||||||
|
private:
|
||||||
|
DECLARE_DYNAMIC_CLASS(wxPrintData)
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -262,8 +258,7 @@ private:
|
|||||||
|
|
||||||
class WXDLLEXPORT wxPrintDialogData: public wxObject
|
class WXDLLEXPORT wxPrintDialogData: public wxObject
|
||||||
{
|
{
|
||||||
DECLARE_DYNAMIC_CLASS(wxPrintDialogData)
|
public:
|
||||||
|
|
||||||
wxPrintDialogData();
|
wxPrintDialogData();
|
||||||
wxPrintDialogData(const wxPrintDialogData& dialogData);
|
wxPrintDialogData(const wxPrintDialogData& dialogData);
|
||||||
wxPrintDialogData(const wxPrintData& printData);
|
wxPrintDialogData(const wxPrintData& printData);
|
||||||
@@ -317,8 +312,8 @@ class WXDLLEXPORT wxPrintDialogData: public wxObject
|
|||||||
void SetOwnerWindow(wxWindow* win);
|
void SetOwnerWindow(wxWindow* win);
|
||||||
void* GetNativeData() const { return m_printDlgData; }
|
void* GetNativeData() const { return m_printDlgData; }
|
||||||
#elif defined(__WXMAC__)
|
#elif defined(__WXMAC__)
|
||||||
void ConvertToNative();
|
void ConvertToNative();
|
||||||
void ConvertFromNative();
|
void ConvertFromNative();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef __WXMSW__
|
#ifdef __WXMSW__
|
||||||
@@ -326,7 +321,6 @@ class WXDLLEXPORT wxPrintDialogData: public wxObject
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
int m_printFromPage;
|
int m_printFromPage;
|
||||||
int m_printToPage;
|
int m_printToPage;
|
||||||
int m_printMinPage;
|
int m_printMinPage;
|
||||||
@@ -341,8 +335,10 @@ private:
|
|||||||
bool m_printEnableHelp;
|
bool m_printEnableHelp;
|
||||||
bool m_printEnablePrintToFile;
|
bool m_printEnablePrintToFile;
|
||||||
bool m_printSetupDialog;
|
bool m_printSetupDialog;
|
||||||
|
|
||||||
wxPrintData m_printData;
|
wxPrintData m_printData;
|
||||||
|
|
||||||
|
private:
|
||||||
|
DECLARE_DYNAMIC_CLASS(wxPrintDialogData)
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -354,8 +350,6 @@ private:
|
|||||||
|
|
||||||
class WXDLLEXPORT wxPageSetupDialogData: public wxObject
|
class WXDLLEXPORT wxPageSetupDialogData: public wxObject
|
||||||
{
|
{
|
||||||
DECLARE_DYNAMIC_CLASS(wxPageSetupDialogData)
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
wxPageSetupDialogData();
|
wxPageSetupDialogData();
|
||||||
wxPageSetupDialogData(const wxPageSetupDialogData& dialogData);
|
wxPageSetupDialogData(const wxPageSetupDialogData& dialogData);
|
||||||
@@ -409,8 +403,8 @@ public:
|
|||||||
void SetOwnerWindow(wxWindow* win);
|
void SetOwnerWindow(wxWindow* win);
|
||||||
void* GetNativeData() const { return m_pageSetupData; }
|
void* GetNativeData() const { return m_pageSetupData; }
|
||||||
#elif defined(__WXMAC__)
|
#elif defined(__WXMAC__)
|
||||||
void ConvertToNative();
|
void ConvertToNative();
|
||||||
void ConvertFromNative();
|
void ConvertFromNative();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
// Use paper size defined in this object to set the wxPrintData
|
// Use paper size defined in this object to set the wxPrintData
|
||||||
@@ -431,14 +425,11 @@ public:
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
wxSize m_paperSize; // The dimensions selected by the user (on return, same as in wxPrintData?)
|
wxSize m_paperSize; // The dimensions selected by the user (on return, same as in wxPrintData?)
|
||||||
wxPoint m_minMarginTopLeft;
|
wxPoint m_minMarginTopLeft;
|
||||||
wxPoint m_minMarginBottomRight;
|
wxPoint m_minMarginBottomRight;
|
||||||
wxPoint m_marginTopLeft;
|
wxPoint m_marginTopLeft;
|
||||||
wxPoint m_marginBottomRight;
|
wxPoint m_marginBottomRight;
|
||||||
|
|
||||||
// Flags
|
|
||||||
bool m_defaultMinMargins;
|
bool m_defaultMinMargins;
|
||||||
bool m_enableMargins;
|
bool m_enableMargins;
|
||||||
bool m_enableOrientation;
|
bool m_enableOrientation;
|
||||||
@@ -446,8 +437,10 @@ private:
|
|||||||
bool m_enablePrinter;
|
bool m_enablePrinter;
|
||||||
bool m_getDefaultInfo; // Equiv. to PSD_RETURNDEFAULT
|
bool m_getDefaultInfo; // Equiv. to PSD_RETURNDEFAULT
|
||||||
bool m_enableHelp;
|
bool m_enableHelp;
|
||||||
|
|
||||||
wxPrintData m_printData;
|
wxPrintData m_printData;
|
||||||
|
|
||||||
|
private:
|
||||||
|
DECLARE_DYNAMIC_CLASS(wxPageSetupDialogData)
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // wxUSE_PRINTING_ARCHITECTURE
|
#endif // wxUSE_PRINTING_ARCHITECTURE
|
||||||
|
@@ -37,28 +37,16 @@ class wxPostScriptDC;
|
|||||||
|
|
||||||
class WXDLLEXPORT wxPostScriptDC: public wxDC
|
class WXDLLEXPORT wxPostScriptDC: public wxDC
|
||||||
{
|
{
|
||||||
DECLARE_DYNAMIC_CLASS(wxPostScriptDC)
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
|
||||||
wxPostScriptDC();
|
wxPostScriptDC();
|
||||||
|
|
||||||
// Deprecated constructor
|
|
||||||
wxPostScriptDC(const wxString& output, bool interactive = TRUE, wxWindow *parent = (wxWindow *) NULL);
|
|
||||||
|
|
||||||
// Recommended constructor
|
// Recommended constructor
|
||||||
wxPostScriptDC(const wxPrintData& printData);
|
wxPostScriptDC(const wxPrintData& printData);
|
||||||
|
|
||||||
~wxPostScriptDC();
|
~wxPostScriptDC();
|
||||||
|
|
||||||
// Deprecated
|
|
||||||
bool Create(const wxString& output, bool interactive = TRUE, wxWindow *parent = (wxWindow *) NULL);
|
|
||||||
|
|
||||||
virtual bool Ok() const;
|
virtual bool Ok() const;
|
||||||
|
|
||||||
// Deprecated: use wxGenericPrintDialog instead
|
|
||||||
virtual bool PrinterDialog(wxWindow *parent = (wxWindow *) NULL);
|
|
||||||
|
|
||||||
virtual void BeginDrawing() {}
|
virtual void BeginDrawing() {}
|
||||||
virtual void EndDrawing() {}
|
virtual void EndDrawing() {}
|
||||||
|
|
||||||
@@ -135,157 +123,24 @@ public:
|
|||||||
static int GetResolution();
|
static int GetResolution();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
static float ms_PSScaleFactor;
|
static float ms_PSScaleFactor;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
FILE* m_pstream; // PostScript output stream
|
||||||
FILE* m_pstream; // PostScript output stream
|
wxString m_title;
|
||||||
wxString m_title;
|
unsigned char m_currentRed;
|
||||||
unsigned char m_currentRed;
|
unsigned char m_currentGreen;
|
||||||
unsigned char m_currentGreen;
|
unsigned char m_currentBlue;
|
||||||
unsigned char m_currentBlue;
|
int m_pageNumber;
|
||||||
int m_pageNumber;
|
bool m_clipping;
|
||||||
bool m_clipping;
|
double m_underlinePosition;
|
||||||
double m_underlinePosition;
|
double m_underlineThickness;
|
||||||
double m_underlineThickness;
|
wxPrintData m_printData;
|
||||||
wxPrintData m_printData;
|
|
||||||
|
private:
|
||||||
|
DECLARE_DYNAMIC_CLASS(wxPostScriptDC)
|
||||||
};
|
};
|
||||||
|
|
||||||
// Deprecated: should use wxGenericPrintDialog instead.
|
|
||||||
#if 1
|
|
||||||
enum
|
|
||||||
{
|
|
||||||
wxID_PRINTER_COMMAND = 1,
|
|
||||||
wxID_PRINTER_OPTIONS,
|
|
||||||
wxID_PRINTER_ORIENTATION,
|
|
||||||
wxID_PRINTER_MODES,
|
|
||||||
wxID_PRINTER_X_SCALE,
|
|
||||||
wxID_PRINTER_Y_SCALE,
|
|
||||||
wxID_PRINTER_X_TRANS,
|
|
||||||
wxID_PRINTER_Y_TRANS
|
|
||||||
};
|
|
||||||
|
|
||||||
class WXDLLEXPORT wxPostScriptPrintDialog: public wxDialog
|
|
||||||
{
|
|
||||||
DECLARE_CLASS(wxPostScriptPrintDialog)
|
|
||||||
public:
|
|
||||||
wxPostScriptPrintDialog (wxWindow *parent, const wxString& title,
|
|
||||||
const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize,
|
|
||||||
wxCoord style = wxDEFAULT_DIALOG_STYLE);
|
|
||||||
|
|
||||||
virtual int ShowModal();
|
|
||||||
};
|
|
||||||
#endif // 1
|
|
||||||
|
|
||||||
// Print Orientation (Should also add Left, Right)
|
|
||||||
enum
|
|
||||||
{
|
|
||||||
PS_PORTRAIT = 1,
|
|
||||||
PS_LANDSCAPE = 2
|
|
||||||
};// ps_orientation = PS_PORTRAIT;
|
|
||||||
|
|
||||||
// Print Actions
|
|
||||||
enum
|
|
||||||
{
|
|
||||||
PS_NONE,
|
|
||||||
PS_PREVIEW,
|
|
||||||
PS_FILE,
|
|
||||||
PS_PRINTER
|
|
||||||
};// ps_action = PS_PREVIEW;
|
|
||||||
|
|
||||||
// PostScript printer settings
|
|
||||||
WXDLLEXPORT void wxSetPrinterCommand(const wxString& cmd);
|
|
||||||
WXDLLEXPORT void wxSetPrintPreviewCommand(const wxString& cmd);
|
|
||||||
WXDLLEXPORT void wxSetPrinterOptions(const wxString& flags);
|
|
||||||
WXDLLEXPORT void wxSetPrinterOrientation(int orientation);
|
|
||||||
WXDLLEXPORT void wxSetPrinterScaling(double x, double y);
|
|
||||||
WXDLLEXPORT void wxSetPrinterTranslation(wxCoord x, wxCoord y);
|
|
||||||
WXDLLEXPORT void wxSetPrinterMode(int mode);
|
|
||||||
WXDLLEXPORT void wxSetPrinterFile(const wxString& f);
|
|
||||||
WXDLLEXPORT void wxSetAFMPath(const wxString& f);
|
|
||||||
|
|
||||||
// Get current values
|
|
||||||
WXDLLEXPORT wxString wxGetPrinterCommand();
|
|
||||||
WXDLLEXPORT wxString wxGetPrintPreviewCommand();
|
|
||||||
WXDLLEXPORT wxString wxGetPrinterOptions();
|
|
||||||
WXDLLEXPORT int wxGetPrinterOrientation();
|
|
||||||
WXDLLEXPORT void wxGetPrinterScaling(double* x, double* y);
|
|
||||||
WXDLLEXPORT void wxGetPrinterTranslation(wxCoord *x, wxCoord *y);
|
|
||||||
WXDLLEXPORT int wxGetPrinterMode();
|
|
||||||
WXDLLEXPORT wxString wxGetPrinterFile();
|
|
||||||
WXDLLEXPORT wxString wxGetAFMPath();
|
|
||||||
|
|
||||||
/*
|
|
||||||
* PostScript print setup information.
|
|
||||||
* This is now obsolete, but retained for a while for compatibility
|
|
||||||
*/
|
|
||||||
|
|
||||||
class WXDLLEXPORT wxPrintSetupData: public wxObject
|
|
||||||
{
|
|
||||||
public:
|
|
||||||
wxPrintSetupData();
|
|
||||||
~wxPrintSetupData();
|
|
||||||
|
|
||||||
void SetPrinterCommand(const wxString& cmd) { m_printerCommand = cmd; };
|
|
||||||
void SetPaperName(const wxString& paper) { m_paperName = paper; };
|
|
||||||
void SetPrintPreviewCommand(const wxString& cmd) { m_previewCommand = cmd; };
|
|
||||||
void SetPrinterOptions(const wxString& flags) { m_printerFlags = flags; };
|
|
||||||
void SetPrinterFile(const wxString& f) { m_printerFile = f; };
|
|
||||||
void SetPrinterOrientation(int orient) { m_printerOrient = orient; };
|
|
||||||
void SetPrinterScaling(double x, double y) { m_printerScaleX = x; m_printerScaleY = y; };
|
|
||||||
void SetPrinterTranslation(wxCoord x, wxCoord y) { m_printerTranslateX = x; m_printerTranslateY = y; };
|
|
||||||
// 1 = Preview, 2 = print to file, 3 = send to printer
|
|
||||||
void SetPrinterMode(int mode) { m_printerMode = mode; };
|
|
||||||
void SetAFMPath(const wxString& f) { m_afmPath = f; };
|
|
||||||
void SetColour(bool col) { m_printColour = col; };
|
|
||||||
|
|
||||||
// Get current values
|
|
||||||
wxString GetPrinterCommand() const { return m_printerCommand; } ;
|
|
||||||
wxString GetPrintPreviewCommand() const { return m_previewCommand; } ;
|
|
||||||
wxString GetPrinterOptions() const { return m_printerFlags; };
|
|
||||||
wxString GetPrinterFile() const { return m_printerFile; };
|
|
||||||
wxString GetPaperName() const { return m_paperName; }
|
|
||||||
int GetPrinterOrientation() const { return m_printerOrient; };
|
|
||||||
void GetPrinterScaling(double* x, double* y) const { *x = m_printerScaleX; *y = m_printerScaleY; };
|
|
||||||
void GetPrinterTranslation(wxCoord *x, wxCoord *y) const { *x = m_printerTranslateX; *y = m_printerTranslateY; };
|
|
||||||
int GetPrinterMode() const { return m_printerMode; };
|
|
||||||
wxString GetAFMPath() const { return m_afmPath; };
|
|
||||||
bool GetColour() const { return m_printColour; };
|
|
||||||
|
|
||||||
void operator=(wxPrintSetupData& data);
|
|
||||||
|
|
||||||
// Initialize from a wxPrintData object (wxPrintData should now be used instead of wxPrintSetupData).
|
|
||||||
// There is also an operator for initializing a wxPrintData from a wxPrintSetupData.
|
|
||||||
void operator=(const wxPrintData& data);
|
|
||||||
|
|
||||||
#ifndef __WIN16__
|
|
||||||
void GetPrinterTranslation(long *x, long *y) const
|
|
||||||
{ *x = m_printerTranslateX; *y = m_printerTranslateY; }
|
|
||||||
#endif // !Win16
|
|
||||||
|
|
||||||
public:
|
|
||||||
wxString m_printerCommand;
|
|
||||||
wxString m_previewCommand;
|
|
||||||
wxString m_printerFlags;
|
|
||||||
wxString m_printerFile;
|
|
||||||
int m_printerOrient;
|
|
||||||
double m_printerScaleX;
|
|
||||||
double m_printerScaleY;
|
|
||||||
wxCoord m_printerTranslateX;
|
|
||||||
wxCoord m_printerTranslateY;
|
|
||||||
// 1 = Preview, 2 = print to file, 3 = send to printer
|
|
||||||
int m_printerMode;
|
|
||||||
wxString m_afmPath;
|
|
||||||
// A name in the paper database (see paper.h)
|
|
||||||
wxString m_paperName;
|
|
||||||
bool m_printColour;
|
|
||||||
|
|
||||||
DECLARE_DYNAMIC_CLASS(wxPrintSetupData)
|
|
||||||
};
|
|
||||||
|
|
||||||
WXDLLEXPORT_DATA(extern wxPrintSetupData*) wxThePrintSetupData;
|
|
||||||
WXDLLEXPORT extern void wxInitializePrintSetupData(bool init = TRUE);
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
// wxUSE_POSTSCRIPT
|
// wxUSE_POSTSCRIPT
|
||||||
|
|
||||||
|
@@ -780,7 +780,7 @@ void MyFrame::OnFindDialog(wxFindDialogEvent& event)
|
|||||||
if ( type == wxEVT_COMMAND_FIND || type == wxEVT_COMMAND_FIND_NEXT )
|
if ( type == wxEVT_COMMAND_FIND || type == wxEVT_COMMAND_FIND_NEXT )
|
||||||
{
|
{
|
||||||
wxLogMessage(wxT("Find %s'%s' (flags: %s)"),
|
wxLogMessage(wxT("Find %s'%s' (flags: %s)"),
|
||||||
type == wxEVT_COMMAND_FIND_NEXT ? _T("next ") : "",
|
type == wxEVT_COMMAND_FIND_NEXT ? wxT("next ") : wxT(""),
|
||||||
event.GetFindString().c_str(),
|
event.GetFindString().c_str(),
|
||||||
DecodeFindDialogEventFlags(event.GetFlags()).c_str());
|
DecodeFindDialogEventFlags(event.GetFlags()).c_str());
|
||||||
}
|
}
|
||||||
@@ -788,7 +788,7 @@ void MyFrame::OnFindDialog(wxFindDialogEvent& event)
|
|||||||
type == wxEVT_COMMAND_FIND_REPLACE_ALL )
|
type == wxEVT_COMMAND_FIND_REPLACE_ALL )
|
||||||
{
|
{
|
||||||
wxLogMessage(wxT("Replace %s'%s' with '%s' (flags: %s)"),
|
wxLogMessage(wxT("Replace %s'%s' with '%s' (flags: %s)"),
|
||||||
type == wxEVT_COMMAND_FIND_REPLACE_ALL ? _T("all ") : "",
|
type == wxEVT_COMMAND_FIND_REPLACE_ALL ? _T("all ") : wxT(""),
|
||||||
event.GetFindString().c_str(),
|
event.GetFindString().c_str(),
|
||||||
event.GetReplaceString().c_str(),
|
event.GetReplaceString().c_str(),
|
||||||
DecodeFindDialogEventFlags(event.GetFlags()).c_str());
|
DecodeFindDialogEventFlags(event.GetFlags()).c_str());
|
||||||
|
@@ -79,16 +79,6 @@ bool MyApp::OnInit(void)
|
|||||||
g_printData = new wxPrintData;
|
g_printData = new wxPrintData;
|
||||||
g_pageSetupData = new wxPageSetupDialogData;
|
g_pageSetupData = new wxPageSetupDialogData;
|
||||||
|
|
||||||
// wxGetenv( wxT("HOME") );
|
|
||||||
|
|
||||||
// Compatibility with old system. In fact, we might keep wxThePrintSetupData
|
|
||||||
// just for useful default values which we can optionally assign to our
|
|
||||||
// own print data object.
|
|
||||||
|
|
||||||
#if defined(__WXGTK__) || defined(__WXMOTIF__)
|
|
||||||
(*g_printData) = * wxThePrintSetupData;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
// Create the main frame window
|
// Create the main frame window
|
||||||
frame = new MyFrame((wxFrame *) NULL, (char *) "wxWindows Printing Demo", wxPoint(0, 0), wxSize(400, 400));
|
frame = new MyFrame((wxFrame *) NULL, (char *) "wxWindows Printing Demo", wxPoint(0, 0), wxSize(400, 400));
|
||||||
|
|
||||||
@@ -492,8 +482,6 @@ void MyPrintout::DrawPageTwo(wxDC *dc)
|
|||||||
dc->DrawLine(50, 250, (long)(50.0 + logUnits), 250);
|
dc->DrawLine(50, 250, (long)(50.0 + logUnits), 250);
|
||||||
dc->DrawLine(50, 250, 50, (long)(250.0 + logUnits));
|
dc->DrawLine(50, 250, 50, (long)(250.0 + logUnits));
|
||||||
|
|
||||||
return;
|
|
||||||
|
|
||||||
dc->SetFont(* wxGetApp().m_testFont);
|
dc->SetFont(* wxGetApp().m_testFont);
|
||||||
dc->SetBackgroundMode(wxTRANSPARENT);
|
dc->SetBackgroundMode(wxTRANSPARENT);
|
||||||
|
|
||||||
|
@@ -631,7 +631,7 @@ void MyTextCtrl::OnMouseEvent(wxMouseEvent& ev)
|
|||||||
void MyTextCtrl::OnSetFocus(wxFocusEvent& event)
|
void MyTextCtrl::OnSetFocus(wxFocusEvent& event)
|
||||||
{
|
{
|
||||||
if ( ms_logFocus )
|
if ( ms_logFocus )
|
||||||
wxLogMessage("%p got focus.", this);
|
wxLogMessage( wxT("%p got focus."), this);
|
||||||
|
|
||||||
event.Skip();
|
event.Skip();
|
||||||
}
|
}
|
||||||
@@ -639,7 +639,7 @@ void MyTextCtrl::OnSetFocus(wxFocusEvent& event)
|
|||||||
void MyTextCtrl::OnKillFocus(wxFocusEvent& event)
|
void MyTextCtrl::OnKillFocus(wxFocusEvent& event)
|
||||||
{
|
{
|
||||||
if ( ms_logFocus )
|
if ( ms_logFocus )
|
||||||
wxLogMessage("%p lost focus", this);
|
wxLogMessage( wxT("%p lost focus"), this);
|
||||||
|
|
||||||
event.Skip();
|
event.Skip();
|
||||||
}
|
}
|
||||||
@@ -657,6 +657,7 @@ void MyTextCtrl::OnText(wxCommandEvent& event)
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
// wxLogMessage( event.GetString() );
|
||||||
wxLogMessage(_T("Text changed in some control"));
|
wxLogMessage(_T("Text changed in some control"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -43,17 +43,8 @@
|
|||||||
#include "wx/fontdlg.h"
|
#include "wx/fontdlg.h"
|
||||||
#endif // wxUSE_FONTDLG
|
#endif // wxUSE_FONTDLG
|
||||||
|
|
||||||
// For compatibility
|
|
||||||
#if (defined(__WXMOTIF__) || defined(__WXMGL__) || defined(__WXGTK__) || defined(__WXX11__)|| defined(__WXPM__) || defined(__WXMAC__)) && wxUSE_POSTSCRIPT
|
|
||||||
#define wxCOMPATIBILITY_WITH_PRINTSETUPDATA 1
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if wxUSE_PRINTING_ARCHITECTURE
|
#if wxUSE_PRINTING_ARCHITECTURE
|
||||||
#include "wx/paper.h"
|
#include "wx/paper.h"
|
||||||
|
|
||||||
#if wxCOMPATIBILITY_WITH_PRINTSETUPDATA
|
|
||||||
#include "wx/generic/dcpsg.h"
|
|
||||||
#endif
|
|
||||||
#endif // wxUSE_PRINTING_ARCHITECTURE
|
#endif // wxUSE_PRINTING_ARCHITECTURE
|
||||||
|
|
||||||
#ifdef __WXMSW__
|
#ifdef __WXMSW__
|
||||||
@@ -264,11 +255,26 @@ wxPrintData::wxPrintData()
|
|||||||
m_paperSize = wxSize(210, 297);
|
m_paperSize = wxSize(210, 297);
|
||||||
|
|
||||||
// PostScript-specific data
|
// PostScript-specific data
|
||||||
m_printerCommand = "";
|
m_previewCommand = wxT("");
|
||||||
m_previewCommand = "";
|
m_filename = wxT("");
|
||||||
m_printerOptions = "";
|
#ifdef __VMS__
|
||||||
m_filename = "";
|
m_printerCommand = wxT("print");
|
||||||
m_afmPath = "";
|
m_printerOptions = wxT("/nonotify/queue=psqueue");
|
||||||
|
m_afmPath = wxT("sys$ps_font_metrics:");
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifdef __WXMSW__
|
||||||
|
m_printerCommand = wxT("print");
|
||||||
|
m_printerOptions = wxT("");
|
||||||
|
m_afmPath = wxT("c:\\windows\\system\\");
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#if !defined(__VMS__) && !defined(__WXMSW__)
|
||||||
|
m_printerCommand = wxT("lpr");
|
||||||
|
m_printerOptions = wxT("");
|
||||||
|
m_afmPath = wxT("");
|
||||||
|
#endif
|
||||||
|
|
||||||
m_printerScaleX = 1.0;
|
m_printerScaleX = 1.0;
|
||||||
m_printerScaleY = 1.0;
|
m_printerScaleY = 1.0;
|
||||||
m_printerTranslateX = 0;
|
m_printerTranslateX = 0;
|
||||||
@@ -839,32 +845,6 @@ void wxPrintData::operator=(const wxPrintData& data)
|
|||||||
m_printMode = data.m_printMode;
|
m_printMode = data.m_printMode;
|
||||||
}
|
}
|
||||||
|
|
||||||
// For compatibility
|
|
||||||
#if wxCOMPATIBILITY_WITH_PRINTSETUPDATA
|
|
||||||
void wxPrintData::operator=(const wxPrintSetupData& setupData)
|
|
||||||
{
|
|
||||||
SetPrinterCommand(setupData.GetPrinterCommand());
|
|
||||||
SetPreviewCommand(setupData.GetPrintPreviewCommand());
|
|
||||||
SetPrinterOptions(setupData.GetPrinterOptions());
|
|
||||||
|
|
||||||
long xt, yt;
|
|
||||||
setupData.GetPrinterTranslation(& xt, & yt);
|
|
||||||
SetPrinterTranslation(xt, yt);
|
|
||||||
|
|
||||||
double xs, ys;
|
|
||||||
setupData.GetPrinterScaling(& xs, & ys);
|
|
||||||
SetPrinterScaling(xs, ys);
|
|
||||||
|
|
||||||
SetOrientation(setupData.GetPrinterOrientation());
|
|
||||||
SetPrintMode((wxPrintMode) setupData.GetPrinterMode());
|
|
||||||
SetFontMetricPath(setupData.GetAFMPath());
|
|
||||||
if (setupData.GetPaperName() != "")
|
|
||||||
SetPaperId(wxThePrintPaperDatabase->ConvertNameToId(setupData.GetPaperName()));
|
|
||||||
SetColour(setupData.GetColour());
|
|
||||||
SetFilename(setupData.GetPrinterFile());
|
|
||||||
}
|
|
||||||
#endif // wxCOMPATIBILITY_WITH_PRINTSETUPDATA
|
|
||||||
|
|
||||||
// Is this data OK for showing the print dialog?
|
// Is this data OK for showing the print dialog?
|
||||||
bool wxPrintData::Ok() const
|
bool wxPrintData::Ok() const
|
||||||
{
|
{
|
||||||
|
@@ -88,8 +88,6 @@ static const char *wxPostScriptHeaderConicTo = "\
|
|||||||
/p2_y p1_y to_y p0_y sub 1 3 div mul add def\n\
|
/p2_y p1_y to_y p0_y sub 1 3 div mul add def\n\
|
||||||
p1_x p1_y p2_x p2_y to_x to_y curveto\n\
|
p1_x p1_y p2_x p2_y to_x to_y curveto\n\
|
||||||
} bind def\n\
|
} bind def\n\
|
||||||
/start_ol { gsave 1.0 72 div dup scale } bind def\n\
|
|
||||||
/end_ol { closepath fill grestore } bind def\n\
|
|
||||||
";
|
";
|
||||||
|
|
||||||
static const char *wxPostScriptHeaderEllipse = "\
|
static const char *wxPostScriptHeaderEllipse = "\
|
||||||
@@ -253,6 +251,8 @@ static char wxPostScriptHeaderReencodeISO2[] =
|
|||||||
// wxPostScriptDC
|
// wxPostScriptDC
|
||||||
//-------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
IMPLEMENT_DYNAMIC_CLASS(wxPostScriptDC, wxDC)
|
||||||
|
|
||||||
float wxPostScriptDC::ms_PSScaleFactor = 10.0;
|
float wxPostScriptDC::ms_PSScaleFactor = 10.0;
|
||||||
|
|
||||||
void wxPostScriptDC::SetResolution(int ppi)
|
void wxPostScriptDC::SetResolution(int ppi)
|
||||||
@@ -265,7 +265,7 @@ int wxPostScriptDC::GetResolution()
|
|||||||
return (int)(ms_PSScaleFactor * 72.0);
|
return (int)(ms_PSScaleFactor * 72.0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//-------------------------------------------------------------------------------
|
||||||
|
|
||||||
wxPostScriptDC::wxPostScriptDC ()
|
wxPostScriptDC::wxPostScriptDC ()
|
||||||
{
|
{
|
||||||
@@ -284,57 +284,6 @@ wxPostScriptDC::wxPostScriptDC ()
|
|||||||
|
|
||||||
m_signX = 1; // default x-axis left to right
|
m_signX = 1; // default x-axis left to right
|
||||||
m_signY = -1; // default y-axis bottom up -> top down
|
m_signY = -1; // default y-axis bottom up -> top down
|
||||||
|
|
||||||
// Compatibility only
|
|
||||||
// HH: Doesn't seem to work for wxMSW...
|
|
||||||
#if !defined(__WXMSW__)
|
|
||||||
m_printData = * wxThePrintSetupData;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
wxPostScriptDC::wxPostScriptDC (const wxString& file, bool interactive, wxWindow *parent)
|
|
||||||
{
|
|
||||||
m_pstream = (FILE*) NULL;
|
|
||||||
|
|
||||||
m_currentRed = 0;
|
|
||||||
m_currentGreen = 0;
|
|
||||||
m_currentBlue = 0;
|
|
||||||
|
|
||||||
m_pageNumber = 0;
|
|
||||||
|
|
||||||
m_clipping = FALSE;
|
|
||||||
|
|
||||||
m_underlinePosition = 0.0;
|
|
||||||
m_underlineThickness = 0.0;
|
|
||||||
|
|
||||||
m_signX = 1; // default x-axis left to right
|
|
||||||
m_signY = -1; // default y-axis bottom up -> top down
|
|
||||||
|
|
||||||
Create(file, interactive, parent);
|
|
||||||
}
|
|
||||||
|
|
||||||
bool wxPostScriptDC::Create(const wxString& file, bool interactive, wxWindow *parent)
|
|
||||||
{
|
|
||||||
m_isInteractive = interactive;
|
|
||||||
|
|
||||||
m_title = "";
|
|
||||||
m_printData.SetFilename(file);
|
|
||||||
|
|
||||||
#ifdef __WXMSW__
|
|
||||||
// Can only send to file in Windows
|
|
||||||
m_printData.SetPrintMode(wxPRINT_MODE_FILE);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (m_isInteractive)
|
|
||||||
{
|
|
||||||
if ((m_ok = PrinterDialog (parent) ) == FALSE) return FALSE;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
m_ok = TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
return m_ok;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
wxPostScriptDC::wxPostScriptDC (const wxPrintData& printData)
|
wxPostScriptDC::wxPostScriptDC (const wxPrintData& printData)
|
||||||
@@ -374,54 +323,6 @@ bool wxPostScriptDC::Ok() const
|
|||||||
return m_ok;
|
return m_ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
// This dialog is deprecated now: use wxGenericPrintDialog or the printing framework
|
|
||||||
bool wxPostScriptDC::PrinterDialog(wxWindow *parent)
|
|
||||||
{
|
|
||||||
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) return FALSE;
|
|
||||||
|
|
||||||
if ((m_printData.GetFilename() == "") &&
|
|
||||||
(m_printData.GetPrintMode() == wxPRINT_MODE_PREVIEW ||
|
|
||||||
m_printData.GetPrintMode() == wxPRINT_MODE_PRINTER))
|
|
||||||
{
|
|
||||||
// steve, 05.09.94
|
|
||||||
#ifdef __VMS__
|
|
||||||
m_printData.SetFilename("preview");
|
|
||||||
#else
|
|
||||||
// For PS_PRINTER action this depends on a Unix-style print spooler
|
|
||||||
// since the wx_printer_file can be destroyed during a session
|
|
||||||
// @@@ TODO: a Windows-style answer for non-Unix
|
|
||||||
wxChar userId[256];
|
|
||||||
wxGetUserId (userId, sizeof (userId) / sizeof (char));
|
|
||||||
wxChar tmp[256];
|
|
||||||
wxStrcpy (tmp, wxT("/tmp/preview_"));
|
|
||||||
wxStrcat (tmp, userId);
|
|
||||||
m_printData.SetFilename(tmp);
|
|
||||||
#endif
|
|
||||||
wxChar tmp2[256];
|
|
||||||
wxStrcpy(tmp2, m_printData.GetFilename());
|
|
||||||
wxStrcat (tmp2, wxT(".ps"));
|
|
||||||
m_printData.SetFilename(tmp2);
|
|
||||||
}
|
|
||||||
else if ((m_printData.GetFilename() == wxT("")) && (m_printData.GetPrintMode() == wxPRINT_MODE_FILE))
|
|
||||||
{
|
|
||||||
wxString file = wxSaveFileSelector (_("PostScript"), wxT("ps"));
|
|
||||||
if ( file.IsEmpty() )
|
|
||||||
{
|
|
||||||
m_ok = FALSE;
|
|
||||||
return FALSE;
|
|
||||||
}
|
|
||||||
|
|
||||||
m_printData.SetFilename(file);
|
|
||||||
m_ok = TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
return m_ok;
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxPostScriptDC::DoSetClippingRegion (wxCoord x, wxCoord y, wxCoord w, wxCoord h)
|
void wxPostScriptDC::DoSetClippingRegion (wxCoord x, wxCoord y, wxCoord w, wxCoord h)
|
||||||
{
|
{
|
||||||
wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") );
|
wxCHECK_RET( m_ok && m_pstream, wxT("invalid postscript dc") );
|
||||||
@@ -1193,9 +1094,13 @@ void wxPostScriptDC::SetBrush( const wxBrush& brush )
|
|||||||
|
|
||||||
#ifdef __WXGTK20__
|
#ifdef __WXGTK20__
|
||||||
|
|
||||||
|
#define PANGO_ENABLE_ENGINE
|
||||||
|
|
||||||
#include "wx/gtk/private.h"
|
#include "wx/gtk/private.h"
|
||||||
#include "wx/fontutil.h"
|
#include "wx/fontutil.h"
|
||||||
#include "gtk/gtk.h"
|
#include "gtk/gtk.h"
|
||||||
|
//#include "gtk/gdk/gdkx.h"
|
||||||
|
//#include <pango/pangoxft.h>
|
||||||
#include <pango/pangoft2.h>
|
#include <pango/pangoft2.h>
|
||||||
#include <freetype/ftglyph.h>
|
#include <freetype/ftglyph.h>
|
||||||
|
|
||||||
@@ -1263,7 +1168,7 @@ static int paps_cubic_to( FT_Vector* control1,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void draw_bezier_outline(FILE *OUT,
|
void draw_bezier_outline(FILE *OUT,
|
||||||
int dpi,
|
int dpi,
|
||||||
FT_Face face,
|
FT_Face face,
|
||||||
FT_UInt glyph_index,
|
FT_UInt glyph_index,
|
||||||
@@ -1289,19 +1194,17 @@ static void draw_bezier_outline(FILE *OUT,
|
|||||||
outline_info.dpi = dpi;
|
outline_info.dpi = dpi;
|
||||||
outline_info.OUT = OUT;
|
outline_info.OUT = OUT;
|
||||||
|
|
||||||
fprintf(OUT, "gsave %d %d translate 0 0 0 setrgbcolor\n", pos_x, pos_y);
|
fprintf(OUT, "gsave %d %d translate 1.0 72.0 div dup scale 0 0 0 setrgbcolor\n", pos_x, pos_y );
|
||||||
fprintf(OUT, "start_ol\n");
|
|
||||||
|
|
||||||
FT_Load_Glyph(face, glyph_index, load_flags);
|
FT_Load_Glyph(face, glyph_index, load_flags);
|
||||||
FT_Get_Glyph (face->glyph, &glyph);
|
FT_Get_Glyph (face->glyph, &glyph);
|
||||||
FT_Outline_Decompose (&(((FT_OutlineGlyph)glyph)->outline),
|
FT_Outline_Decompose (&(((FT_OutlineGlyph)glyph)->outline),
|
||||||
&outlinefunc, &outline_info);
|
&outlinefunc, &outline_info);
|
||||||
fprintf(OUT, "end_ol grestore \n");
|
fprintf(OUT, "closepath fill grestore \n");
|
||||||
|
|
||||||
FT_Done_Glyph (glyph);
|
FT_Done_Glyph (glyph);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
void wxPostScriptDC::DoDrawText( const wxString& text, wxCoord x, wxCoord y )
|
void wxPostScriptDC::DoDrawText( const wxString& text, wxCoord x, wxCoord y )
|
||||||
@@ -1310,11 +1213,9 @@ void wxPostScriptDC::DoDrawText( const wxString& text, wxCoord x, wxCoord y )
|
|||||||
|
|
||||||
#ifdef __WXGTK20__
|
#ifdef __WXGTK20__
|
||||||
|
|
||||||
int dpi = GetResolution() * 2;
|
int dpi = GetResolution();
|
||||||
dpi = 300;
|
|
||||||
|
|
||||||
PangoContext *context = pango_ft2_get_context ( dpi, dpi );
|
PangoContext *context = pango_ft2_get_context ( dpi, dpi );
|
||||||
|
|
||||||
|
|
||||||
// What are these for?
|
// What are these for?
|
||||||
pango_context_set_language (context, pango_language_from_string ("en_US"));
|
pango_context_set_language (context, pango_language_from_string ("en_US"));
|
||||||
@@ -1324,7 +1225,7 @@ void wxPostScriptDC::DoDrawText( const wxString& text, wxCoord x, wxCoord y )
|
|||||||
pango_context_set_font_description (context, m_font.GetNativeFontInfo()->description );
|
pango_context_set_font_description (context, m_font.GetNativeFontInfo()->description );
|
||||||
|
|
||||||
// Create layout
|
// Create layout
|
||||||
PangoLayout *layout = layout = pango_layout_new (context);
|
PangoLayout *layout = pango_layout_new (context);
|
||||||
#if wxUSE_UNICODE
|
#if wxUSE_UNICODE
|
||||||
wxCharBuffer buffer = wxConvUTF8.cWC2MB( text );
|
wxCharBuffer buffer = wxConvUTF8.cWC2MB( text );
|
||||||
#else
|
#else
|
||||||
@@ -1332,9 +1233,12 @@ void wxPostScriptDC::DoDrawText( const wxString& text, wxCoord x, wxCoord y )
|
|||||||
#endif
|
#endif
|
||||||
pango_layout_set_text( layout, (const char*) buffer, strlen(buffer) );
|
pango_layout_set_text( layout, (const char*) buffer, strlen(buffer) );
|
||||||
|
|
||||||
#if 0
|
#if 1
|
||||||
double xx = LogicalToDeviceX(x);
|
int xx = LogicalToDeviceX(x);
|
||||||
double yy = LogicalToDeviceY(y /*+ bitmap.GetHeight()*/ );
|
int yy = LogicalToDeviceY(y /*+ bitmap.GetHeight()*/ );
|
||||||
|
|
||||||
|
xx *= PANGO_SCALE;
|
||||||
|
yy *= PANGO_SCALE;
|
||||||
|
|
||||||
// Loop over lines in layout
|
// Loop over lines in layout
|
||||||
int num_lines = pango_layout_get_line_count( layout );
|
int num_lines = pango_layout_get_line_count( layout );
|
||||||
@@ -1357,13 +1261,13 @@ void wxPostScriptDC::DoDrawText( const wxString& text, wxCoord x, wxCoord y )
|
|||||||
for (int glyph_idx = 0; glyph_idx < num_glyphs; glyph_idx++)
|
for (int glyph_idx = 0; glyph_idx < num_glyphs; glyph_idx++)
|
||||||
{
|
{
|
||||||
PangoGlyphGeometry geometry = glyphs->glyphs[glyph_idx].geometry;
|
PangoGlyphGeometry geometry = glyphs->glyphs[glyph_idx].geometry;
|
||||||
double pos_x = xx + 1.0 * geometry.x_offset / PANGO_SCALE;
|
int pos_x = xx + geometry.x_offset;
|
||||||
double pos_y = yy - 1.0 * geometry.y_offset / PANGO_SCALE;
|
int pos_y = yy - geometry.y_offset;
|
||||||
xx += 1.0 * geometry.width / PANGO_SCALE;
|
xx += geometry.width;
|
||||||
|
|
||||||
draw_bezier_outline( m_pstream, dpi, ft_face,
|
draw_bezier_outline( m_pstream, dpi, ft_face,
|
||||||
(FT_UInt)(glyphs->glyphs[glyph_idx].glyph),
|
(FT_UInt)(glyphs->glyphs[glyph_idx].glyph),
|
||||||
(wxCoord)pos_x, (wxCoord)pos_y );
|
(wxCoord)(pos_x / PANGO_SCALE), (wxCoord)(pos_y / PANGO_SCALE) );
|
||||||
}
|
}
|
||||||
runs_list = runs_list->next;
|
runs_list = runs_list->next;
|
||||||
}
|
}
|
||||||
@@ -1863,6 +1767,20 @@ bool wxPostScriptDC::StartDoc( const wxString& message )
|
|||||||
|
|
||||||
m_ok = TRUE;
|
m_ok = TRUE;
|
||||||
|
|
||||||
|
fprintf( m_pstream, "%%!PS-Adobe-2.0\n" );
|
||||||
|
fprintf( m_pstream, "%%%%Title: %s\n", (const char *) m_title.ToAscii() );
|
||||||
|
fprintf( m_pstream, "%%%%Creator: wxWindows PostScript renderer\n" );
|
||||||
|
fprintf( m_pstream, "%%%%CreationDate: %s\n", (const char *) wxNow().ToAscii() );
|
||||||
|
if (m_printData.GetOrientation() == wxLANDSCAPE)
|
||||||
|
fprintf( m_pstream, "%%%%Orientation: Landscape\n" );
|
||||||
|
else
|
||||||
|
fprintf( m_pstream, "%%%%Orientation: Portrait\n" );
|
||||||
|
|
||||||
|
// wxPaperSize ps = m_printData.GetPaperId();
|
||||||
|
// if (ps == ...)
|
||||||
|
fprintf( m_pstream, "%%%%DocumentPaperSizes: %s\n", "A4" );
|
||||||
|
fprintf( m_pstream, "%%%%EndComments\n\n" );
|
||||||
|
|
||||||
fprintf( m_pstream, "%%%%BeginProlog\n" );
|
fprintf( m_pstream, "%%%%BeginProlog\n" );
|
||||||
fprintf( m_pstream, wxPostScriptHeaderConicTo );
|
fprintf( m_pstream, wxPostScriptHeaderConicTo );
|
||||||
fprintf( m_pstream, wxPostScriptHeaderEllipse );
|
fprintf( m_pstream, wxPostScriptHeaderEllipse );
|
||||||
@@ -1903,15 +1821,7 @@ void wxPostScriptDC::EndDoc ()
|
|||||||
fclose( m_pstream );
|
fclose( m_pstream );
|
||||||
m_pstream = (FILE *) NULL;
|
m_pstream = (FILE *) NULL;
|
||||||
|
|
||||||
wxChar *header_file = wxGetTempFileName("ps");
|
#if 0
|
||||||
|
|
||||||
m_pstream = wxFopen( header_file, wxT("w+") );
|
|
||||||
|
|
||||||
fprintf( m_pstream, "%%!PS-Adobe-2.0\n" ); // PostScript magic strings
|
|
||||||
fprintf( m_pstream, "%%%%Title: %s\n", (const char *)m_title.mb_str() );
|
|
||||||
fprintf( m_pstream, "%%%%Creator: wxWindows PostScript renderer\n" );
|
|
||||||
fprintf( m_pstream, "%%%%CreationDate: %s\n", (const char *)wxNow().mb_str() );
|
|
||||||
|
|
||||||
|
|
||||||
// THE FOLLOWING HAS BEEN CONTRIBUTED BY Andy Fyfe <andy@hyperparallel.com>
|
// THE FOLLOWING HAS BEEN CONTRIBUTED BY Andy Fyfe <andy@hyperparallel.com>
|
||||||
|
|
||||||
@@ -1924,11 +1834,6 @@ void wxPostScriptDC::EndDoc ()
|
|||||||
wx_printer_scale_x = m_printData.GetPrinterScaleX();
|
wx_printer_scale_x = m_printData.GetPrinterScaleX();
|
||||||
wx_printer_scale_y = m_printData.GetPrinterScaleY();
|
wx_printer_scale_y = m_printData.GetPrinterScaleY();
|
||||||
|
|
||||||
if (m_printData.GetOrientation() == wxLANDSCAPE)
|
|
||||||
fprintf( m_pstream, "%%%%Orientation: Landscape\n" );
|
|
||||||
else
|
|
||||||
fprintf( m_pstream, "%%%%Orientation: Portrait\n" );
|
|
||||||
|
|
||||||
// Compute the bounding box. Note that it is in the default user
|
// Compute the bounding box. Note that it is in the default user
|
||||||
// coordinate system, thus we have to convert the values.
|
// coordinate system, thus we have to convert the values.
|
||||||
wxCoord minX = (wxCoord) LogicalToDeviceX(m_minX);
|
wxCoord minX = (wxCoord) LogicalToDeviceX(m_minX);
|
||||||
@@ -1972,7 +1877,6 @@ void wxPostScriptDC::EndDoc ()
|
|||||||
(wxCoord)floor((double)llx), (wxCoord)floor((double)lly),
|
(wxCoord)floor((double)llx), (wxCoord)floor((double)lly),
|
||||||
(wxCoord)ceil((double)urx), (wxCoord)ceil((double)ury) );
|
(wxCoord)ceil((double)urx), (wxCoord)ceil((double)ury) );
|
||||||
fprintf( m_pstream, "%%%%Pages: %d\n", (wxPageNumber - 1) );
|
fprintf( m_pstream, "%%%%Pages: %d\n", (wxPageNumber - 1) );
|
||||||
fprintf( m_pstream, "%%%%EndComments\n\n" );
|
|
||||||
|
|
||||||
// To check the correctness of the bounding box, postscript commands
|
// To check the correctness of the bounding box, postscript commands
|
||||||
// to draw a box corresponding to the bounding box are generated below.
|
// to draw a box corresponding to the bounding box are generated below.
|
||||||
@@ -1986,17 +1890,6 @@ void wxPostScriptDC::EndDoc ()
|
|||||||
fprintf( m_pstream, "%% %d %d lineto\n", urx, ury );
|
fprintf( m_pstream, "%% %d %d lineto\n", urx, ury );
|
||||||
fprintf( m_pstream, "%% %d %d lineto closepath stroke\n", llx, ury );
|
fprintf( m_pstream, "%% %d %d lineto closepath stroke\n", llx, ury );
|
||||||
|
|
||||||
fclose( m_pstream );
|
|
||||||
m_pstream = (FILE*) NULL;
|
|
||||||
|
|
||||||
wxChar *tmp_file = wxGetTempFileName("ps");
|
|
||||||
|
|
||||||
// Paste header Before wx_printer_file
|
|
||||||
wxConcatFiles (header_file, m_printData.GetFilename(), tmp_file );
|
|
||||||
wxRemoveFile( header_file );
|
|
||||||
wxRemoveFile( m_printData.GetFilename() );
|
|
||||||
wxRenameFile( tmp_file, m_printData.GetFilename() );
|
|
||||||
|
|
||||||
#if defined(__X__) || defined(__WXGTK__)
|
#if defined(__X__) || defined(__WXGTK__)
|
||||||
if (m_ok)
|
if (m_ok)
|
||||||
{
|
{
|
||||||
@@ -2047,6 +1940,8 @@ void wxPostScriptDC::EndDoc ()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
void wxPostScriptDC::StartPage()
|
void wxPostScriptDC::StartPage()
|
||||||
@@ -2213,16 +2108,16 @@ void wxPostScriptDC::DoGetTextExtent(const wxString& string,
|
|||||||
double UnderlinePosition = 0.0;
|
double UnderlinePosition = 0.0;
|
||||||
double UnderlineThickness = 0.0;
|
double UnderlineThickness = 0.0;
|
||||||
|
|
||||||
/* get actual parameters */
|
// Get actual parameters
|
||||||
int Family = fontToUse->GetFamily();
|
int Family = fontToUse->GetFamily();
|
||||||
int Size = fontToUse->GetPointSize();
|
int Size = fontToUse->GetPointSize();
|
||||||
int Style = fontToUse->GetStyle();
|
int Style = fontToUse->GetStyle();
|
||||||
int Weight = fontToUse->GetWeight();
|
int Weight = fontToUse->GetWeight();
|
||||||
|
|
||||||
/* if we have another font, read the font-metrics */
|
// If we have another font, read the font-metrics
|
||||||
if (Family!=lastFamily || Size!=lastSize || Style!=lastStyle || Weight!=lastWeight)
|
if (Family!=lastFamily || Size!=lastSize || Style!=lastStyle || Weight!=lastWeight)
|
||||||
{
|
{
|
||||||
/* store actual values */
|
// Store actual values
|
||||||
lastFamily = Family;
|
lastFamily = Family;
|
||||||
lastSize = Size;
|
lastSize = Size;
|
||||||
lastStyle = Style;
|
lastStyle = Style;
|
||||||
@@ -2266,13 +2161,32 @@ void wxPostScriptDC::DoGetTextExtent(const wxString& string,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* get the directory of the AFM files */
|
FILE *afmFile = NULL;
|
||||||
wxString afmName = wxEmptyString;
|
|
||||||
|
// Get the directory of the AFM files
|
||||||
|
wxString afmName;
|
||||||
if (!m_printData.GetFontMetricPath().IsEmpty())
|
if (!m_printData.GetFontMetricPath().IsEmpty())
|
||||||
{
|
{
|
||||||
afmName = m_printData.GetFontMetricPath();
|
afmName = m_printData.GetFontMetricPath();
|
||||||
|
afmName << wxFILE_SEP_PATH << name;
|
||||||
|
afmFile = wxFopen(afmName,wxT("r"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#if defined(__UNIX__) && !defined(__VMS__)
|
||||||
|
if (afmFile==NULL)
|
||||||
|
{
|
||||||
|
afmName = wxGetDataDir();
|
||||||
|
afmName << wxFILE_SEP_PATH
|
||||||
|
#if defined(__LINUX__) || defined(__FREEBSD__)
|
||||||
|
<< wxT("gs_afm") << wxFILE_SEP_PATH
|
||||||
|
#else
|
||||||
|
<< wxT("afm") << wxFILE_SEP_PATH
|
||||||
|
#endif
|
||||||
|
<< name;
|
||||||
|
afmFile = wxFopen(afmName,wxT("r"));
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/* 2. open and process the file
|
/* 2. open and process the file
|
||||||
/ a short explanation of the AFM format:
|
/ a short explanation of the AFM format:
|
||||||
/ we have for each character a line, which gives its size
|
/ we have for each character a line, which gives its size
|
||||||
@@ -2286,37 +2200,6 @@ void wxPostScriptDC::DoGetTextExtent(const wxString& string,
|
|||||||
/
|
/
|
||||||
/ when the font has changed, we read in the right AFM file and store the
|
/ when the font has changed, we read in the right AFM file and store the
|
||||||
/ character widths in an array, which is processed below (see point 3.). */
|
/ character widths in an array, which is processed below (see point 3.). */
|
||||||
|
|
||||||
/* new elements JC Sun Aug 25 23:21:44 MET DST 1996 */
|
|
||||||
|
|
||||||
afmName << name;
|
|
||||||
FILE *afmFile = wxFopen(afmName,wxT("r"));
|
|
||||||
|
|
||||||
if (afmFile==NULL)
|
|
||||||
{
|
|
||||||
afmName = wxThePrintSetupData->GetAFMPath();
|
|
||||||
afmName << wxFILE_SEP_PATH << name;
|
|
||||||
afmFile = wxFopen(afmName,wxT("r"));
|
|
||||||
}
|
|
||||||
|
|
||||||
#if defined(__UNIX__) && !defined(__VMS__)
|
|
||||||
if (afmFile==NULL)
|
|
||||||
/* please do NOT change the line above to "else if (afmFile==NULL)" -
|
|
||||||
- afmFile = fopen() may fail and in that case the next if branch
|
|
||||||
MUST be executed - and it would not if there was "else" */
|
|
||||||
{
|
|
||||||
afmName = wxGetDataDir();
|
|
||||||
afmName << wxFILE_SEP_PATH
|
|
||||||
#if defined(__LINUX__) || defined(__FREEBSD__)
|
|
||||||
<< wxT("gs_afm") << wxFILE_SEP_PATH
|
|
||||||
#else
|
|
||||||
<< wxT("afm") << wxFILE_SEP_PATH
|
|
||||||
#endif
|
|
||||||
<< name;
|
|
||||||
afmFile = wxFopen(afmName,wxT("r"));
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
if (afmFile==NULL)
|
if (afmFile==NULL)
|
||||||
{
|
{
|
||||||
wxLogDebug( wxT("GetTextExtent: can't open AFM file '%s'"), afmName.c_str() );
|
wxLogDebug( wxT("GetTextExtent: can't open AFM file '%s'"), afmName.c_str() );
|
||||||
@@ -2484,393 +2367,6 @@ void wxPostScriptDC::DoGetTextExtent(const wxString& string,
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
// Determine the Default Postscript Previewer
|
|
||||||
// available on the platform
|
|
||||||
#if defined(__SUN__) && defined(__XVIEW__)
|
|
||||||
// OpenWindow/NeWS's Postscript Previewer
|
|
||||||
# define PS_VIEWER_PROG "pageview"
|
|
||||||
#elif defined(__VMS__)
|
|
||||||
#define PS_VIEWER_PROG "view/format=ps/select=x_display"
|
|
||||||
#elif defined(__SGI__)
|
|
||||||
// SGI's Display Postscript Previewer
|
|
||||||
//# define PS_VIEWER_PROG "dps"
|
|
||||||
# define PS_VIEWER_PROG "xpsview"
|
|
||||||
#elif defined(__X__) || defined(__WXGTK__)
|
|
||||||
// Front-end to ghostscript
|
|
||||||
# define PS_VIEWER_PROG "ghostview"
|
|
||||||
#else
|
|
||||||
// Windows ghostscript/ghostview
|
|
||||||
# define PS_VIEWER_PROG "gsview"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
wxPrintSetupData *wxThePrintSetupData = (wxPrintSetupData *) NULL;
|
|
||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxPostScriptDC, wxDC)
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxPrintSetupData, wxObject)
|
|
||||||
|
|
||||||
// Redundant now I think
|
|
||||||
#if 1
|
|
||||||
IMPLEMENT_CLASS(wxPostScriptPrintDialog, wxDialog)
|
|
||||||
|
|
||||||
wxPostScriptPrintDialog::wxPostScriptPrintDialog (wxWindow *parent, const wxString& title,
|
|
||||||
const wxPoint& pos, const wxSize& size, wxCoord style):
|
|
||||||
wxDialog(parent, -1, title, pos, size, style)
|
|
||||||
{
|
|
||||||
wxBeginBusyCursor();
|
|
||||||
|
|
||||||
char buf[100];
|
|
||||||
int yPos = 40;
|
|
||||||
wxString
|
|
||||||
*orientation = new wxString[2],
|
|
||||||
*print_modes = new wxString[3];
|
|
||||||
int features;
|
|
||||||
wxCoord wx_printer_translate_x, wx_printer_translate_y;
|
|
||||||
double wx_printer_scale_x, wx_printer_scale_y;
|
|
||||||
|
|
||||||
orientation[0] = _("Portrait");
|
|
||||||
orientation[1] = _("Landscape");
|
|
||||||
|
|
||||||
print_modes[0] = _("Send to Printer");
|
|
||||||
print_modes[1] = _("Print to File");
|
|
||||||
print_modes[2] = _("Preview Only");
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
wxButton *okBut = new wxButton (this, wxID_OK, _("OK"), wxPoint(5, 5));
|
|
||||||
(void) new wxButton (this, wxID_CANCEL, _("Cancel"), wxPoint(40, 5));
|
|
||||||
okBut->SetDefault();
|
|
||||||
|
|
||||||
|
|
||||||
#if defined(__WXGTK__) || defined (__WXMOTIF__)
|
|
||||||
(void) new wxStaticText( this, -1, _("Printer Command: "),
|
|
||||||
wxPoint(5, yPos) );
|
|
||||||
(void) new wxTextCtrl( this, wxID_PRINTER_COMMAND, wxThePrintSetupData->GetPrinterCommand(),
|
|
||||||
wxPoint(100, yPos), wxSize(100, -1) );
|
|
||||||
|
|
||||||
(void) new wxStaticText( this, -1, _("Printer Options: "),
|
|
||||||
wxPoint(210, yPos) );
|
|
||||||
(void) new wxTextCtrl( this, wxID_PRINTER_OPTIONS, wxThePrintSetupData->GetPrinterOptions(),
|
|
||||||
wxPoint(305, yPos), wxSize(150, -1) );
|
|
||||||
|
|
||||||
yPos += 40;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
wxRadioBox *radio0 = new wxRadioBox(this, wxID_PRINTER_ORIENTATION, "Orientation: ", wxPoint(5, yPos), wxSize(-1,-1),
|
|
||||||
2,orientation,2,wxRA_SPECIFY_ROWS);
|
|
||||||
radio0->SetSelection((int)wxThePrintSetupData->GetPrinterOrientation() - 1);
|
|
||||||
|
|
||||||
// @@@ Configuration hook
|
|
||||||
if ( !wxThePrintSetupData->GetPrintPreviewCommand() )
|
|
||||||
wxThePrintSetupData->SetPrintPreviewCommand(PS_VIEWER_PROG);
|
|
||||||
|
|
||||||
// wxGetResource ("wxWindows", "PSView", &wxThePrintSetupData->m_previewCommand);
|
|
||||||
|
|
||||||
features = (wxThePrintSetupData->GetPrintPreviewCommand() &&
|
|
||||||
*wxThePrintSetupData->GetPrintPreviewCommand()) ? 3 : 2;
|
|
||||||
|
|
||||||
wxRadioBox *radio1 = new wxRadioBox(this, wxID_PRINTER_MODES, _("PostScript:"),
|
|
||||||
wxPoint(150, yPos),
|
|
||||||
wxSize(-1,-1), features,
|
|
||||||
print_modes, features, wxRA_SPECIFY_ROWS);
|
|
||||||
|
|
||||||
#ifdef __WXMSW__
|
|
||||||
radio1->Enable(0, FALSE);
|
|
||||||
if (wxThePrintSetupData->GetPrintPreviewCommand() && *wxThePrintSetupData->GetPrintPreviewCommand())
|
|
||||||
radio1->Enable(2, FALSE);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
radio1->SetSelection((int)wxThePrintSetupData->GetPrinterMode());
|
|
||||||
wxThePrintSetupData->GetPrinterTranslation(&wx_printer_translate_x, &wx_printer_translate_y);
|
|
||||||
wxThePrintSetupData->GetPrinterScaling(&wx_printer_scale_x, &wx_printer_scale_y);
|
|
||||||
|
|
||||||
sprintf (buf, "%.2f", wx_printer_scale_x);
|
|
||||||
|
|
||||||
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, yPos), wxSize(100, -1));
|
|
||||||
|
|
||||||
sprintf (buf, "%.2f", wx_printer_scale_y);
|
|
||||||
(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;
|
|
||||||
|
|
||||||
(void) new wxStaticText(this, -1, _("X Translation"), wxPoint(5, yPos));
|
|
||||||
sprintf (buf, "%.2d", wx_printer_translate_x);
|
|
||||||
/* 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(220, yPos));
|
|
||||||
sprintf (buf, "%.2d", wx_printer_translate_y);
|
|
||||||
/* wxTextCtrl *text4 = */ (void) new wxTextCtrl(this, wxID_PRINTER_Y_TRANS, buf, wxPoint(320, yPos), wxSize(100, -1));
|
|
||||||
|
|
||||||
Fit ();
|
|
||||||
|
|
||||||
delete[] orientation;
|
|
||||||
delete[] print_modes;
|
|
||||||
|
|
||||||
wxEndBusyCursor();
|
|
||||||
}
|
|
||||||
|
|
||||||
int wxPostScriptPrintDialog::ShowModal ()
|
|
||||||
{
|
|
||||||
if ( wxDialog::ShowModal() == wxID_OK )
|
|
||||||
{
|
|
||||||
// wxTextCtrl *text0 = (wxTextCtrl *)FindWindow(wxID_PRINTER_OPTIONS);
|
|
||||||
wxTextCtrl *text1 = (wxTextCtrl *)FindWindow(wxID_PRINTER_X_SCALE);
|
|
||||||
wxTextCtrl *text2 = (wxTextCtrl *)FindWindow(wxID_PRINTER_Y_SCALE);
|
|
||||||
wxTextCtrl *text3 = (wxTextCtrl *)FindWindow(wxID_PRINTER_X_TRANS);
|
|
||||||
wxTextCtrl *text4 = (wxTextCtrl *)FindWindow(wxID_PRINTER_Y_TRANS);
|
|
||||||
// wxTextCtrl *text_prt = (wxTextCtrl *)FindWindow(wxID_PRINTER_COMMAND);
|
|
||||||
wxRadioBox *radio0 = (wxRadioBox *)FindWindow(wxID_PRINTER_ORIENTATION);
|
|
||||||
wxRadioBox *radio1 = (wxRadioBox *)FindWindow(wxID_PRINTER_MODES);
|
|
||||||
|
|
||||||
StringToDouble (WXSTRINGCAST text1->GetValue (), &wxThePrintSetupData->m_printerScaleX);
|
|
||||||
StringToDouble (WXSTRINGCAST text2->GetValue (), &wxThePrintSetupData->m_printerScaleY);
|
|
||||||
|
|
||||||
long dummy;
|
|
||||||
StringToLong (WXSTRINGCAST text3->GetValue (), &dummy);
|
|
||||||
wxThePrintSetupData->m_printerTranslateX = (wxCoord)dummy;
|
|
||||||
StringToLong (WXSTRINGCAST text4->GetValue (), &dummy);
|
|
||||||
wxThePrintSetupData->m_printerTranslateY = (wxCoord)dummy;
|
|
||||||
|
|
||||||
#ifdef __X__
|
|
||||||
// wxThePrintSetupData->SetPrinterOptions(WXSTRINGCAST text0->GetValue ());
|
|
||||||
// wxThePrintSetupData->SetPrinterCommand(WXSTRINGCAST text_prt->GetValue ());
|
|
||||||
#endif
|
|
||||||
|
|
||||||
wxThePrintSetupData->SetPrinterOrientation((radio0->GetSelection() == 1 ? wxLANDSCAPE : wxPORTRAIT));
|
|
||||||
|
|
||||||
// C++ wants this
|
|
||||||
switch ( radio1->GetSelection() ) {
|
|
||||||
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_CANCEL;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
// 0 (redundant)
|
|
||||||
|
|
||||||
// PostScript printer settings
|
|
||||||
// RETAINED FOR BACKWARD COMPATIBILITY
|
|
||||||
void wxSetPrinterCommand(const wxString& cmd)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->SetPrinterCommand(cmd);
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxSetPrintPreviewCommand(const wxString& cmd)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->SetPrintPreviewCommand(cmd);
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxSetPrinterOptions(const wxString& flags)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->SetPrinterOptions(flags);
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxSetPrinterFile(const wxString& f)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->SetPrinterFile(f);
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxSetPrinterOrientation(int orient)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->SetPrinterOrientation(orient);
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxSetPrinterScaling(double x, double y)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->SetPrinterScaling(x, y);
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxSetPrinterTranslation(wxCoord x, wxCoord y)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->SetPrinterTranslation(x, y);
|
|
||||||
}
|
|
||||||
|
|
||||||
// 1 = Preview, 2 = print to file, 3 = send to printer
|
|
||||||
void wxSetPrinterMode(int mode)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->SetPrinterMode(mode);
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxSetAFMPath(const wxString& f)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->SetAFMPath(f);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Get current values
|
|
||||||
wxString wxGetPrinterCommand()
|
|
||||||
{
|
|
||||||
return wxThePrintSetupData->GetPrinterCommand();
|
|
||||||
}
|
|
||||||
|
|
||||||
wxString wxGetPrintPreviewCommand()
|
|
||||||
{
|
|
||||||
return wxThePrintSetupData->GetPrintPreviewCommand();
|
|
||||||
}
|
|
||||||
|
|
||||||
wxString wxGetPrinterOptions()
|
|
||||||
{
|
|
||||||
return wxThePrintSetupData->GetPrinterOptions();
|
|
||||||
}
|
|
||||||
|
|
||||||
wxString wxGetPrinterFile()
|
|
||||||
{
|
|
||||||
return wxThePrintSetupData->GetPrinterFile();
|
|
||||||
}
|
|
||||||
|
|
||||||
int wxGetPrinterOrientation()
|
|
||||||
{
|
|
||||||
return wxThePrintSetupData->GetPrinterOrientation();
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxGetPrinterScaling(double* x, double* y)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->GetPrinterScaling(x, y);
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxGetPrinterTranslation(wxCoord *x, wxCoord *y)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData->GetPrinterTranslation(x, y);
|
|
||||||
}
|
|
||||||
|
|
||||||
int wxGetPrinterMode()
|
|
||||||
{
|
|
||||||
return wxThePrintSetupData->GetPrinterMode();
|
|
||||||
}
|
|
||||||
|
|
||||||
wxString wxGetAFMPath()
|
|
||||||
{
|
|
||||||
return wxThePrintSetupData->GetAFMPath();
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Print setup data
|
|
||||||
*/
|
|
||||||
|
|
||||||
wxPrintSetupData::wxPrintSetupData()
|
|
||||||
{
|
|
||||||
m_printerOrient = wxPORTRAIT;
|
|
||||||
m_printerScaleX = (double)1.0;
|
|
||||||
m_printerScaleY = (double)1.0;
|
|
||||||
m_printerTranslateX = 0;
|
|
||||||
m_printerTranslateY = 0;
|
|
||||||
m_printerMode = wxPRINT_MODE_FILE;
|
|
||||||
m_printColour = TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
wxPrintSetupData::~wxPrintSetupData()
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxPrintSetupData::operator=(wxPrintSetupData& data)
|
|
||||||
{
|
|
||||||
SetPrinterCommand(data.GetPrinterCommand());
|
|
||||||
SetPrintPreviewCommand(data.GetPrintPreviewCommand());
|
|
||||||
SetPrinterOptions(data.GetPrinterOptions());
|
|
||||||
wxCoord x, y;
|
|
||||||
data.GetPrinterTranslation(&x, &y);
|
|
||||||
SetPrinterTranslation(x, y);
|
|
||||||
|
|
||||||
double x1, y1;
|
|
||||||
data.GetPrinterScaling(&x1, &y1);
|
|
||||||
SetPrinterScaling(x1, y1);
|
|
||||||
|
|
||||||
SetPrinterOrientation(data.GetPrinterOrientation());
|
|
||||||
SetPrinterMode(data.GetPrinterMode());
|
|
||||||
SetAFMPath(data.GetAFMPath());
|
|
||||||
SetPaperName(data.GetPaperName());
|
|
||||||
SetColour(data.GetColour());
|
|
||||||
}
|
|
||||||
|
|
||||||
// Initialize from a wxPrintData object (wxPrintData should now be used instead of wxPrintSetupData).
|
|
||||||
void wxPrintSetupData::operator=(const wxPrintData& data)
|
|
||||||
{
|
|
||||||
SetPrinterCommand(data.GetPrinterCommand());
|
|
||||||
SetPrintPreviewCommand(data.GetPreviewCommand());
|
|
||||||
SetPrinterOptions(data.GetPrinterOptions());
|
|
||||||
SetPrinterTranslation((wxCoord)data.GetPrinterTranslateX(),
|
|
||||||
(wxCoord)data.GetPrinterTranslateY());
|
|
||||||
SetPrinterScaling(data.GetPrinterScaleX(), data.GetPrinterScaleY());
|
|
||||||
SetPrinterOrientation(data.GetOrientation());
|
|
||||||
SetPrinterMode((int) data.GetPrintMode());
|
|
||||||
SetAFMPath(data.GetFontMetricPath());
|
|
||||||
SetPaperName(wxThePrintPaperDatabase->ConvertIdToName(data.GetPaperId()));
|
|
||||||
SetColour(data.GetColour());
|
|
||||||
SetPrinterFile(data.GetFilename());
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxInitializePrintSetupData(bool init)
|
|
||||||
{
|
|
||||||
if (init)
|
|
||||||
{
|
|
||||||
wxThePrintSetupData = new wxPrintSetupData;
|
|
||||||
|
|
||||||
wxThePrintSetupData->SetPrintPreviewCommand(PS_VIEWER_PROG);
|
|
||||||
wxThePrintSetupData->SetPrinterOrientation(wxPORTRAIT);
|
|
||||||
wxThePrintSetupData->SetPrinterMode(wxPRINT_MODE_PREVIEW);
|
|
||||||
wxThePrintSetupData->SetPaperName(_("A4 sheet, 210 x 297 mm"));
|
|
||||||
|
|
||||||
// Could have a .ini file to read in some defaults
|
|
||||||
// - and/or use environment variables, e.g. WXWIN
|
|
||||||
#ifdef __VMS__
|
|
||||||
wxThePrintSetupData->SetPrinterCommand("print");
|
|
||||||
wxThePrintSetupData->SetPrinterOptions("/nonotify/queue=psqueue");
|
|
||||||
wxThePrintSetupData->SetAFMPath("sys$ps_font_metrics:");
|
|
||||||
#endif
|
|
||||||
#ifdef __WXMSW__
|
|
||||||
wxThePrintSetupData->SetPrinterCommand("print");
|
|
||||||
wxThePrintSetupData->SetAFMPath("c:\\windows\\system\\");
|
|
||||||
wxThePrintSetupData->SetPrinterOptions("");
|
|
||||||
#endif
|
|
||||||
#if !defined(__VMS__) && !defined(__WXMSW__)
|
|
||||||
wxThePrintSetupData->SetPrinterCommand("lpr");
|
|
||||||
wxThePrintSetupData->SetPrinterOptions("");
|
|
||||||
wxThePrintSetupData->SetAFMPath("");
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (wxThePrintSetupData)
|
|
||||||
delete wxThePrintSetupData;
|
|
||||||
wxThePrintSetupData = (wxPrintSetupData *) NULL;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// A module to allow initialization/cleanup of PostScript-related
|
|
||||||
// things without calling these functions from app.cpp.
|
|
||||||
|
|
||||||
class WXDLLEXPORT wxPostScriptModule: public wxModule
|
|
||||||
{
|
|
||||||
DECLARE_DYNAMIC_CLASS(wxPostScriptModule)
|
|
||||||
public:
|
|
||||||
wxPostScriptModule() {}
|
|
||||||
bool OnInit();
|
|
||||||
void OnExit();
|
|
||||||
};
|
|
||||||
|
|
||||||
IMPLEMENT_DYNAMIC_CLASS(wxPostScriptModule, wxModule)
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Initialization/cleanup module
|
|
||||||
*/
|
|
||||||
|
|
||||||
bool wxPostScriptModule::OnInit()
|
|
||||||
{
|
|
||||||
wxInitializePrintSetupData();
|
|
||||||
|
|
||||||
return TRUE;
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxPostScriptModule::OnExit()
|
|
||||||
{
|
|
||||||
wxInitializePrintSetupData(FALSE);
|
|
||||||
}
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
// wxUSE_POSTSCRIPT
|
// wxUSE_POSTSCRIPT
|
||||||
|
|
||||||
|
@@ -61,6 +61,7 @@
|
|||||||
|
|
||||||
#include "wx/printdlg.h"
|
#include "wx/printdlg.h"
|
||||||
#include "wx/paper.h"
|
#include "wx/paper.h"
|
||||||
|
#include "wx/filename.h"
|
||||||
|
|
||||||
// For print paper things
|
// For print paper things
|
||||||
#include "wx/prntbase.h"
|
#include "wx/prntbase.h"
|
||||||
@@ -100,10 +101,6 @@ extern wxPrintPaperDatabase *wxThePrintPaperDatabase;
|
|||||||
|
|
||||||
#if wxUSE_POSTSCRIPT
|
#if wxUSE_POSTSCRIPT
|
||||||
|
|
||||||
// ============================================================================
|
|
||||||
// implementation
|
|
||||||
// ============================================================================
|
|
||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
// Generic print dialog for non-Windows printing use.
|
// Generic print dialog for non-Windows printing use.
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
@@ -175,7 +172,7 @@ void wxGenericPrintDialog::Init(wxWindow * WXUNUSED(parent))
|
|||||||
1, wxRA_VERTICAL);
|
1, wxRA_VERTICAL);
|
||||||
m_rangeRadioBox->SetSelection(1);
|
m_rangeRadioBox->SetSelection(1);
|
||||||
|
|
||||||
mainsizer->Add( m_rangeRadioBox, 0, wxLEFT|wxTOP|wxRIGHT, 10 );
|
mainsizer->Add( m_rangeRadioBox, 0, wxLEFT|wxTOP|wxRIGHT, 10 );
|
||||||
}
|
}
|
||||||
|
|
||||||
// 3) bottom row
|
// 3) bottom row
|
||||||
@@ -186,11 +183,11 @@ void wxGenericPrintDialog::Init(wxWindow * WXUNUSED(parent))
|
|||||||
{
|
{
|
||||||
bottomsizer->Add( new wxStaticText(this, wxPRINTID_STATIC, _("From:") ), 0, wxCENTER|wxALL, 5 );
|
bottomsizer->Add( new wxStaticText(this, wxPRINTID_STATIC, _("From:") ), 0, wxCENTER|wxALL, 5 );
|
||||||
m_fromText = new wxTextCtrl(this, wxPRINTID_FROM, "", wxDefaultPosition, wxSize(40, -1));
|
m_fromText = new wxTextCtrl(this, wxPRINTID_FROM, "", wxDefaultPosition, wxSize(40, -1));
|
||||||
bottomsizer->Add( m_fromText, 1, wxCENTER|wxRIGHT, 10 );
|
bottomsizer->Add( m_fromText, 1, wxCENTER|wxRIGHT, 10 );
|
||||||
|
|
||||||
bottomsizer->Add( new wxStaticText(this, wxPRINTID_STATIC, _("To:") ), 0, wxCENTER|wxALL, 5);
|
bottomsizer->Add( new wxStaticText(this, wxPRINTID_STATIC, _("To:") ), 0, wxCENTER|wxALL, 5);
|
||||||
m_toText = new wxTextCtrl(this, wxPRINTID_TO, "", wxDefaultPosition, wxSize(40, -1));
|
m_toText = new wxTextCtrl(this, wxPRINTID_TO, "", wxDefaultPosition, wxSize(40, -1));
|
||||||
bottomsizer->Add( m_toText, 1, wxCENTER|wxRIGHT, 10 );
|
bottomsizer->Add( m_toText, 1, wxCENTER|wxRIGHT, 10 );
|
||||||
}
|
}
|
||||||
|
|
||||||
bottomsizer->Add( new wxStaticText(this, wxPRINTID_STATIC, _("Copies:") ), 0, wxCENTER|wxALL, 5 );
|
bottomsizer->Add( new wxStaticText(this, wxPRINTID_STATIC, _("Copies:") ), 0, wxCENTER|wxALL, 5 );
|
||||||
@@ -233,9 +230,7 @@ int wxGenericPrintDialog::ShowModal()
|
|||||||
int ret = genericPrintSetupDialog->ShowModal();
|
int ret = genericPrintSetupDialog->ShowModal();
|
||||||
if ( ret != wxID_CANCEL )
|
if ( ret != wxID_CANCEL )
|
||||||
{
|
{
|
||||||
// Transfer settings to the global object (for compatibility) and to
|
// Transfer settings to the print dialog's print data.
|
||||||
// the print dialog's print data.
|
|
||||||
*wxThePrintSetupData = genericPrintSetupDialog->GetPrintData();
|
|
||||||
m_printDialogData.GetPrintData() = genericPrintSetupDialog->GetPrintData();
|
m_printDialogData.GetPrintData() = genericPrintSetupDialog->GetPrintData();
|
||||||
}
|
}
|
||||||
genericPrintSetupDialog->Destroy();
|
genericPrintSetupDialog->Destroy();
|
||||||
@@ -267,22 +262,18 @@ void wxGenericPrintDialog::OnOK(wxCommandEvent& WXUNUSED(event))
|
|||||||
if (m_printDialogData.GetPrintToFile())
|
if (m_printDialogData.GetPrintToFile())
|
||||||
{
|
{
|
||||||
m_printDialogData.GetPrintData().SetPrintMode(wxPRINT_MODE_FILE);
|
m_printDialogData.GetPrintData().SetPrintMode(wxPRINT_MODE_FILE);
|
||||||
wxThePrintSetupData->SetPrinterMode(wxPRINT_MODE_FILE);
|
|
||||||
|
wxFileName fname( m_printDialogData.GetPrintData().GetFilename() );
|
||||||
|
|
||||||
|
wxFileDialog dialog( this, _("PostScript file"),
|
||||||
|
fname.GetPath(), fname.GetFullName(), wxT("*.ps"), wxOPEN | wxFILE_MUST_EXIST );
|
||||||
|
if (dialog.ShowModal() != wxID_OK) return;
|
||||||
|
|
||||||
wxString f = wxFileSelector(_("PostScript file"),
|
m_printDialogData.GetPrintData().SetFilename( dialog.GetPath() );
|
||||||
wxPathOnly(wxThePrintSetupData->GetPrinterFile()),
|
|
||||||
wxFileNameFromPath(wxThePrintSetupData->GetPrinterFile()),
|
|
||||||
wxT("ps"), wxT("*.ps"), 0, this);
|
|
||||||
if ( f.IsEmpty() )
|
|
||||||
return;
|
|
||||||
|
|
||||||
m_printDialogData.GetPrintData().SetFilename(f);
|
|
||||||
wxThePrintSetupData->SetPrinterFile(f);
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_printDialogData.GetPrintData().SetPrintMode(wxPRINT_MODE_PRINTER);
|
m_printDialogData.GetPrintData().SetPrintMode(wxPRINT_MODE_PRINTER);
|
||||||
wxThePrintSetupData->SetPrinterMode(wxPRINT_MODE_PRINTER);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
EndModal(wxID_OK);
|
EndModal(wxID_OK);
|
||||||
@@ -306,17 +297,11 @@ void wxGenericPrintDialog::OnRange(wxCommandEvent& event)
|
|||||||
|
|
||||||
void wxGenericPrintDialog::OnSetup(wxCommandEvent& WXUNUSED(event))
|
void wxGenericPrintDialog::OnSetup(wxCommandEvent& WXUNUSED(event))
|
||||||
{
|
{
|
||||||
*wxThePrintSetupData = m_printDialogData.GetPrintData();
|
wxGenericPrintSetupDialog dialog( this, &m_printDialogData.GetPrintData() );
|
||||||
wxGenericPrintSetupDialog *genericPrintSetupDialog =
|
if (dialog.ShowModal() != wxID_CANCEL)
|
||||||
new wxGenericPrintSetupDialog(this, wxThePrintSetupData);
|
|
||||||
int ret = genericPrintSetupDialog->ShowModal();
|
|
||||||
if ( ret != wxID_CANCEL )
|
|
||||||
{
|
{
|
||||||
*wxThePrintSetupData = genericPrintSetupDialog->GetPrintData();
|
m_printDialogData = dialog.GetPrintData();
|
||||||
m_printDialogData = genericPrintSetupDialog->GetPrintData();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
genericPrintSetupDialog->Close(TRUE);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
bool wxGenericPrintDialog::TransferDataToWindow()
|
bool wxGenericPrintDialog::TransferDataToWindow()
|
||||||
@@ -423,19 +408,6 @@ wxDialog(parent, -1, _("Print Setup"), wxPoint(0, 0), wxSize(600, 600), wxDEFAUL
|
|||||||
Init(data);
|
Init(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Convert wxPrintSetupData to standard wxPrintData object
|
|
||||||
wxGenericPrintSetupDialog::wxGenericPrintSetupDialog(wxWindow *parent, wxPrintSetupData* data):
|
|
||||||
wxDialog(parent, -1, _("Print Setup"), wxPoint(0, 0), wxSize(600, 600), wxDEFAULT_DIALOG_STYLE|wxDIALOG_MODAL|wxTAB_TRAVERSAL)
|
|
||||||
{
|
|
||||||
wxPrintData printData;
|
|
||||||
if (data)
|
|
||||||
printData = * data;
|
|
||||||
else
|
|
||||||
printData = * wxThePrintSetupData;
|
|
||||||
|
|
||||||
Init(& printData);
|
|
||||||
}
|
|
||||||
|
|
||||||
void wxGenericPrintSetupDialog::Init(wxPrintData* data)
|
void wxGenericPrintSetupDialog::Init(wxPrintData* data)
|
||||||
{
|
{
|
||||||
if ( data )
|
if ( data )
|
||||||
@@ -482,6 +454,8 @@ void wxGenericPrintSetupDialog::Init(wxPrintData* data)
|
|||||||
|
|
||||||
okButton->SetDefault();
|
okButton->SetDefault();
|
||||||
okButton->SetFocus();
|
okButton->SetFocus();
|
||||||
|
|
||||||
|
printf( "Hello generic\n" );
|
||||||
|
|
||||||
Fit();
|
Fit();
|
||||||
Centre(wxBOTH);
|
Centre(wxBOTH);
|
||||||
@@ -536,8 +510,6 @@ bool wxGenericPrintSetupDialog::TransferDataFromWindow()
|
|||||||
m_printData.SetPaperId(wxThePrintPaperDatabase->ConvertNameToId(val));
|
m_printData.SetPaperId(wxThePrintPaperDatabase->ConvertNameToId(val));
|
||||||
}
|
}
|
||||||
|
|
||||||
// This is for backward compatibility only
|
|
||||||
*wxThePrintSetupData = GetPrintData();
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -756,32 +728,35 @@ bool wxGenericPageSetupDialog::TransferDataToWindow()
|
|||||||
bool wxGenericPageSetupDialog::TransferDataFromWindow()
|
bool wxGenericPageSetupDialog::TransferDataFromWindow()
|
||||||
{
|
{
|
||||||
if (m_marginLeftText && m_marginTopText)
|
if (m_marginLeftText && m_marginTopText)
|
||||||
m_pageData.SetMarginTopLeft(wxPoint(wxAtoi((const wxChar *)m_marginLeftText->GetValue()),wxAtoi((const wxChar *)m_marginTopText->GetValue())));
|
{
|
||||||
|
int left = wxAtoi( m_marginLeftText->GetValue().c_str() );
|
||||||
|
int top = wxAtoi( m_marginTopText->GetValue().c_str() );
|
||||||
|
m_pageData.SetMarginTopLeft( wxPoint(left,top) );
|
||||||
|
}
|
||||||
if (m_marginRightText && m_marginBottomText)
|
if (m_marginRightText && m_marginBottomText)
|
||||||
m_pageData.SetMarginBottomRight(wxPoint(wxAtoi((const wxChar *)m_marginRightText->GetValue()),wxAtoi((const wxChar *)m_marginBottomText->GetValue())));
|
{
|
||||||
|
int right = wxAtoi( m_marginRightText->GetValue().c_str() );
|
||||||
|
int bottom = wxAtoi( m_marginBottomText->GetValue().c_str() );
|
||||||
|
m_pageData.SetMarginBottomRight( wxPoint(right,bottom) );
|
||||||
|
}
|
||||||
|
|
||||||
if (m_orientationRadioBox)
|
if (m_orientationRadioBox)
|
||||||
{
|
{
|
||||||
int sel = m_orientationRadioBox->GetSelection();
|
int sel = m_orientationRadioBox->GetSelection();
|
||||||
if (sel == 0)
|
if (sel == 0)
|
||||||
{
|
{
|
||||||
#if wxUSE_POSTSCRIPT
|
|
||||||
wxThePrintSetupData->SetPrinterOrientation(wxPORTRAIT);
|
|
||||||
#endif
|
|
||||||
m_pageData.GetPrintData().SetOrientation(wxPORTRAIT);
|
m_pageData.GetPrintData().SetOrientation(wxPORTRAIT);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
#if wxUSE_POSTSCRIPT
|
|
||||||
wxThePrintSetupData->SetPrinterOrientation(wxLANDSCAPE);
|
|
||||||
#endif
|
|
||||||
m_pageData.GetPrintData().SetOrientation(wxLANDSCAPE);
|
m_pageData.GetPrintData().SetOrientation(wxLANDSCAPE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_paperTypeChoice)
|
if (m_paperTypeChoice)
|
||||||
{
|
{
|
||||||
wxString val(m_paperTypeChoice->GetStringSelection());
|
wxString val(m_paperTypeChoice->GetStringSelection());
|
||||||
if (!val.IsNull() && val != "")
|
if (!val.IsEmpty())
|
||||||
{
|
{
|
||||||
wxPrintPaperType* paper = wxThePrintPaperDatabase->FindPaperType(val);
|
wxPrintPaperType* paper = wxThePrintPaperDatabase->FindPaperType(val);
|
||||||
if ( paper )
|
if ( paper )
|
||||||
@@ -829,3 +804,4 @@ wxComboBox *wxGenericPageSetupDialog::CreatePaperTypeChoice(int *x, int *y)
|
|||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@@ -425,9 +425,6 @@ wxHtmlEasyPrinting::wxHtmlEasyPrinting(const wxString& name, wxFrame *parent_fra
|
|||||||
m_Frame = parent_frame;
|
m_Frame = parent_frame;
|
||||||
m_Name = name;
|
m_Name = name;
|
||||||
m_PrintData = new wxPrintData;
|
m_PrintData = new wxPrintData;
|
||||||
#if (defined __WXGTK__) || (defined __WXMOTIF__)
|
|
||||||
(*m_PrintData) = (*wxThePrintSetupData);
|
|
||||||
#endif
|
|
||||||
m_PageSetupData = new wxPageSetupDialogData;
|
m_PageSetupData = new wxPageSetupDialogData;
|
||||||
m_Headers[0] = m_Headers[1] = m_Footers[0] = m_Footers[1] = wxEmptyString;
|
m_Headers[0] = m_Headers[1] = m_Footers[0] = m_Footers[1] = wxEmptyString;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user