X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/4de6207afa9a78be63fe93df44ff5b90cecd2781..f61757b17c623137d439b3cbe34960f7ce1e9601:/src/common/prntbase.cpp diff --git a/src/common/prntbase.cpp b/src/common/prntbase.cpp index 1df630e380..71843dd88c 100644 --- a/src/common/prntbase.cpp +++ b/src/common/prntbase.cpp @@ -366,25 +366,26 @@ void wxPreviewControlBar::CreateButtons() x += gap + buttonWidth; } - static const char *choices[] = - { - "10%", "15%", "20%", "25%", "30%", "35%", "40%", "45%", "50%", "55%", - "60%", "65%", "70%", "75%", "80%", "85%", "90%", "95%", "100%", "110%", - "120%", "150%", "200%" - }; - if (m_buttonFlags & wxPREVIEW_ZOOM) { + static const char *choices[] = + { + "10%", "15%", "20%", "25%", "30%", "35%", "40%", "45%", "50%", "55%", + "60%", "65%", "70%", "75%", "80%", "85%", "90%", "95%", "100%", "110%", + "120%", "150%", "200%" + }; + m_zoomControl = new wxChoice(this, wxID_PREVIEW_ZOOM, wxPoint(x, y), wxSize(100, -1)); + + // Yes, this look stupid, but this is because gcc gives up otherwise. + int n = WXSIZEOF(choices); + for ( int i = 0; i < n; i++ ) + m_zoomControl->Append(choices[i]); + SetZoomControl(m_printPreview->GetZoom()); } - // Yes, this look stupid, but this is because gcc gives up otherwise. - int n = WXSIZEOF(choices); - for ( int i = 0; i < n; i++ ) - m_zoomControl->Append(choices[i]); - // m_closeButton->SetDefault(); } @@ -430,7 +431,7 @@ wxPreviewFrame::~wxPreviewFrame() { } -void wxPreviewFrame::OnCloseWindow(wxCloseEvent& event) +void wxPreviewFrame::OnCloseWindow(wxCloseEvent& WXUNUSED(event)) { MakeModal(FALSE); @@ -548,7 +549,7 @@ void wxPrintPreviewBase::Init(wxPrintout *printout, m_previewFrame = NULL; m_previewBitmap = NULL; m_currentPage = 1; - m_currentZoom = 30; + m_currentZoom = 70; m_topMargin = 40; m_leftMargin = 40; m_pageWidth = 0; @@ -752,10 +753,11 @@ void wxPrintPreviewBase::SetZoom(int percent) delete m_previewBitmap; m_previewBitmap = NULL; } - RenderPage(m_currentPage); + if (m_previewCanvas) { + RenderPage(m_currentPage); m_previewCanvas->Clear(); m_previewCanvas->Refresh(); }