X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4b7b750dd1ffd0d26b78728adb613b282a37c058..15b41e900b5bb946cc885b87ed0edd8f745bf22a:/src/mac/carbon/printmac.cpp diff --git a/src/mac/carbon/printmac.cpp b/src/mac/carbon/printmac.cpp index 426bd42de3..60d15137cf 100644 --- a/src/mac/carbon/printmac.cpp +++ b/src/mac/carbon/printmac.cpp @@ -29,6 +29,8 @@ #include "wx/msgdlg.h" #endif +#include "wx/mac/private.h" + #include "wx/mac/printmac.h" #include "wx/dcprint.h" #include "wx/printdlg.h" @@ -137,7 +139,7 @@ bool wxMacPrinter::Print(wxWindow *parent, wxPrintout *printout, bool prompt) wxBeginBusyCursor(); wxWindow *win = CreateAbortWindow(parent, printout); - wxYield(); + wxSafeYield(win,true); if (!win) { @@ -148,7 +150,7 @@ bool wxMacPrinter::Print(wxWindow *parent, wxPrintout *printout, bool prompt) } sm_abortWindow = win; sm_abortWindow->Show(TRUE); - wxYield(); + wxSafeYield(win,true); printout->OnBeginPrinting(); @@ -179,8 +181,8 @@ bool wxMacPrinter::Print(wxWindow *parent, wxPrintout *printout, bool prompt) { GrafPtr thePort ; GetPort( &thePort ) ; - wxYield() ; - SetPort( thePort ) ; + wxSafeYield(win,true); + SetPort( thePort ) ; dc->StartPage(); keepGoing = printout->OnPrintPage(pn); @@ -274,7 +276,7 @@ void wxMacPrintPreview::DetermineScaling(void) m_previewPrintout->SetPPIScreen( 72 , 72 ) ; m_previewPrintout->SetPPIPrinter( 72 , 72 ) ; - m_previewPrintout->SetPageSizeMM( 8 * 25.6 , 11 * 25.6 ) ; + m_previewPrintout->SetPageSizeMM( (int) (8.0 * 25.6), (int) (11.0 * 25.6) ); m_previewPrintout->SetPageSizePixels( 8 * 72 , 11 * 72 ) ; m_pageWidth = 8 * 72 ; m_pageHeight = 11 * 72 ; @@ -293,7 +295,10 @@ void wxMacPrintPreview::DetermineScaling(void) m_pageWidth = x ; m_pageHeight = y ; m_isOk = true ; - + } + else + { + m_isOk = false ; } // At 100%, the page should look about page-size on the screen. // m_previewScale = (float)((float)screenWidth/(float)printerWidth);