Loading common/class_page_info.cpp +30 −15 Original line number Diff line number Diff line /* * This program source code file is part of KiCad, a free EDA CAD application. * * Copyright (C) 2012 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com> * Copyright (C) 2012 KiCad Developers, see CHANGELOG.TXT for contributors. * * This program is free software; you can redistribute it and/or Loading Loading @@ -29,9 +30,9 @@ const wxString PAGE_INFO::Custom( wxT( "User" ) ); // Standard page sizes in mils, all constants #if defined(KICAD_GOST) const PAGE_INFO PAGE_INFO::pageA4( wxSize( 8283, 11700 ), wxT( "A4" ) ); const PAGE_INFO PAGE_INFO::pageA4( wxSize( 8268, 11700 ), wxT( "A4" ) ); #else const PAGE_INFO PAGE_INFO::pageA4( wxSize( 11700, 8267 ), wxT( "A4" ) ); const PAGE_INFO PAGE_INFO::pageA4( wxSize( 11700, 8268 ), wxT( "A4" ) ); #endif const PAGE_INFO PAGE_INFO::pageA3( wxSize( 16535, 11700 ), wxT( "A3" ) ); const PAGE_INFO PAGE_INFO::pageA2( wxSize( 23400, 16535 ), wxT( "A2" ) ); Loading @@ -45,6 +46,12 @@ const PAGE_INFO PAGE_INFO::pageE( wxSize( 44000, 34000 ), wxT( "E" ) ); const PAGE_INFO PAGE_INFO::pageGERBER( wxSize( 32000, 32000 ), wxT( "GERBER" ) ); const PAGE_INFO PAGE_INFO::pageUser( wxSize( 17000, 11000 ), Custom ); // US paper sizes const PAGE_INFO PAGE_INFO::pageUSLetter( wxSize( 11000, 8500 ), wxT( "USLetter" ) ); const PAGE_INFO PAGE_INFO::pageUSLegal( wxSize( 14000, 8500 ), wxT( "USLegal" ) ); const PAGE_INFO PAGE_INFO::pageUSLedger( wxSize( 17000, 11000 ), wxT( "USLedger" ) ); // Custom paper size for next instantiation of type "User" int PAGE_INFO::s_user_width = 17000; int PAGE_INFO::s_user_height = 11000; Loading @@ -65,6 +72,9 @@ wxArrayString PAGE_INFO::GetStandardSizes() &pageD, &pageE, // &pageGERBER, // standard? &pageUSLetter, &pageUSLegal, &pageUSLedger, &pageUser, }; Loading Loading @@ -122,6 +132,12 @@ bool PAGE_INFO::SetType( const wxString& aType ) *this = pageE; else if( aType == pageGERBER.GetType() ) *this = pageGERBER; else if( aType == pageUSLetter.GetType() ) *this = pageUSLetter; else if( aType == pageUSLegal.GetType() ) *this = pageUSLegal; else if( aType == pageUSLedger.GetType() ) *this = pageUSLedger; else if( aType == pageUser.GetType() ) { // pageUser is const, and may not and does not hold the custom size, Loading Loading @@ -201,4 +217,3 @@ void PAGE_INFO::SetHeightMils( int aHeightInMils ) { m_size.y = clampHeight( aHeightInMils ); } common/dialogs/dialog_page_settings.cpp +29 −25 Original line number Diff line number Diff line Loading @@ -75,12 +75,14 @@ void DIALOG_PAGES_SETTINGS::initDialog() const PAGE_INFO& pageInfo = m_Parent->GetPageSettings(); if( !pageInfo.IsCustom() ) m_landscapeCheckbox->SetValue( !pageInfo.IsPortrait() ); m_orientationComboBox->SetSelection( pageInfo.IsPortrait() ); setCurrentPageSizeSelection( pageInfo.GetType() ); // only a click fires the radiobutton selected event, so have to fabricate this check onRadioButtonSelected(); // only a click fires the selection changed event, so have to fabricate this check wxCommandEvent junk; onPaperSizeChoice( junk ); switch( g_UserUnit ) { Loading Loading @@ -175,25 +177,19 @@ void DIALOG_PAGES_SETTINGS::OnCancelClick( wxCommandEvent& event ) } void DIALOG_PAGES_SETTINGS::onRadioButtonSelected() void DIALOG_PAGES_SETTINGS::onPaperSizeChoice( wxCommandEvent& event ) { if( PAGE_INFO::Custom == m_PageSizeBox->GetStringSelection() ) if( m_paperSizeComboBox->GetStringSelection().Contains( PAGE_INFO::Custom ) ) { m_landscapeCheckbox->Enable( false ); m_orientationComboBox->Enable( false ); } else { m_landscapeCheckbox->Enable( true ); m_orientationComboBox->Enable( true ); } } void DIALOG_PAGES_SETTINGS::onRadioButtonSelected( wxCommandEvent& event ) { onRadioButtonSelected(); // no event arg } void DIALOG_PAGES_SETTINGS::SavePageSettings( wxCommandEvent& event ) { wxString msg; Loading Loading @@ -238,19 +234,27 @@ void DIALOG_PAGES_SETTINGS::SavePageSettings( wxCommandEvent& event ) */ } int radioSelection = m_PageSizeBox->GetSelection(); if( radioSelection < 0 ) radioSelection = 0; // wxFormBuilder must use "A4", "A3", etc for choices, in all languages/translations wxString paperType = m_PageSizeBox->GetString( radioSelection ); wxString paperType = m_paperSizeComboBox->GetStringSelection(); // construct pageInfo _after_ user settings have been established in case the // paperType is custom, otherwise User width and height will not go into effect right away. PAGE_INFO pageInfo( paperType ); PAGE_INFO pageInfo; if( paperType.Contains( PAGE_INFO::Custom ) ) { pageInfo.SetType( PAGE_INFO::Custom ); } else { pageInfo.SetPortrait( m_orientationComboBox->GetSelection() ); if( PAGE_INFO::Custom != paperType ) pageInfo.SetPortrait( !m_landscapeCheckbox->IsChecked() ); // here we assume translators will keep original paper size spellings if( !pageInfo.SetType( paperType ) ) { wxASSERT_MSG( FALSE, wxT( "the translation for paper size must preserve original spellings" ) ); } } m_Parent->SetPageSettings( pageInfo ); Loading Loading @@ -305,19 +309,19 @@ void DIALOG_PAGES_SETTINGS::setCurrentPageSizeSelection( const wxString& aPaperS // use wxFormBuilder to store the sheet type in the wxRadioButton's label // i.e. "A4", "A3", etc, anywhere within the text of the label. D(printf("m_PageSizeBox->GetCount() = %d\n", (int) m_PageSizeBox->GetCount() );) D(printf("m_paperSizeComboBox->GetCount() = %d\n", (int) m_paperSizeComboBox->GetCount() );) // search all the child wxRadioButtons for a label containing our paper type for( unsigned i = 0; i < m_PageSizeBox->GetCount(); ++i ) for( unsigned i = 0; i < m_paperSizeComboBox->GetCount(); ++i ) { // parse each label looking for aPaperSize within it wxStringTokenizer st( m_PageSizeBox->GetString( i ) ); wxStringTokenizer st( m_paperSizeComboBox->GetString( i ) ); while( st.HasMoreTokens() ) { if( st.GetNextToken() == aPaperSize ) { m_PageSizeBox->SetSelection( i ); m_paperSizeComboBox->SetSelection( i ); return; } } Loading common/dialogs/dialog_page_settings.h +1 −4 Original line number Diff line number Diff line Loading @@ -36,14 +36,11 @@ private: /// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL void OnCancelClick( wxCommandEvent& event ); /// wxEVT_COMMAND_RADIOBOX_SELECTED void onRadioButtonSelected( wxCommandEvent& event ); void setCurrentPageSizeSelection( const wxString& aPaperSize ); void SavePageSettings(wxCommandEvent& event); void ReturnSizeSelected(wxCommandEvent& event); void onRadioButtonSelected(); void onPaperSizeChoice( wxCommandEvent& event ); }; #endif // _DIALOG_PAGES_SETTINGS_H_ common/dialogs/dialog_page_settings_base.cpp +28 −28 Original line number Diff line number Diff line Loading @@ -21,62 +21,62 @@ DIALOG_PAGES_SETTINGS_BASE::DIALOG_PAGES_SETTINGS_BASE( wxWindow* parent, wxWind wxFlexGridSizer* LeftColumnSizer; LeftColumnSizer = new wxFlexGridSizer( 6, 1, 0, 0 ); LeftColumnSizer->AddGrowableRow( 0 ); LeftColumnSizer->AddGrowableRow( 1 ); LeftColumnSizer->AddGrowableRow( 3 ); LeftColumnSizer->AddGrowableRow( 4 ); LeftColumnSizer->AddGrowableRow( 5 ); LeftColumnSizer->AddGrowableRow( 2 ); LeftColumnSizer->SetFlexibleDirection( wxBOTH ); LeftColumnSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); wxString m_PageSizeBoxChoices[] = { _("A4"), _("A3"), _("A2"), _("A1"), _("A0"), _("A"), _("B"), _("C"), _("D"), _("E"), _("User") }; int m_PageSizeBoxNChoices = sizeof( m_PageSizeBoxChoices ) / sizeof( wxString ); m_PageSizeBox = new wxRadioBox( this, wxID_ANY, _("Page Size:"), wxDefaultPosition, wxDefaultSize, m_PageSizeBoxNChoices, m_PageSizeBoxChoices, 1, wxRA_SPECIFY_COLS ); m_PageSizeBox->SetSelection( 9 ); LeftColumnSizer->Add( m_PageSizeBox, 0, wxALL|wxEXPAND, 5 ); wxStaticBoxSizer* sbSizer9; sbSizer9 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Paper Size:") ), wxVERTICAL ); wxString m_paperSizeComboBoxChoices[] = { _("A4"), _("A3"), _("A2"), _("A1"), _("A0"), _("A"), _("B"), _("C"), _("D"), _("E"), _("USLetter"), _("USLegal"), _("USLedger"), _("User (Custom)") }; int m_paperSizeComboBoxNChoices = sizeof( m_paperSizeComboBoxChoices ) / sizeof( wxString ); m_paperSizeComboBox = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_paperSizeComboBoxNChoices, m_paperSizeComboBoxChoices, 0 ); m_paperSizeComboBox->SetSelection( 0 ); sbSizer9->Add( m_paperSizeComboBox, 0, wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( 5, 0, 1, wxEXPAND, 5 ); LeftColumnSizer->Add( sbSizer9, 0, wxALL|wxEXPAND, 5 ); wxStaticBoxSizer* sbSizer8; sbSizer8 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Orientation:") ), wxVERTICAL ); m_landscapeCheckbox = new wxCheckBox( this, wxID_ANY, _("Landscape"), wxDefaultPosition, wxDefaultSize, 0 ); m_landscapeCheckbox->SetValue(true); m_landscapeCheckbox->SetToolTip( _("Check for landscape, uncheck for portrait") ); wxString m_orientationComboBoxChoices[] = { _("Landscape"), _("Portrait") }; int m_orientationComboBoxNChoices = sizeof( m_orientationComboBoxChoices ) / sizeof( wxString ); m_orientationComboBox = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_orientationComboBoxNChoices, m_orientationComboBoxChoices, 0 ); m_orientationComboBox->SetSelection( 0 ); sbSizer8->Add( m_orientationComboBox, 0, wxALL|wxEXPAND, 5 ); sbSizer8->Add( m_landscapeCheckbox, 0, wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( sbSizer8, 0, wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( sbSizer8, 1, wxALL|wxEXPAND, 5 ); wxStaticBoxSizer* sbSizer10; sbSizer10 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Custom Page Size:") ), wxVERTICAL ); wxBoxSizer* bSizerXsize; bSizerXsize = new wxBoxSizer( wxVERTICAL ); UserPageSizeX = new wxStaticText( this, wxID_ANY, _("User Page Size X: "), wxDefaultPosition, wxDefaultSize, 0 ); UserPageSizeX = new wxStaticText( this, wxID_ANY, _("Width:"), wxDefaultPosition, wxDefaultSize, 0 ); UserPageSizeX->Wrap( -1 ); bSizerXsize->Add( UserPageSizeX, 0, wxTOP|wxRIGHT|wxLEFT, 5 ); m_TextUserSizeX = new wxTextCtrl( this, ID_TEXTCTRL_USER_PAGE_SIZE_X, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); bSizerXsize->Add( m_TextUserSizeX, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 ); bSizerXsize->Add( m_TextUserSizeX, 0, wxALIGN_LEFT|wxALIGN_TOP|wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( bSizerXsize, 1, wxEXPAND, 5 ); sbSizer10->Add( bSizerXsize, 1, wxALIGN_TOP|wxALL|wxEXPAND, 5 ); wxBoxSizer* bSizerYsize; bSizerYsize = new wxBoxSizer( wxVERTICAL ); UserPageSizeY = new wxStaticText( this, wxID_ANY, _("User Page Size Y: "), wxDefaultPosition, wxDefaultSize, 0 ); UserPageSizeY = new wxStaticText( this, wxID_ANY, _("Height:"), wxDefaultPosition, wxDefaultSize, 0 ); UserPageSizeY->Wrap( -1 ); bSizerYsize->Add( UserPageSizeY, 0, wxTOP|wxRIGHT|wxLEFT, 5 ); bSizerYsize->Add( UserPageSizeY, 0, wxALIGN_TOP|wxALL, 5 ); m_TextUserSizeY = new wxTextCtrl( this, ID_TEXTCTRL_USER_PAGE_SIZE_Y, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); bSizerYsize->Add( m_TextUserSizeY, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 ); bSizerYsize->Add( m_TextUserSizeY, 0, wxALIGN_TOP|wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( bSizerYsize, 1, wxEXPAND, 5 ); sbSizer10->Add( bSizerYsize, 1, wxALIGN_TOP|wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( 5, 5, 1, wxEXPAND, 5 ); LeftColumnSizer->Add( 5, 5, 1, wxEXPAND, 5 ); LeftColumnSizer->Add( sbSizer10, 1, wxALL|wxEXPAND, 5 ); bUpperSizerH->Add( LeftColumnSizer, 0, wxEXPAND, 5 ); Loading Loading @@ -219,7 +219,7 @@ DIALOG_PAGES_SETTINGS_BASE::DIALOG_PAGES_SETTINGS_BASE( wxWindow* parent, wxWind // Connect Events this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnCloseWindow ) ); m_PageSizeBox->Connect( wxEVT_COMMAND_RADIOBOX_SELECTED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::onRadioButtonSelected ), NULL, this ); m_paperSizeComboBox->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::onPaperSizeChoice ), NULL, this ); m_TextUserSizeX->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnTextctrlUserPageSizeXTextUpdated ), NULL, this ); m_TextUserSizeY->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnTextctrlUserPageSizeYTextUpdated ), NULL, this ); m_TitleExport->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnCheckboxTitleClick ), NULL, this ); Loading @@ -231,7 +231,7 @@ DIALOG_PAGES_SETTINGS_BASE::~DIALOG_PAGES_SETTINGS_BASE() { // Disconnect Events this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnCloseWindow ) ); m_PageSizeBox->Disconnect( wxEVT_COMMAND_RADIOBOX_SELECTED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::onRadioButtonSelected ), NULL, this ); m_paperSizeComboBox->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::onPaperSizeChoice ), NULL, this ); m_TextUserSizeX->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnTextctrlUserPageSizeXTextUpdated ), NULL, this ); m_TextUserSizeY->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnTextctrlUserPageSizeYTextUpdated ), NULL, this ); m_TitleExport->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnCheckboxTitleClick ), NULL, this ); Loading common/dialogs/dialog_page_settings_base.fbp +396 −402 File changed.Preview size limit exceeded, changes collapsed. Show changes Loading
common/class_page_info.cpp +30 −15 Original line number Diff line number Diff line /* * This program source code file is part of KiCad, a free EDA CAD application. * * Copyright (C) 2012 SoftPLC Corporation, Dick Hollenbeck <dick@softplc.com> * Copyright (C) 2012 KiCad Developers, see CHANGELOG.TXT for contributors. * * This program is free software; you can redistribute it and/or Loading Loading @@ -29,9 +30,9 @@ const wxString PAGE_INFO::Custom( wxT( "User" ) ); // Standard page sizes in mils, all constants #if defined(KICAD_GOST) const PAGE_INFO PAGE_INFO::pageA4( wxSize( 8283, 11700 ), wxT( "A4" ) ); const PAGE_INFO PAGE_INFO::pageA4( wxSize( 8268, 11700 ), wxT( "A4" ) ); #else const PAGE_INFO PAGE_INFO::pageA4( wxSize( 11700, 8267 ), wxT( "A4" ) ); const PAGE_INFO PAGE_INFO::pageA4( wxSize( 11700, 8268 ), wxT( "A4" ) ); #endif const PAGE_INFO PAGE_INFO::pageA3( wxSize( 16535, 11700 ), wxT( "A3" ) ); const PAGE_INFO PAGE_INFO::pageA2( wxSize( 23400, 16535 ), wxT( "A2" ) ); Loading @@ -45,6 +46,12 @@ const PAGE_INFO PAGE_INFO::pageE( wxSize( 44000, 34000 ), wxT( "E" ) ); const PAGE_INFO PAGE_INFO::pageGERBER( wxSize( 32000, 32000 ), wxT( "GERBER" ) ); const PAGE_INFO PAGE_INFO::pageUser( wxSize( 17000, 11000 ), Custom ); // US paper sizes const PAGE_INFO PAGE_INFO::pageUSLetter( wxSize( 11000, 8500 ), wxT( "USLetter" ) ); const PAGE_INFO PAGE_INFO::pageUSLegal( wxSize( 14000, 8500 ), wxT( "USLegal" ) ); const PAGE_INFO PAGE_INFO::pageUSLedger( wxSize( 17000, 11000 ), wxT( "USLedger" ) ); // Custom paper size for next instantiation of type "User" int PAGE_INFO::s_user_width = 17000; int PAGE_INFO::s_user_height = 11000; Loading @@ -65,6 +72,9 @@ wxArrayString PAGE_INFO::GetStandardSizes() &pageD, &pageE, // &pageGERBER, // standard? &pageUSLetter, &pageUSLegal, &pageUSLedger, &pageUser, }; Loading Loading @@ -122,6 +132,12 @@ bool PAGE_INFO::SetType( const wxString& aType ) *this = pageE; else if( aType == pageGERBER.GetType() ) *this = pageGERBER; else if( aType == pageUSLetter.GetType() ) *this = pageUSLetter; else if( aType == pageUSLegal.GetType() ) *this = pageUSLegal; else if( aType == pageUSLedger.GetType() ) *this = pageUSLedger; else if( aType == pageUser.GetType() ) { // pageUser is const, and may not and does not hold the custom size, Loading Loading @@ -201,4 +217,3 @@ void PAGE_INFO::SetHeightMils( int aHeightInMils ) { m_size.y = clampHeight( aHeightInMils ); }
common/dialogs/dialog_page_settings.cpp +29 −25 Original line number Diff line number Diff line Loading @@ -75,12 +75,14 @@ void DIALOG_PAGES_SETTINGS::initDialog() const PAGE_INFO& pageInfo = m_Parent->GetPageSettings(); if( !pageInfo.IsCustom() ) m_landscapeCheckbox->SetValue( !pageInfo.IsPortrait() ); m_orientationComboBox->SetSelection( pageInfo.IsPortrait() ); setCurrentPageSizeSelection( pageInfo.GetType() ); // only a click fires the radiobutton selected event, so have to fabricate this check onRadioButtonSelected(); // only a click fires the selection changed event, so have to fabricate this check wxCommandEvent junk; onPaperSizeChoice( junk ); switch( g_UserUnit ) { Loading Loading @@ -175,25 +177,19 @@ void DIALOG_PAGES_SETTINGS::OnCancelClick( wxCommandEvent& event ) } void DIALOG_PAGES_SETTINGS::onRadioButtonSelected() void DIALOG_PAGES_SETTINGS::onPaperSizeChoice( wxCommandEvent& event ) { if( PAGE_INFO::Custom == m_PageSizeBox->GetStringSelection() ) if( m_paperSizeComboBox->GetStringSelection().Contains( PAGE_INFO::Custom ) ) { m_landscapeCheckbox->Enable( false ); m_orientationComboBox->Enable( false ); } else { m_landscapeCheckbox->Enable( true ); m_orientationComboBox->Enable( true ); } } void DIALOG_PAGES_SETTINGS::onRadioButtonSelected( wxCommandEvent& event ) { onRadioButtonSelected(); // no event arg } void DIALOG_PAGES_SETTINGS::SavePageSettings( wxCommandEvent& event ) { wxString msg; Loading Loading @@ -238,19 +234,27 @@ void DIALOG_PAGES_SETTINGS::SavePageSettings( wxCommandEvent& event ) */ } int radioSelection = m_PageSizeBox->GetSelection(); if( radioSelection < 0 ) radioSelection = 0; // wxFormBuilder must use "A4", "A3", etc for choices, in all languages/translations wxString paperType = m_PageSizeBox->GetString( radioSelection ); wxString paperType = m_paperSizeComboBox->GetStringSelection(); // construct pageInfo _after_ user settings have been established in case the // paperType is custom, otherwise User width and height will not go into effect right away. PAGE_INFO pageInfo( paperType ); PAGE_INFO pageInfo; if( paperType.Contains( PAGE_INFO::Custom ) ) { pageInfo.SetType( PAGE_INFO::Custom ); } else { pageInfo.SetPortrait( m_orientationComboBox->GetSelection() ); if( PAGE_INFO::Custom != paperType ) pageInfo.SetPortrait( !m_landscapeCheckbox->IsChecked() ); // here we assume translators will keep original paper size spellings if( !pageInfo.SetType( paperType ) ) { wxASSERT_MSG( FALSE, wxT( "the translation for paper size must preserve original spellings" ) ); } } m_Parent->SetPageSettings( pageInfo ); Loading Loading @@ -305,19 +309,19 @@ void DIALOG_PAGES_SETTINGS::setCurrentPageSizeSelection( const wxString& aPaperS // use wxFormBuilder to store the sheet type in the wxRadioButton's label // i.e. "A4", "A3", etc, anywhere within the text of the label. D(printf("m_PageSizeBox->GetCount() = %d\n", (int) m_PageSizeBox->GetCount() );) D(printf("m_paperSizeComboBox->GetCount() = %d\n", (int) m_paperSizeComboBox->GetCount() );) // search all the child wxRadioButtons for a label containing our paper type for( unsigned i = 0; i < m_PageSizeBox->GetCount(); ++i ) for( unsigned i = 0; i < m_paperSizeComboBox->GetCount(); ++i ) { // parse each label looking for aPaperSize within it wxStringTokenizer st( m_PageSizeBox->GetString( i ) ); wxStringTokenizer st( m_paperSizeComboBox->GetString( i ) ); while( st.HasMoreTokens() ) { if( st.GetNextToken() == aPaperSize ) { m_PageSizeBox->SetSelection( i ); m_paperSizeComboBox->SetSelection( i ); return; } } Loading
common/dialogs/dialog_page_settings.h +1 −4 Original line number Diff line number Diff line Loading @@ -36,14 +36,11 @@ private: /// wxEVT_COMMAND_BUTTON_CLICKED event handler for wxID_CANCEL void OnCancelClick( wxCommandEvent& event ); /// wxEVT_COMMAND_RADIOBOX_SELECTED void onRadioButtonSelected( wxCommandEvent& event ); void setCurrentPageSizeSelection( const wxString& aPaperSize ); void SavePageSettings(wxCommandEvent& event); void ReturnSizeSelected(wxCommandEvent& event); void onRadioButtonSelected(); void onPaperSizeChoice( wxCommandEvent& event ); }; #endif // _DIALOG_PAGES_SETTINGS_H_
common/dialogs/dialog_page_settings_base.cpp +28 −28 Original line number Diff line number Diff line Loading @@ -21,62 +21,62 @@ DIALOG_PAGES_SETTINGS_BASE::DIALOG_PAGES_SETTINGS_BASE( wxWindow* parent, wxWind wxFlexGridSizer* LeftColumnSizer; LeftColumnSizer = new wxFlexGridSizer( 6, 1, 0, 0 ); LeftColumnSizer->AddGrowableRow( 0 ); LeftColumnSizer->AddGrowableRow( 1 ); LeftColumnSizer->AddGrowableRow( 3 ); LeftColumnSizer->AddGrowableRow( 4 ); LeftColumnSizer->AddGrowableRow( 5 ); LeftColumnSizer->AddGrowableRow( 2 ); LeftColumnSizer->SetFlexibleDirection( wxBOTH ); LeftColumnSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED ); wxString m_PageSizeBoxChoices[] = { _("A4"), _("A3"), _("A2"), _("A1"), _("A0"), _("A"), _("B"), _("C"), _("D"), _("E"), _("User") }; int m_PageSizeBoxNChoices = sizeof( m_PageSizeBoxChoices ) / sizeof( wxString ); m_PageSizeBox = new wxRadioBox( this, wxID_ANY, _("Page Size:"), wxDefaultPosition, wxDefaultSize, m_PageSizeBoxNChoices, m_PageSizeBoxChoices, 1, wxRA_SPECIFY_COLS ); m_PageSizeBox->SetSelection( 9 ); LeftColumnSizer->Add( m_PageSizeBox, 0, wxALL|wxEXPAND, 5 ); wxStaticBoxSizer* sbSizer9; sbSizer9 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Paper Size:") ), wxVERTICAL ); wxString m_paperSizeComboBoxChoices[] = { _("A4"), _("A3"), _("A2"), _("A1"), _("A0"), _("A"), _("B"), _("C"), _("D"), _("E"), _("USLetter"), _("USLegal"), _("USLedger"), _("User (Custom)") }; int m_paperSizeComboBoxNChoices = sizeof( m_paperSizeComboBoxChoices ) / sizeof( wxString ); m_paperSizeComboBox = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_paperSizeComboBoxNChoices, m_paperSizeComboBoxChoices, 0 ); m_paperSizeComboBox->SetSelection( 0 ); sbSizer9->Add( m_paperSizeComboBox, 0, wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( 5, 0, 1, wxEXPAND, 5 ); LeftColumnSizer->Add( sbSizer9, 0, wxALL|wxEXPAND, 5 ); wxStaticBoxSizer* sbSizer8; sbSizer8 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Orientation:") ), wxVERTICAL ); m_landscapeCheckbox = new wxCheckBox( this, wxID_ANY, _("Landscape"), wxDefaultPosition, wxDefaultSize, 0 ); m_landscapeCheckbox->SetValue(true); m_landscapeCheckbox->SetToolTip( _("Check for landscape, uncheck for portrait") ); wxString m_orientationComboBoxChoices[] = { _("Landscape"), _("Portrait") }; int m_orientationComboBoxNChoices = sizeof( m_orientationComboBoxChoices ) / sizeof( wxString ); m_orientationComboBox = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_orientationComboBoxNChoices, m_orientationComboBoxChoices, 0 ); m_orientationComboBox->SetSelection( 0 ); sbSizer8->Add( m_orientationComboBox, 0, wxALL|wxEXPAND, 5 ); sbSizer8->Add( m_landscapeCheckbox, 0, wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( sbSizer8, 0, wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( sbSizer8, 1, wxALL|wxEXPAND, 5 ); wxStaticBoxSizer* sbSizer10; sbSizer10 = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Custom Page Size:") ), wxVERTICAL ); wxBoxSizer* bSizerXsize; bSizerXsize = new wxBoxSizer( wxVERTICAL ); UserPageSizeX = new wxStaticText( this, wxID_ANY, _("User Page Size X: "), wxDefaultPosition, wxDefaultSize, 0 ); UserPageSizeX = new wxStaticText( this, wxID_ANY, _("Width:"), wxDefaultPosition, wxDefaultSize, 0 ); UserPageSizeX->Wrap( -1 ); bSizerXsize->Add( UserPageSizeX, 0, wxTOP|wxRIGHT|wxLEFT, 5 ); m_TextUserSizeX = new wxTextCtrl( this, ID_TEXTCTRL_USER_PAGE_SIZE_X, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); bSizerXsize->Add( m_TextUserSizeX, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 ); bSizerXsize->Add( m_TextUserSizeX, 0, wxALIGN_LEFT|wxALIGN_TOP|wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( bSizerXsize, 1, wxEXPAND, 5 ); sbSizer10->Add( bSizerXsize, 1, wxALIGN_TOP|wxALL|wxEXPAND, 5 ); wxBoxSizer* bSizerYsize; bSizerYsize = new wxBoxSizer( wxVERTICAL ); UserPageSizeY = new wxStaticText( this, wxID_ANY, _("User Page Size Y: "), wxDefaultPosition, wxDefaultSize, 0 ); UserPageSizeY = new wxStaticText( this, wxID_ANY, _("Height:"), wxDefaultPosition, wxDefaultSize, 0 ); UserPageSizeY->Wrap( -1 ); bSizerYsize->Add( UserPageSizeY, 0, wxTOP|wxRIGHT|wxLEFT, 5 ); bSizerYsize->Add( UserPageSizeY, 0, wxALIGN_TOP|wxALL, 5 ); m_TextUserSizeY = new wxTextCtrl( this, ID_TEXTCTRL_USER_PAGE_SIZE_Y, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 ); bSizerYsize->Add( m_TextUserSizeY, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 ); bSizerYsize->Add( m_TextUserSizeY, 0, wxALIGN_TOP|wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( bSizerYsize, 1, wxEXPAND, 5 ); sbSizer10->Add( bSizerYsize, 1, wxALIGN_TOP|wxALL|wxEXPAND, 5 ); LeftColumnSizer->Add( 5, 5, 1, wxEXPAND, 5 ); LeftColumnSizer->Add( 5, 5, 1, wxEXPAND, 5 ); LeftColumnSizer->Add( sbSizer10, 1, wxALL|wxEXPAND, 5 ); bUpperSizerH->Add( LeftColumnSizer, 0, wxEXPAND, 5 ); Loading Loading @@ -219,7 +219,7 @@ DIALOG_PAGES_SETTINGS_BASE::DIALOG_PAGES_SETTINGS_BASE( wxWindow* parent, wxWind // Connect Events this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnCloseWindow ) ); m_PageSizeBox->Connect( wxEVT_COMMAND_RADIOBOX_SELECTED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::onRadioButtonSelected ), NULL, this ); m_paperSizeComboBox->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::onPaperSizeChoice ), NULL, this ); m_TextUserSizeX->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnTextctrlUserPageSizeXTextUpdated ), NULL, this ); m_TextUserSizeY->Connect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnTextctrlUserPageSizeYTextUpdated ), NULL, this ); m_TitleExport->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnCheckboxTitleClick ), NULL, this ); Loading @@ -231,7 +231,7 @@ DIALOG_PAGES_SETTINGS_BASE::~DIALOG_PAGES_SETTINGS_BASE() { // Disconnect Events this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnCloseWindow ) ); m_PageSizeBox->Disconnect( wxEVT_COMMAND_RADIOBOX_SELECTED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::onRadioButtonSelected ), NULL, this ); m_paperSizeComboBox->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::onPaperSizeChoice ), NULL, this ); m_TextUserSizeX->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnTextctrlUserPageSizeXTextUpdated ), NULL, this ); m_TextUserSizeY->Disconnect( wxEVT_COMMAND_TEXT_UPDATED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnTextctrlUserPageSizeYTextUpdated ), NULL, this ); m_TitleExport->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PAGES_SETTINGS_BASE::OnCheckboxTitleClick ), NULL, this ); Loading
common/dialogs/dialog_page_settings_base.fbp +396 −402 File changed.Preview size limit exceeded, changes collapsed. Show changes