X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/dfad0599246651d4994e348d868a3e65613c7379..1f2f0331455e0a91fdbc57afefe8f8c7c0db9392:/samples/printing/printing.cpp diff --git a/samples/printing/printing.cpp b/samples/printing/printing.cpp index ac806d6184..3106790de3 100644 --- a/samples/printing/printing.cpp +++ b/samples/printing/printing.cpp @@ -22,7 +22,6 @@ #ifndef WX_PRECOMP #include "wx/wx.h" -#include "wx/postscrp.h" #endif #if !wxUSE_PRINTING_ARCHITECTURE @@ -38,6 +37,8 @@ #include "wx/print.h" #include "wx/printdlg.h" +#include "wx/accel.h" + #if wxTEST_POSTSCRIPT_IN_MSW #include "wx/generic/printps.h" #include "wx/generic/prntdlgg.h" @@ -45,6 +46,10 @@ #include "printing.h" +#ifndef __WXMSW__ +#include "mondrian.xpm" +#endif + // Declare a frame MyFrame *frame = (MyFrame *) NULL; int orientation = wxPORTRAIT; @@ -52,10 +57,6 @@ int orientation = wxPORTRAIT; // Main proc IMPLEMENT_APP(MyApp) -#ifdef __WXGTK__ -#include "folder.xpm" -#endif - // Writes a header on a page. Margin units are in millimetres. bool WritePageHeader(wxPrintout *printout, wxDC *dc, char *text, float mmToLogical); @@ -76,12 +77,7 @@ bool MyApp::OnInit(void) frame->CreateStatusBar(2); // Load icon and bitmap -#ifdef __WXMSW__ - frame->SetIcon(wxIcon("mondrian")); -#endif -#ifdef __X__ -// frame->SetIcon(wxIcon(mondrian_bits, mondrian_width, mondrian_height)); -#endif + frame->SetIcon( wxICON( mondrian) ); // Make a menubar wxMenu *file_menu = new wxMenu; @@ -91,6 +87,12 @@ bool MyApp::OnInit(void) file_menu->Append(WXPRINT_PAGE_SETUP, "Page Set&up...", "Page setup"); file_menu->Append(WXPRINT_PREVIEW, "Print Pre&view", "Preview"); + // Accelerators + wxAcceleratorEntry entries[1]; + entries[0].Set(wxACCEL_CTRL, (int) 'V', WXPRINT_PREVIEW); + wxAcceleratorTable accel(1, entries); + frame->SetAcceleratorTable(accel); + #if defined(__WXMSW__) && wxTEST_POSTSCRIPT_IN_MSW file_menu->AppendSeparator(); file_menu->Append(WXPRINT_PRINT_PS, "Print PostScript...", "Print (PostScript)"); @@ -316,13 +318,7 @@ void MyFrame::Draw(wxDC& dc) dc.DrawLine(0, 0, 200, 200); dc.DrawLine(200, 0, 0, 200); -#if defined(__WXGTK__) - wxIcon my_icon( folder_xpm ); -#elif defined(__WXMSW__) - wxIcon my_icon( "mondrian" ); -#elif -#error "Platform not supported." -#endif + wxIcon my_icon = wxICON(mondrian) ; dc.DrawIcon( my_icon, 100, 100); } @@ -375,6 +371,7 @@ bool MyPrintout::OnPrintPage(int page) DrawPageTwo(dc); dc->SetDeviceOrigin(0, 0); + dc->SetUserScale(1.0, 1.0); char buf[200]; sprintf(buf, "PAGE %d", page); @@ -491,8 +488,8 @@ void MyPrintout::DrawPageTwo(wxDC *dc) float logUnitsFactor = (float)(ppiPrinterX/(scale*25.1)); float logUnits = (float)(50*logUnitsFactor); dc->SetPen(* wxBLACK_PEN); - dc->DrawLine(50, 50, (long)(50.0 + logUnits), 50); - dc->DrawLine(50, 50, 50, (long)(50.0 + logUnits)); + dc->DrawLine(50, 250, (long)(50.0 + logUnits), 250); + dc->DrawLine(50, 250, 50, (long)(250.0 + logUnits)); dc->SetFont(* wxGetApp().m_testFont); dc->SetBackgroundMode(wxTRANSPARENT); @@ -514,7 +511,7 @@ void MyPrintout::DrawPageTwo(wxDC *dc) float bottomMarginLogical = (float)(logUnitsFactor*(pageHeightMM - bottomMargin)); float rightMarginLogical = (float)(logUnitsFactor*(pageWidthMM - rightMargin)); - dc->SetPen(wxBLACK_PEN); + dc->SetPen(* wxRED_PEN); dc->DrawLine( (long)leftMarginLogical, (long)topMarginLogical, (long)rightMarginLogical, (long)topMarginLogical); dc->DrawLine( (long)leftMarginLogical, (long)bottomMarginLogical, @@ -526,12 +523,14 @@ void MyPrintout::DrawPageTwo(wxDC *dc) // Writes a header on a page. Margin units are in millimetres. bool WritePageHeader(wxPrintout *printout, wxDC *dc, char *text, float mmToLogical) { +/* static wxFont *headerFont = (wxFont *) NULL; if (!headerFont) { headerFont = wxTheFontList->FindOrCreateFont(16, wxSWISS, wxNORMAL, wxBOLD); } dc->SetFont(headerFont); +*/ int pageWidthMM, pageHeightMM;