X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/59a14f698460525b36e6a6e63876e1a6723865b4..1e6b2edfc836c8867cb868e73d35f36a6e68f943:/include/wx/generic/dcpsg.h?ds=sidebyside diff --git a/include/wx/generic/dcpsg.h b/include/wx/generic/dcpsg.h index 9e0af45f89..2d90c7fa64 100644 --- a/include/wx/generic/dcpsg.h +++ b/include/wx/generic/dcpsg.h @@ -13,9 +13,7 @@ #include "wx/defs.h" -#if wxUSE_PRINTING_ARCHITECTURE - -#if wxUSE_POSTSCRIPT +#if wxUSE_PRINTING_ARCHITECTURE && wxUSE_POSTSCRIPT #include "wx/dc.h" #include "wx/dialog.h" @@ -23,14 +21,6 @@ #include "wx/cmndata.h" #include "wx/strvararg.h" -extern WXDLLIMPEXP_DATA_CORE(int) wxPageNumber; - -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- - -class wxPostScriptDC; - //----------------------------------------------------------------------------- // wxPostScriptDC //----------------------------------------------------------------------------- @@ -71,18 +61,19 @@ public: // Resolution in pixels per logical inch wxSize GetPPI() const; - // overridden because origin is bottom left and - // axes are inverted - void SetAxisOrientation( bool xLeftRight, bool yBottomUp ); - +#if wxUSE_NEW_DC +#else // these need to be overridden as wxPostscriptDC inherits // from the platform dependent wxDC and this we'd call // e.g. wxMSW specific code here. + virtual void SetAxisOrientation( bool xLeftRight, bool yBottomUp ); virtual void SetMapMode(int mode); virtual void SetUserScale(double x, double y); virtual void SetLogicalScale(double x, double y); virtual void SetLogicalOrigin(wxCoord x, wxCoord y); virtual void SetDeviceOrigin(wxCoord x, wxCoord y); +#endif + virtual void ComputeScaleAndOrigin(); void SetBackgroundMode(int WXUNUSED(mode)) { } void SetPalette(const wxPalette& WXUNUSED(palette)) { } @@ -95,32 +86,9 @@ public: static void SetResolution(int ppi); static int GetResolution(); - WX_DEFINE_VARARG_FUNC_VOID(PsPrintf, 1, (const wxFormatString&), - DoPsPrintfFormatWchar, DoPsPrintfFormatUtf8) -#ifdef __WATCOMC__ - // workaround for http://bugzilla.openwatcom.org/show_bug.cgi?id=351 - WX_VARARG_WATCOM_WORKAROUND(void, PsPrintf, 1, (const wxString&), - (wxFormatString(f1))); - WX_VARARG_WATCOM_WORKAROUND(void, PsPrintf, 1, (const wxCStrData&), - (wxFormatString(f1))); - WX_VARARG_WATCOM_WORKAROUND(void, PsPrintf, 1, (const char*), - (wxFormatString(f1))); - WX_VARARG_WATCOM_WORKAROUND(void, PsPrintf, 1, (const wchar_t*), - (wxFormatString(f1))); -#endif - void PsPrint( const wxString& psdata ); - void PsPrint( int ch ); private: -#if !wxUSE_UTF8_LOCALE_ONLY - void DoPsPrintfFormatWchar(const wxChar *fmt, ... ); -#endif -#if wxUSE_UNICODE_UTF8 - void DoPsPrintfFormatUtf8(const char *fmt, ... ); -#endif - - static float ms_PSScaleFactor; protected: bool DoFloodFill(wxCoord x1, wxCoord y1, const wxColour &col, int style = wxFLOOD_SURFACE); @@ -137,7 +105,7 @@ protected: void DoDrawRoundedRectangle(wxCoord x, wxCoord y, wxCoord width, wxCoord height, double radius = 20); void DoDrawEllipse(wxCoord x, wxCoord y, wxCoord width, wxCoord height); #if wxUSE_SPLINES - void DoDrawSpline(wxList *points); + void DoDrawSpline(const wxPointList *points); #endif // wxUSE_SPLINES bool DoBlit(wxCoord xdest, wxCoord ydest, wxCoord width, wxCoord height, wxDC *source, wxCoord xsrc, wxCoord ysrc, int rop = wxCOPY, bool useMask = false, @@ -165,16 +133,14 @@ protected: double m_underlinePosition; double m_underlineThickness; wxPrintData m_printData; + double m_pageHeight; private: DECLARE_DYNAMIC_CLASS(wxPostScriptDC) }; #endif - // wxUSE_POSTSCRIPT - -#endif - // wxUSE_PRINTING_ARCHITECTURE + // wxUSE_POSTSCRIPT && wxUSE_PRINTING_ARCHITECTURE #endif // _WX_DCPSG_H_