#ifndef WX_PRECOMP
#include "wx/utils.h"
#include "wx/dc.h"
- #include "wx/app.h"
- #include "wx/frame.h"
#include "wx/stattext.h"
#include "wx/statbox.h"
#include "wx/button.h"
#include "wx/textctrl.h"
#include "wx/radiobox.h"
#include "wx/filedlg.h"
- #include "wx/choice.h"
#include "wx/combobox.h"
#include "wx/intl.h"
#include "wx/sizer.h"
}
if (m_paperTypeChoice)
{
- wxString val(m_paperTypeChoice->GetStringSelection());
- if (!val.IsNull() && val != wxT(""))
- m_printData.SetPaperId(wxThePrintPaperDatabase->ConvertNameToId(val));
+ int selectedItem = m_paperTypeChoice->GetSelection();
+ if (selectedItem != -1)
+ {
+ wxPrintPaperType *paper = (wxPrintPaperType*)wxThePrintPaperDatabase->Item(selectedItem)->GetData();
+ if (paper != NULL)
+ m_printData.SetPaperId( paper->GetId());
+ }
}
return TRUE;
{
}
+static inline wxString IntToString( long value )
+{
+ return wxString::Format(wxT("%ld"), value);
+}
+
bool wxGenericPageSetupDialog::TransferDataToWindow()
{
if (m_marginLeftText)
- m_marginLeftText->SetValue(IntToString((int) m_pageData.GetMarginTopLeft().x));
+ m_marginLeftText->SetValue(IntToString(m_pageData.GetMarginTopLeft().x));
if (m_marginTopText)
- m_marginTopText->SetValue(IntToString((int) m_pageData.GetMarginTopLeft().y));
+ m_marginTopText->SetValue(IntToString(m_pageData.GetMarginTopLeft().y));
if (m_marginRightText)
- m_marginRightText->SetValue(IntToString((int) m_pageData.GetMarginBottomRight().x));
+ m_marginRightText->SetValue(IntToString(m_pageData.GetMarginBottomRight().x));
if (m_marginBottomText)
- m_marginBottomText->SetValue(IntToString((int) m_pageData.GetMarginBottomRight().y));
+ m_marginBottomText->SetValue(IntToString(m_pageData.GetMarginBottomRight().y));
if (m_orientationRadioBox)
{
if (m_paperTypeChoice)
{
- wxString val(m_paperTypeChoice->GetStringSelection());
- if (!val.IsEmpty())
+ int selectedItem = m_paperTypeChoice->GetSelection();
+ if (selectedItem != -1)
{
- wxPrintPaperType* paper = wxThePrintPaperDatabase->FindPaperType(val);
+ wxPrintPaperType *paper = (wxPrintPaperType*)wxThePrintPaperDatabase->Item(selectedItem)->GetData();
if ( paper )
{
m_pageData.SetPaperSize(wxSize(paper->GetWidth()/10, paper->GetHeight()/10));