1 /////////////////////////////////////////////////////////////////////////////// 2 // Name: MadPrintout.h 3 // Description: Printing functions 4 // Author: madedit@gmail.com 5 // Licence: GPL 6 /////////////////////////////////////////////////////////////////////////////// 7 8 #ifndef _MADPRINTOUT_H_ 9 #define _MADPRINTOUT_H_ 10 11 class MadPrintout: public wxPrintout 12 { 13 static int s_PrintoutCount; 14 public: 15 MadPrintout(const wxString& title = wxT("MadEdit Printout")); 16 virtual ~MadPrintout(); 17 18 virtual void GetPageInfo(int *minPage, int *maxPage, int *pageFrom, int *pageTo); 19 virtual bool HasPage(int page); 20 virtual bool OnPrintPage(int page); 21 22 virtual void OnPreparePrinting(); 23 24 void CalcPrintInfo(wxPageSetupData *pPageSetupData, double &xScale, double &yScale, wxRect &printRect); 25 26 bool m_PrintHeader, m_PrintFooter; 27 wxString m_HeaderLeft, m_HeaderCenter, m_HeaderRight; 28 wxString m_FooterLeft, m_FooterCenter, m_FooterRight; 29 int m_CharHeight, m_HeaderHeight, m_FooterHeight; 30 }; 31 32 //extern wxPrintData *g_PrintData; 33 extern wxPageSetupData* g_PageSetupData; 34 35 #endif 36