Stop bludgeoncompiling dialog_page_settings
Through the power of OOP! Needs some more cleanup though
This commit is contained in:
parent
9aa2d7e101
commit
9b0a137d6c
|
@ -179,6 +179,7 @@ set( COMMON_DLG_SRCS
|
||||||
dialogs/dialog_migrate_settings_base.cpp
|
dialogs/dialog_migrate_settings_base.cpp
|
||||||
dialogs/dialog_page_settings_base.cpp
|
dialogs/dialog_page_settings_base.cpp
|
||||||
dialogs/dialog_text_entry_base.cpp
|
dialogs/dialog_text_entry_base.cpp
|
||||||
|
dialogs/dialog_page_settings.cpp
|
||||||
dialogs/dialog_print_generic.cpp
|
dialogs/dialog_print_generic.cpp
|
||||||
dialogs/dialog_print_generic_base.cpp
|
dialogs/dialog_print_generic_base.cpp
|
||||||
dialogs/dialog_text_entry.cpp
|
dialogs/dialog_text_entry.cpp
|
||||||
|
|
|
@ -1,24 +1,20 @@
|
||||||
/*
|
/*
|
||||||
* This program source code file is part of KICAD, a free EDA CAD application.
|
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||||
*
|
*
|
||||||
* Copyright (C) 1992-2020 Kicad Developers, see AUTHORS.txt for contributors.
|
* Copyright (C) 2020 KiCad Developers, see AUTHORS.txt for contributors.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software: you can redistribute it and/or modify it
|
||||||
* modify it under the terms of the GNU General Public License
|
* under the terms of the GNU General Public License as published by the
|
||||||
* as published by the Free Software Foundation; either version 2
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
* of the License, or (at your option) any later version.
|
* option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful, but
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* GNU General Public License for more details.
|
* General Public License for more details.
|
||||||
*
|
*
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License along
|
||||||
* along with this program; if not, you may find one here:
|
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
|
||||||
* or you may search the http://www.gnu.org website for the version 2 license,
|
|
||||||
* or you may write to the Free Software Foundation, Inc.,
|
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <base_screen.h>
|
#include <base_screen.h>
|
||||||
|
@ -40,14 +36,6 @@
|
||||||
#include <wx/valgen.h>
|
#include <wx/valgen.h>
|
||||||
#include <wx/tokenzr.h>
|
#include <wx/tokenzr.h>
|
||||||
|
|
||||||
#ifdef EESCHEMA
|
|
||||||
#include <general.h>
|
|
||||||
#include <sch_edit_frame.h>
|
|
||||||
#include <sch_screen.h>
|
|
||||||
#include <schematic.h>
|
|
||||||
#include <eeschema_settings.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define MAX_PAGE_EXAMPLE_SIZE 200
|
#define MAX_PAGE_EXAMPLE_SIZE 200
|
||||||
|
|
||||||
|
|
||||||
|
@ -78,16 +66,18 @@ static const wxString pageFmts[] =
|
||||||
// to be recognized in code
|
// to be recognized in code
|
||||||
};
|
};
|
||||||
|
|
||||||
DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS( EDA_DRAW_FRAME* parent, wxSize aMaxUserSizeMils ) :
|
DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS( EDA_DRAW_FRAME* aParent, double aIuPerMils,
|
||||||
DIALOG_PAGES_SETTINGS_BASE( parent ),
|
wxSize aMaxUserSizeMils ) :
|
||||||
|
DIALOG_PAGES_SETTINGS_BASE( aParent ),
|
||||||
|
m_parent( aParent ),
|
||||||
|
m_screen( m_parent->GetScreen() ),
|
||||||
|
m_pageBitmap( nullptr ),
|
||||||
m_initialized( false ),
|
m_initialized( false ),
|
||||||
m_customSizeX( parent, m_userSizeXLabel, m_userSizeXCtrl, m_userSizeXUnits, false ),
|
m_customSizeX( aParent, m_userSizeXLabel, m_userSizeXCtrl, m_userSizeXUnits, false ),
|
||||||
m_customSizeY( parent, m_userSizeYLabel, m_userSizeYCtrl, m_userSizeYUnits, false )
|
m_customSizeY( aParent, m_userSizeYLabel, m_userSizeYCtrl, m_userSizeYUnits, false ),
|
||||||
|
m_iuPerMils( aIuPerMils )
|
||||||
{
|
{
|
||||||
m_parent = parent;
|
|
||||||
m_screen = m_parent->GetScreen();
|
|
||||||
m_projectPath = Prj().GetProjectPath();
|
m_projectPath = Prj().GetProjectPath();
|
||||||
m_page_bitmap = NULL;
|
|
||||||
m_maxPageSizeMils = aMaxUserSizeMils;
|
m_maxPageSizeMils = aMaxUserSizeMils;
|
||||||
m_tb = m_parent->GetTitleBlock();
|
m_tb = m_parent->GetTitleBlock();
|
||||||
m_customFmt = false;
|
m_customFmt = false;
|
||||||
|
@ -100,7 +90,7 @@ DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS( EDA_DRAW_FRAME* parent, wxSize aMa
|
||||||
|
|
||||||
m_PickDate->SetValue( wxDateTime::Now() );
|
m_PickDate->SetValue( wxDateTime::Now() );
|
||||||
|
|
||||||
if( parent->GetName() == PL_EDITOR_FRAME_NAME )
|
if( m_parent->GetName() == PL_EDITOR_FRAME_NAME )
|
||||||
{
|
{
|
||||||
SetTitle( _( "Preview Settings" ) );
|
SetTitle( _( "Preview Settings" ) );
|
||||||
m_staticTextPaper->SetLabel( _( "Preview Paper" ) );
|
m_staticTextPaper->SetLabel( _( "Preview Paper" ) );
|
||||||
|
@ -113,41 +103,18 @@ DIALOG_PAGES_SETTINGS::DIALOG_PAGES_SETTINGS( EDA_DRAW_FRAME* parent, wxSize aMa
|
||||||
m_staticTextTitleBlock->SetLabel( _( "Title Block" ) );
|
m_staticTextTitleBlock->SetLabel( _( "Title Block" ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
initDialog();
|
|
||||||
|
|
||||||
GetSizer()->SetSizeHints( this );
|
|
||||||
Centre();
|
Centre();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
DIALOG_PAGES_SETTINGS::~DIALOG_PAGES_SETTINGS()
|
DIALOG_PAGES_SETTINGS::~DIALOG_PAGES_SETTINGS()
|
||||||
{
|
{
|
||||||
#ifdef EESCHEMA
|
delete m_pageBitmap;
|
||||||
auto cfg = dynamic_cast<EESCHEMA_SETTINGS*>( Kiface().KifaceSettings() );
|
|
||||||
wxASSERT( cfg );
|
|
||||||
|
|
||||||
cfg->m_PageSettings.export_paper = m_PaperExport->GetValue();
|
|
||||||
cfg->m_PageSettings.export_revision = m_RevisionExport->GetValue();
|
|
||||||
cfg->m_PageSettings.export_date = m_DateExport->GetValue();
|
|
||||||
cfg->m_PageSettings.export_title = m_TitleExport->GetValue();
|
|
||||||
cfg->m_PageSettings.export_company = m_CompanyExport->GetValue();
|
|
||||||
cfg->m_PageSettings.export_comment1 = m_Comment1Export->GetValue();
|
|
||||||
cfg->m_PageSettings.export_comment2 = m_Comment2Export->GetValue();
|
|
||||||
cfg->m_PageSettings.export_comment3 = m_Comment3Export->GetValue();
|
|
||||||
cfg->m_PageSettings.export_comment4 = m_Comment4Export->GetValue();
|
|
||||||
cfg->m_PageSettings.export_comment5 = m_Comment5Export->GetValue();
|
|
||||||
cfg->m_PageSettings.export_comment6 = m_Comment6Export->GetValue();
|
|
||||||
cfg->m_PageSettings.export_comment7 = m_Comment7Export->GetValue();
|
|
||||||
cfg->m_PageSettings.export_comment8 = m_Comment8Export->GetValue();
|
|
||||||
cfg->m_PageSettings.export_comment9 = m_Comment9Export->GetValue();
|
|
||||||
#endif
|
|
||||||
|
|
||||||
delete m_page_bitmap;
|
|
||||||
delete m_pagelayout;
|
delete m_pagelayout;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DIALOG_PAGES_SETTINGS::initDialog()
|
bool DIALOG_PAGES_SETTINGS::TransferDataToWindow()
|
||||||
{
|
{
|
||||||
wxString msg;
|
wxString msg;
|
||||||
|
|
||||||
|
@ -164,20 +131,6 @@ void DIALOG_PAGES_SETTINGS::initDialog()
|
||||||
// initialize the page layout descr filename
|
// initialize the page layout descr filename
|
||||||
SetWksFileName( BASE_SCREEN::m_PageLayoutDescrFileName );
|
SetWksFileName( BASE_SCREEN::m_PageLayoutDescrFileName );
|
||||||
|
|
||||||
#ifdef EESCHEMA
|
|
||||||
// Init display value for schematic sub-sheet number
|
|
||||||
wxString format = m_TextSheetCount->GetLabel();
|
|
||||||
msg.Printf( format, m_screen->GetPageCount() );
|
|
||||||
m_TextSheetCount->SetLabel( msg );
|
|
||||||
|
|
||||||
format = m_TextSheetNumber->GetLabel();
|
|
||||||
msg.Printf( format, m_screen->GetVirtualPageNumber() );
|
|
||||||
m_TextSheetNumber->SetLabel( msg );
|
|
||||||
#else
|
|
||||||
m_TextSheetCount->Show( false );
|
|
||||||
m_TextSheetNumber->Show( false );
|
|
||||||
#endif
|
|
||||||
|
|
||||||
m_pageInfo = m_parent->GetPageSettings();
|
m_pageInfo = m_parent->GetPageSettings();
|
||||||
SetCurrentPageSizeSelection( m_pageInfo.GetType() );
|
SetCurrentPageSizeSelection( m_pageInfo.GetType() );
|
||||||
m_orientationComboBox->SetSelection( m_pageInfo.IsPortrait() );
|
m_orientationComboBox->SetSelection( m_pageInfo.IsPortrait() );
|
||||||
|
@ -188,13 +141,13 @@ void DIALOG_PAGES_SETTINGS::initDialog()
|
||||||
|
|
||||||
if( m_customFmt )
|
if( m_customFmt )
|
||||||
{
|
{
|
||||||
m_customSizeX.SetValue( m_pageInfo.GetWidthMils() * IU_PER_MILS );
|
m_customSizeX.SetValue( m_pageInfo.GetWidthMils() * m_iuPerMils );
|
||||||
m_customSizeY.SetValue( m_pageInfo.GetHeightMils() * IU_PER_MILS );
|
m_customSizeY.SetValue( m_pageInfo.GetHeightMils() * m_iuPerMils );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
m_customSizeX.SetValue( m_pageInfo.GetCustomWidthMils() * IU_PER_MILS );
|
m_customSizeX.SetValue( m_pageInfo.GetCustomWidthMils() * m_iuPerMils );
|
||||||
m_customSizeY.SetValue( m_pageInfo.GetCustomHeightMils() * IU_PER_MILS );
|
m_customSizeY.SetValue( m_pageInfo.GetCustomHeightMils() * m_iuPerMils );
|
||||||
}
|
}
|
||||||
|
|
||||||
m_TextRevision->SetValue( m_tb.GetRevision() );
|
m_TextRevision->SetValue( m_tb.GetRevision() );
|
||||||
|
@ -211,25 +164,9 @@ void DIALOG_PAGES_SETTINGS::initDialog()
|
||||||
m_TextComment8->SetValue( m_tb.GetComment( 7 ) );
|
m_TextComment8->SetValue( m_tb.GetComment( 7 ) );
|
||||||
m_TextComment9->SetValue( m_tb.GetComment( 8 ) );
|
m_TextComment9->SetValue( m_tb.GetComment( 8 ) );
|
||||||
|
|
||||||
#ifdef EESCHEMA
|
// The default is to disable aall these fields for the "generic" dialog
|
||||||
auto cfg = dynamic_cast<EESCHEMA_SETTINGS*>( Kiface().KifaceSettings() );
|
m_TextSheetCount->Show( false );
|
||||||
wxASSERT( cfg );
|
m_TextSheetNumber->Show( false );
|
||||||
|
|
||||||
m_PaperExport->SetValue( cfg->m_PageSettings.export_paper );
|
|
||||||
m_RevisionExport->SetValue( cfg->m_PageSettings.export_revision );
|
|
||||||
m_DateExport->SetValue( cfg->m_PageSettings.export_date );
|
|
||||||
m_TitleExport->SetValue( cfg->m_PageSettings.export_title );
|
|
||||||
m_CompanyExport->SetValue( cfg->m_PageSettings.export_company );
|
|
||||||
m_Comment1Export->SetValue( cfg->m_PageSettings.export_comment1 );
|
|
||||||
m_Comment2Export->SetValue( cfg->m_PageSettings.export_comment2 );
|
|
||||||
m_Comment3Export->SetValue( cfg->m_PageSettings.export_comment3 );
|
|
||||||
m_Comment4Export->SetValue( cfg->m_PageSettings.export_comment4 );
|
|
||||||
m_Comment5Export->SetValue( cfg->m_PageSettings.export_comment5 );
|
|
||||||
m_Comment6Export->SetValue( cfg->m_PageSettings.export_comment6 );
|
|
||||||
m_Comment7Export->SetValue( cfg->m_PageSettings.export_comment7 );
|
|
||||||
m_Comment8Export->SetValue( cfg->m_PageSettings.export_comment8 );
|
|
||||||
m_Comment9Export->SetValue( cfg->m_PageSettings.export_comment9 );
|
|
||||||
#else
|
|
||||||
m_PaperExport->Show( false );
|
m_PaperExport->Show( false );
|
||||||
m_RevisionExport->Show( false );
|
m_RevisionExport->Show( false );
|
||||||
m_DateExport->Show( false );
|
m_DateExport->Show( false );
|
||||||
|
@ -244,24 +181,29 @@ void DIALOG_PAGES_SETTINGS::initDialog()
|
||||||
m_Comment7Export->Show( false );
|
m_Comment7Export->Show( false );
|
||||||
m_Comment8Export->Show( false );
|
m_Comment8Export->Show( false );
|
||||||
m_Comment9Export->Show( false );
|
m_Comment9Export->Show( false );
|
||||||
#endif
|
|
||||||
|
onTransferDataToWindow();
|
||||||
|
|
||||||
GetPageLayoutInfoFromDialog();
|
GetPageLayoutInfoFromDialog();
|
||||||
UpdatePageLayoutExample();
|
UpdatePageLayoutExample();
|
||||||
|
|
||||||
|
GetSizer()->SetSizeHints( this );
|
||||||
|
|
||||||
// Make the OK button the default.
|
// Make the OK button the default.
|
||||||
m_sdbSizerOK->SetDefault();
|
m_sdbSizerOK->SetDefault();
|
||||||
m_initialized = true;
|
m_initialized = true;
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void DIALOG_PAGES_SETTINGS::OnOkClick( wxCommandEvent& event )
|
bool DIALOG_PAGES_SETTINGS::TransferDataFromWindow()
|
||||||
{
|
{
|
||||||
if( !m_customSizeX.Validate( MIN_PAGE_SIZE_MILS, m_maxPageSizeMils.x, EDA_UNITS::MILS ) )
|
if( !m_customSizeX.Validate( MIN_PAGE_SIZE_MILS, m_maxPageSizeMils.x, EDA_UNITS::MILS ) )
|
||||||
return;
|
return false;
|
||||||
|
|
||||||
if( !m_customSizeY.Validate( MIN_PAGE_SIZE_MILS, m_maxPageSizeMils.y, EDA_UNITS::MILS ) )
|
if( !m_customSizeY.Validate( MIN_PAGE_SIZE_MILS, m_maxPageSizeMils.y, EDA_UNITS::MILS ) )
|
||||||
return;
|
return false;
|
||||||
|
|
||||||
if( SavePageSettings() )
|
if( SavePageSettings() )
|
||||||
{
|
{
|
||||||
|
@ -274,7 +216,7 @@ void DIALOG_PAGES_SETTINGS::OnOkClick( wxCommandEvent& event )
|
||||||
m_parent->OnPageSettingsChange();
|
m_parent->OnPageSettingsChange();
|
||||||
}
|
}
|
||||||
|
|
||||||
event.Skip();
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -612,69 +554,7 @@ bool DIALOG_PAGES_SETTINGS::SavePageSettings()
|
||||||
|
|
||||||
m_parent->SetTitleBlock( m_tb );
|
m_parent->SetTitleBlock( m_tb );
|
||||||
|
|
||||||
|
return onSavePageSettings();
|
||||||
#ifdef EESCHEMA
|
|
||||||
wxCHECK_MSG( dynamic_cast<SCH_EDIT_FRAME*>( m_parent ), true,
|
|
||||||
"DIALOG_PAGES_SETTINGS::OnDateApplyClick frame is not a schematic frame!" );
|
|
||||||
|
|
||||||
// Exports settings to other sheets if requested:
|
|
||||||
SCH_SCREENS ScreenList( dynamic_cast<SCH_EDIT_FRAME*>( m_parent )->Schematic().Root() );
|
|
||||||
|
|
||||||
// Update page info and/or title blocks for all screens
|
|
||||||
for( SCH_SCREEN* screen = ScreenList.GetFirst(); screen; screen = ScreenList.GetNext() )
|
|
||||||
{
|
|
||||||
if( screen == m_screen )
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if( m_PaperExport->IsChecked() )
|
|
||||||
screen->SetPageSettings( m_pageInfo );
|
|
||||||
|
|
||||||
TITLE_BLOCK tb2 = screen->GetTitleBlock();
|
|
||||||
|
|
||||||
if( m_RevisionExport->IsChecked() )
|
|
||||||
tb2.SetRevision( m_tb.GetRevision() );
|
|
||||||
|
|
||||||
if( m_DateExport->IsChecked() )
|
|
||||||
tb2.SetDate( m_tb.GetDate() );
|
|
||||||
|
|
||||||
if( m_TitleExport->IsChecked() )
|
|
||||||
tb2.SetTitle( m_tb.GetTitle() );
|
|
||||||
|
|
||||||
if( m_CompanyExport->IsChecked() )
|
|
||||||
tb2.SetCompany( m_tb.GetCompany() );
|
|
||||||
|
|
||||||
if( m_Comment1Export->IsChecked() )
|
|
||||||
tb2.SetComment( 0, m_tb.GetComment( 0 ) );
|
|
||||||
|
|
||||||
if( m_Comment2Export->IsChecked() )
|
|
||||||
tb2.SetComment( 1, m_tb.GetComment( 1 ) );
|
|
||||||
|
|
||||||
if( m_Comment3Export->IsChecked() )
|
|
||||||
tb2.SetComment( 2, m_tb.GetComment( 2 ) );
|
|
||||||
|
|
||||||
if( m_Comment4Export->IsChecked() )
|
|
||||||
tb2.SetComment( 3, m_tb.GetComment( 3 ) );
|
|
||||||
|
|
||||||
if( m_Comment5Export->IsChecked() )
|
|
||||||
tb2.SetComment( 4, m_tb.GetComment( 4 ) );
|
|
||||||
|
|
||||||
if( m_Comment6Export->IsChecked() )
|
|
||||||
tb2.SetComment( 5, m_tb.GetComment( 5 ) );
|
|
||||||
|
|
||||||
if( m_Comment7Export->IsChecked() )
|
|
||||||
tb2.SetComment( 6, m_tb.GetComment( 6 ) );
|
|
||||||
|
|
||||||
if( m_Comment8Export->IsChecked() )
|
|
||||||
tb2.SetComment( 7, m_tb.GetComment( 7 ) );
|
|
||||||
|
|
||||||
if( m_Comment9Export->IsChecked() )
|
|
||||||
tb2.SetComment( 8, m_tb.GetComment( 8 ) );
|
|
||||||
|
|
||||||
screen->SetTitleBlock( tb2 );
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -720,15 +600,15 @@ void DIALOG_PAGES_SETTINGS::UpdatePageLayoutExample()
|
||||||
lyHeight = KiROUND( (double) lyWidth / lyRatio );
|
lyHeight = KiROUND( (double) lyWidth / lyRatio );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( m_page_bitmap )
|
if( m_pageBitmap )
|
||||||
{
|
{
|
||||||
m_PageLayoutExampleBitmap->SetBitmap( wxNullBitmap );
|
m_PageLayoutExampleBitmap->SetBitmap( wxNullBitmap );
|
||||||
delete m_page_bitmap;
|
delete m_pageBitmap;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_page_bitmap = new wxBitmap( lyWidth + 1, lyHeight + 1 );
|
m_pageBitmap = new wxBitmap( lyWidth + 1, lyHeight + 1 );
|
||||||
|
|
||||||
if( m_page_bitmap->IsOk() )
|
if( m_pageBitmap->IsOk() )
|
||||||
{
|
{
|
||||||
double scaleW = (double) lyWidth / clamped_layout_size.x;
|
double scaleW = (double) lyWidth / clamped_layout_size.x;
|
||||||
double scaleH = (double) lyHeight / clamped_layout_size.y;
|
double scaleH = (double) lyHeight / clamped_layout_size.y;
|
||||||
|
@ -737,7 +617,7 @@ void DIALOG_PAGES_SETTINGS::UpdatePageLayoutExample()
|
||||||
// Prepare DC.
|
// Prepare DC.
|
||||||
wxSize example_size( lyWidth + 1, lyHeight + 1 );
|
wxSize example_size( lyWidth + 1, lyHeight + 1 );
|
||||||
wxMemoryDC memDC;
|
wxMemoryDC memDC;
|
||||||
memDC.SelectObject( *m_page_bitmap );
|
memDC.SelectObject( *m_pageBitmap );
|
||||||
memDC.SetClippingRegion( wxPoint( 0, 0 ), example_size );
|
memDC.SetClippingRegion( wxPoint( 0, 0 ), example_size );
|
||||||
memDC.Clear();
|
memDC.Clear();
|
||||||
memDC.SetUserScale( scale, scale );
|
memDC.SetUserScale( scale, scale );
|
||||||
|
@ -777,7 +657,7 @@ void DIALOG_PAGES_SETTINGS::UpdatePageLayoutExample()
|
||||||
wxEmptyString, m_screen->GetVirtualPageNumber() == 1 );
|
wxEmptyString, m_screen->GetVirtualPageNumber() == 1 );
|
||||||
|
|
||||||
memDC.SelectObject( wxNullBitmap );
|
memDC.SelectObject( wxNullBitmap );
|
||||||
m_PageLayoutExampleBitmap->SetBitmap( *m_page_bitmap );
|
m_PageLayoutExampleBitmap->SetBitmap( *m_pageBitmap );
|
||||||
WS_DATA_MODEL::SetAltInstance( NULL );
|
WS_DATA_MODEL::SetAltInstance( NULL );
|
||||||
|
|
||||||
// Refresh the dialog.
|
// Refresh the dialog.
|
||||||
|
@ -856,8 +736,8 @@ void DIALOG_PAGES_SETTINGS::GetPageLayoutInfoFromDialog()
|
||||||
|
|
||||||
void DIALOG_PAGES_SETTINGS::GetCustomSizeMilsFromDialog()
|
void DIALOG_PAGES_SETTINGS::GetCustomSizeMilsFromDialog()
|
||||||
{
|
{
|
||||||
double customSizeX = (double) m_customSizeX.GetValue() / IU_PER_MILS;
|
double customSizeX = (double) m_customSizeX.GetValue() / m_iuPerMils;
|
||||||
double customSizeY = (double) m_customSizeY.GetValue() / IU_PER_MILS;
|
double customSizeY = (double) m_customSizeY.GetValue() / m_iuPerMils;
|
||||||
|
|
||||||
// Prepare to painless double -> int conversion.
|
// Prepare to painless double -> int conversion.
|
||||||
customSizeX = Clamp( double( INT_MIN ), customSizeX, double( INT_MAX ) );
|
customSizeX = Clamp( double( INT_MIN ), customSizeX, double( INT_MAX ) );
|
||||||
|
|
|
@ -65,6 +65,7 @@ set( EESCHEMA_DLGS
|
||||||
dialogs/dialog_edit_line_style.cpp
|
dialogs/dialog_edit_line_style.cpp
|
||||||
dialogs/dialog_edit_line_style_base.cpp
|
dialogs/dialog_edit_line_style_base.cpp
|
||||||
dialogs/dialog_edit_one_field.cpp
|
dialogs/dialog_edit_one_field.cpp
|
||||||
|
dialogs/dialog_eeschema_page_settings.cpp
|
||||||
dialogs/dialog_erc.cpp
|
dialogs/dialog_erc.cpp
|
||||||
dialogs/dialog_erc_base.cpp
|
dialogs/dialog_erc_base.cpp
|
||||||
dialogs/dialog_global_sym_lib_table_config.cpp
|
dialogs/dialog_global_sym_lib_table_config.cpp
|
||||||
|
@ -268,7 +269,6 @@ set( EESCHEMA_SRCS
|
||||||
|
|
||||||
|
|
||||||
set( EESCHEMA_COMMON_SRCS
|
set( EESCHEMA_COMMON_SRCS
|
||||||
${CMAKE_SOURCE_DIR}/common/dialogs/dialog_page_settings.cpp
|
|
||||||
${CMAKE_SOURCE_DIR}/common/dialogs/panel_gal_display_options.cpp
|
${CMAKE_SOURCE_DIR}/common/dialogs/panel_gal_display_options.cpp
|
||||||
${CMAKE_SOURCE_DIR}/common/dialogs/panel_setup_severities.cpp
|
${CMAKE_SOURCE_DIR}/common/dialogs/panel_setup_severities.cpp
|
||||||
${CMAKE_SOURCE_DIR}/common/common.cpp
|
${CMAKE_SOURCE_DIR}/common/common.cpp
|
||||||
|
|
|
@ -0,0 +1,170 @@
|
||||||
|
/*
|
||||||
|
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2020 KiCad Developers, see AUTHORS.txt for contributors.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License as published by the
|
||||||
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
* option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful, but
|
||||||
|
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along
|
||||||
|
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "dialog_eeschema_page_settings.h"
|
||||||
|
|
||||||
|
#include <kiface_i.h>
|
||||||
|
#include <general.h>
|
||||||
|
#include <sch_edit_frame.h>
|
||||||
|
#include <sch_screen.h>
|
||||||
|
#include <schematic.h>
|
||||||
|
#include <eeschema_settings.h>
|
||||||
|
|
||||||
|
DIALOG_EESCHEMA_PAGE_SETTINGS::DIALOG_EESCHEMA_PAGE_SETTINGS( EDA_DRAW_FRAME* aParent,
|
||||||
|
wxSize aMaxUserSizeMils ) :
|
||||||
|
DIALOG_PAGES_SETTINGS( aParent, IU_PER_MILS, aMaxUserSizeMils )
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
DIALOG_EESCHEMA_PAGE_SETTINGS::~DIALOG_EESCHEMA_PAGE_SETTINGS()
|
||||||
|
{
|
||||||
|
auto cfg = dynamic_cast<EESCHEMA_SETTINGS*>( Kiface().KifaceSettings() );
|
||||||
|
wxASSERT( cfg );
|
||||||
|
|
||||||
|
cfg->m_PageSettings.export_paper = m_PaperExport->GetValue();
|
||||||
|
cfg->m_PageSettings.export_revision = m_RevisionExport->GetValue();
|
||||||
|
cfg->m_PageSettings.export_date = m_DateExport->GetValue();
|
||||||
|
cfg->m_PageSettings.export_title = m_TitleExport->GetValue();
|
||||||
|
cfg->m_PageSettings.export_company = m_CompanyExport->GetValue();
|
||||||
|
cfg->m_PageSettings.export_comment1 = m_Comment1Export->GetValue();
|
||||||
|
cfg->m_PageSettings.export_comment2 = m_Comment2Export->GetValue();
|
||||||
|
cfg->m_PageSettings.export_comment3 = m_Comment3Export->GetValue();
|
||||||
|
cfg->m_PageSettings.export_comment4 = m_Comment4Export->GetValue();
|
||||||
|
cfg->m_PageSettings.export_comment5 = m_Comment5Export->GetValue();
|
||||||
|
cfg->m_PageSettings.export_comment6 = m_Comment6Export->GetValue();
|
||||||
|
cfg->m_PageSettings.export_comment7 = m_Comment7Export->GetValue();
|
||||||
|
cfg->m_PageSettings.export_comment8 = m_Comment8Export->GetValue();
|
||||||
|
cfg->m_PageSettings.export_comment9 = m_Comment9Export->GetValue();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void DIALOG_EESCHEMA_PAGE_SETTINGS::onTransferDataToWindow()
|
||||||
|
{
|
||||||
|
wxString msg;
|
||||||
|
|
||||||
|
m_TextSheetCount->Show( true );
|
||||||
|
m_TextSheetNumber->Show( true );
|
||||||
|
m_PaperExport->Show( true );
|
||||||
|
m_RevisionExport->Show( true );
|
||||||
|
m_DateExport->Show( true );
|
||||||
|
m_TitleExport->Show( true );
|
||||||
|
m_CompanyExport->Show( true );
|
||||||
|
m_Comment1Export->Show( true );
|
||||||
|
m_Comment2Export->Show( true );
|
||||||
|
m_Comment3Export->Show( true );
|
||||||
|
m_Comment4Export->Show( true );
|
||||||
|
m_Comment5Export->Show( true );
|
||||||
|
m_Comment6Export->Show( true );
|
||||||
|
m_Comment7Export->Show( true );
|
||||||
|
m_Comment8Export->Show( true );
|
||||||
|
m_Comment9Export->Show( true );
|
||||||
|
|
||||||
|
// Init display value for schematic sub-sheet number
|
||||||
|
wxString format = m_TextSheetCount->GetLabel();
|
||||||
|
msg.Printf( format, m_screen->GetPageCount() );
|
||||||
|
m_TextSheetCount->SetLabel( msg );
|
||||||
|
|
||||||
|
format = m_TextSheetNumber->GetLabel();
|
||||||
|
msg.Printf( format, m_screen->GetVirtualPageNumber() );
|
||||||
|
m_TextSheetNumber->SetLabel( msg );
|
||||||
|
|
||||||
|
auto cfg = dynamic_cast<EESCHEMA_SETTINGS*>( Kiface().KifaceSettings() );
|
||||||
|
wxASSERT( cfg );
|
||||||
|
|
||||||
|
m_PaperExport->SetValue( cfg->m_PageSettings.export_paper );
|
||||||
|
m_RevisionExport->SetValue( cfg->m_PageSettings.export_revision );
|
||||||
|
m_DateExport->SetValue( cfg->m_PageSettings.export_date );
|
||||||
|
m_TitleExport->SetValue( cfg->m_PageSettings.export_title );
|
||||||
|
m_CompanyExport->SetValue( cfg->m_PageSettings.export_company );
|
||||||
|
m_Comment1Export->SetValue( cfg->m_PageSettings.export_comment1 );
|
||||||
|
m_Comment2Export->SetValue( cfg->m_PageSettings.export_comment2 );
|
||||||
|
m_Comment3Export->SetValue( cfg->m_PageSettings.export_comment3 );
|
||||||
|
m_Comment4Export->SetValue( cfg->m_PageSettings.export_comment4 );
|
||||||
|
m_Comment5Export->SetValue( cfg->m_PageSettings.export_comment5 );
|
||||||
|
m_Comment6Export->SetValue( cfg->m_PageSettings.export_comment6 );
|
||||||
|
m_Comment7Export->SetValue( cfg->m_PageSettings.export_comment7 );
|
||||||
|
m_Comment8Export->SetValue( cfg->m_PageSettings.export_comment8 );
|
||||||
|
m_Comment9Export->SetValue( cfg->m_PageSettings.export_comment9 );
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
bool DIALOG_EESCHEMA_PAGE_SETTINGS::onSavePageSettings()
|
||||||
|
{
|
||||||
|
wxCHECK_MSG( dynamic_cast<SCH_EDIT_FRAME*>( m_parent ), true,
|
||||||
|
"DIALOG_PAGES_SETTINGS::OnDateApplyClick frame is not a schematic frame!" );
|
||||||
|
|
||||||
|
// Exports settings to other sheets if requested:
|
||||||
|
SCH_SCREENS ScreenList( dynamic_cast<SCH_EDIT_FRAME*>( m_parent )->Schematic().Root() );
|
||||||
|
|
||||||
|
// Update page info and/or title blocks for all screens
|
||||||
|
for( SCH_SCREEN* screen = ScreenList.GetFirst(); screen; screen = ScreenList.GetNext() )
|
||||||
|
{
|
||||||
|
if( screen == m_screen )
|
||||||
|
continue;
|
||||||
|
|
||||||
|
if( m_PaperExport->IsChecked() )
|
||||||
|
screen->SetPageSettings( m_pageInfo );
|
||||||
|
|
||||||
|
TITLE_BLOCK tb2 = screen->GetTitleBlock();
|
||||||
|
|
||||||
|
if( m_RevisionExport->IsChecked() )
|
||||||
|
tb2.SetRevision( m_tb.GetRevision() );
|
||||||
|
|
||||||
|
if( m_DateExport->IsChecked() )
|
||||||
|
tb2.SetDate( m_tb.GetDate() );
|
||||||
|
|
||||||
|
if( m_TitleExport->IsChecked() )
|
||||||
|
tb2.SetTitle( m_tb.GetTitle() );
|
||||||
|
|
||||||
|
if( m_CompanyExport->IsChecked() )
|
||||||
|
tb2.SetCompany( m_tb.GetCompany() );
|
||||||
|
|
||||||
|
if( m_Comment1Export->IsChecked() )
|
||||||
|
tb2.SetComment( 0, m_tb.GetComment( 0 ) );
|
||||||
|
|
||||||
|
if( m_Comment2Export->IsChecked() )
|
||||||
|
tb2.SetComment( 1, m_tb.GetComment( 1 ) );
|
||||||
|
|
||||||
|
if( m_Comment3Export->IsChecked() )
|
||||||
|
tb2.SetComment( 2, m_tb.GetComment( 2 ) );
|
||||||
|
|
||||||
|
if( m_Comment4Export->IsChecked() )
|
||||||
|
tb2.SetComment( 3, m_tb.GetComment( 3 ) );
|
||||||
|
|
||||||
|
if( m_Comment5Export->IsChecked() )
|
||||||
|
tb2.SetComment( 4, m_tb.GetComment( 4 ) );
|
||||||
|
|
||||||
|
if( m_Comment6Export->IsChecked() )
|
||||||
|
tb2.SetComment( 5, m_tb.GetComment( 5 ) );
|
||||||
|
|
||||||
|
if( m_Comment7Export->IsChecked() )
|
||||||
|
tb2.SetComment( 6, m_tb.GetComment( 6 ) );
|
||||||
|
|
||||||
|
if( m_Comment8Export->IsChecked() )
|
||||||
|
tb2.SetComment( 7, m_tb.GetComment( 7 ) );
|
||||||
|
|
||||||
|
if( m_Comment9Export->IsChecked() )
|
||||||
|
tb2.SetComment( 8, m_tb.GetComment( 8 ) );
|
||||||
|
|
||||||
|
screen->SetTitleBlock( tb2 );
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
|
@ -0,0 +1,38 @@
|
||||||
|
/*
|
||||||
|
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2020 KiCad Developers, see AUTHORS.txt for contributors.
|
||||||
|
*
|
||||||
|
* This program is free software: you can redistribute it and/or modify it
|
||||||
|
* under the terms of the GNU General Public License as published by the
|
||||||
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
|
* option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful, but
|
||||||
|
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License along
|
||||||
|
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef DIALOG_EESCHEMA_PAGE_SETTINGS_H
|
||||||
|
#define DIALOG_EESCHEMA_PAGE_SETTINGS_H
|
||||||
|
|
||||||
|
#include <dialogs/dialog_page_settings.h>
|
||||||
|
|
||||||
|
class WS_DATA_MODEL;
|
||||||
|
|
||||||
|
class DIALOG_EESCHEMA_PAGE_SETTINGS : public DIALOG_PAGES_SETTINGS
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
DIALOG_EESCHEMA_PAGE_SETTINGS( EDA_DRAW_FRAME* aParent, wxSize aMaxUserSizeMils );
|
||||||
|
virtual ~DIALOG_EESCHEMA_PAGE_SETTINGS();
|
||||||
|
|
||||||
|
private:
|
||||||
|
void onTransferDataToWindow() override;
|
||||||
|
bool onSavePageSettings() override;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // DIALOG_PCBNEW_PAGE_SETTINGS
|
|
@ -27,7 +27,7 @@
|
||||||
#include <widgets/infobar.h>
|
#include <widgets/infobar.h>
|
||||||
#include <connection_graph.h>
|
#include <connection_graph.h>
|
||||||
#include <dialogs/dialog_fields_editor_global.h>
|
#include <dialogs/dialog_fields_editor_global.h>
|
||||||
#include <dialogs/dialog_page_settings.h>
|
#include <dialogs/dialog_eeschema_page_settings.h>
|
||||||
#include <dialogs/dialog_paste_special.h>
|
#include <dialogs/dialog_paste_special.h>
|
||||||
#include <dialogs/dialog_plot_schematic.h>
|
#include <dialogs/dialog_plot_schematic.h>
|
||||||
#include <dialogs/dialog_symbol_remap.h>
|
#include <dialogs/dialog_symbol_remap.h>
|
||||||
|
@ -105,7 +105,7 @@ int SCH_EDITOR_CONTROL::PageSetup( const TOOL_EVENT& aEvent )
|
||||||
undoCmd.PushItem( wrapper );
|
undoCmd.PushItem( wrapper );
|
||||||
m_frame->SaveCopyInUndoList( undoCmd, UNDO_REDO::PAGESETTINGS, false );
|
m_frame->SaveCopyInUndoList( undoCmd, UNDO_REDO::PAGESETTINGS, false );
|
||||||
|
|
||||||
DIALOG_PAGES_SETTINGS dlg( m_frame, wxSize( MAX_PAGE_SIZE_MILS, MAX_PAGE_SIZE_MILS ) );
|
DIALOG_EESCHEMA_PAGE_SETTINGS dlg( m_frame, wxSize( MAX_PAGE_SIZE_MILS, MAX_PAGE_SIZE_MILS ) );
|
||||||
dlg.SetWksFileName( BASE_SCREEN::m_PageLayoutDescrFileName );
|
dlg.SetWksFileName( BASE_SCREEN::m_PageLayoutDescrFileName );
|
||||||
|
|
||||||
if( dlg.ShowModal() != wxID_OK )
|
if( dlg.ShowModal() != wxID_OK )
|
||||||
|
|
|
@ -1,24 +1,20 @@
|
||||||
/*
|
/*
|
||||||
* This program source code file is part of KICAD, a free EDA CAD application.
|
* This program source code file is part of KiCad, a free EDA CAD application.
|
||||||
*
|
*
|
||||||
* Copyright (C) 1992-2018 Kicad Developers, see AUTHORS.txt for contributors.
|
* Copyright (C) 2020 KiCad Developers, see AUTHORS.txt for contributors.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software: you can redistribute it and/or modify it
|
||||||
* modify it under the terms of the GNU General Public License
|
* under the terms of the GNU General Public License as published by the
|
||||||
* as published by the Free Software Foundation; either version 2
|
* Free Software Foundation, either version 3 of the License, or (at your
|
||||||
* of the License, or (at your option) any later version.
|
* option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful, but
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
* GNU General Public License for more details.
|
* General Public License for more details.
|
||||||
*
|
*
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License along
|
||||||
* along with this program; if not, you may find one here:
|
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
* http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
|
|
||||||
* or you may search the http://www.gnu.org website for the version 2 license,
|
|
||||||
* or you may write to the Free Software Foundation, Inc.,
|
|
||||||
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef _DIALOG_PAGES_SETTINGS_H_
|
#ifndef _DIALOG_PAGES_SETTINGS_H_
|
||||||
|
@ -37,27 +33,9 @@ class WS_DATA_MODEL;
|
||||||
|
|
||||||
class DIALOG_PAGES_SETTINGS: public DIALOG_PAGES_SETTINGS_BASE
|
class DIALOG_PAGES_SETTINGS: public DIALOG_PAGES_SETTINGS_BASE
|
||||||
{
|
{
|
||||||
private:
|
|
||||||
EDA_DRAW_FRAME* m_parent;
|
|
||||||
BASE_SCREEN* m_screen;
|
|
||||||
wxString m_projectPath; // the curr project path
|
|
||||||
wxArrayString m_pageFmt; /// list of page sizes (not translated)
|
|
||||||
bool m_initialized;
|
|
||||||
bool m_localPrjConfigChanged; /// the page layuout filename was changed
|
|
||||||
wxBitmap* m_page_bitmap; /// Temporary bitmap for the page layout example.
|
|
||||||
wxSize m_layout_size; /// Logical page layout size.
|
|
||||||
wxSize m_maxPageSizeMils; /// The max page size allowed by the caller frame
|
|
||||||
PAGE_INFO m_pageInfo; /// Temporary page info.
|
|
||||||
bool m_customFmt; /// true if the page selection is custom
|
|
||||||
TITLE_BLOCK m_tb; /// Temporary title block (basic inscriptions).
|
|
||||||
WS_DATA_MODEL* m_pagelayout; // the alternate and temporary page layout shown by the dialog
|
|
||||||
// when the initial one is replaced by a new one
|
|
||||||
UNIT_BINDER m_customSizeX;
|
|
||||||
UNIT_BINDER m_customSizeY;
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
DIALOG_PAGES_SETTINGS( EDA_DRAW_FRAME* parent, wxSize aMaxUserSizeMils );
|
DIALOG_PAGES_SETTINGS( EDA_DRAW_FRAME* aParent, double aIuPerMils, wxSize aMaxUserSizeMils );
|
||||||
~DIALOG_PAGES_SETTINGS();
|
virtual ~DIALOG_PAGES_SETTINGS();
|
||||||
|
|
||||||
const wxString GetWksFileName()
|
const wxString GetWksFileName()
|
||||||
{
|
{
|
||||||
|
@ -76,10 +54,15 @@ public:
|
||||||
}
|
}
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void initDialog(); // Initialisation of member variables
|
virtual void onTransferDataToWindow() {}
|
||||||
|
|
||||||
// event handler for button OK
|
virtual bool onSavePageSettings() {
|
||||||
void OnOkClick( wxCommandEvent& event ) override;
|
// default just return true savepagesettings to succeed
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual bool TransferDataToWindow() override;
|
||||||
|
virtual bool TransferDataFromWindow() override;
|
||||||
|
|
||||||
// event handlers for page size choice
|
// event handlers for page size choice
|
||||||
void OnPaperSizeChoice( wxCommandEvent& event ) override;
|
void OnPaperSizeChoice( wxCommandEvent& event ) override;
|
||||||
|
@ -126,6 +109,27 @@ private:
|
||||||
/// @return true if the local prj config is chande
|
/// @return true if the local prj config is chande
|
||||||
/// i.e. if the page layout descr file has chnaged
|
/// i.e. if the page layout descr file has chnaged
|
||||||
bool LocalPrjConfigChanged() { return m_localPrjConfigChanged; }
|
bool LocalPrjConfigChanged() { return m_localPrjConfigChanged; }
|
||||||
|
|
||||||
|
protected:
|
||||||
|
EDA_DRAW_FRAME* m_parent;
|
||||||
|
BASE_SCREEN* m_screen;
|
||||||
|
wxString m_projectPath; // the curr project path
|
||||||
|
wxArrayString m_pageFmt; /// list of page sizes (not translated)
|
||||||
|
bool m_initialized;
|
||||||
|
bool m_localPrjConfigChanged; /// the page layuout filename was changed
|
||||||
|
wxBitmap* m_pageBitmap; /// Temporary bitmap for the page layout example.
|
||||||
|
wxSize m_layout_size; /// Logical page layout size.
|
||||||
|
wxSize m_maxPageSizeMils; /// The max page size allowed by the caller frame
|
||||||
|
PAGE_INFO m_pageInfo; /// Temporary page info.
|
||||||
|
bool m_customFmt; /// true if the page selection is custom
|
||||||
|
TITLE_BLOCK m_tb; /// Temporary title block (basic inscriptions).
|
||||||
|
WS_DATA_MODEL* m_pagelayout; // the alternate and temporary page layout shown by the dialog
|
||||||
|
// when the initial one is replaced by a new one
|
||||||
|
double m_iuPerMils;
|
||||||
|
|
||||||
|
private:
|
||||||
|
UNIT_BINDER m_customSizeX;
|
||||||
|
UNIT_BINDER m_customSizeY;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // _DIALOG_PAGES_SETTINGS_H_
|
#endif // _DIALOG_PAGES_SETTINGS_H_
|
||||||
|
|
|
@ -48,7 +48,6 @@ set( PL_EDITOR_EXTRA_SRCS
|
||||||
${CMAKE_SOURCE_DIR}/common/base_screen.cpp
|
${CMAKE_SOURCE_DIR}/common/base_screen.cpp
|
||||||
${CMAKE_SOURCE_DIR}/common/base_units.cpp
|
${CMAKE_SOURCE_DIR}/common/base_units.cpp
|
||||||
${CMAKE_SOURCE_DIR}/common/eda_text.cpp
|
${CMAKE_SOURCE_DIR}/common/eda_text.cpp
|
||||||
${CMAKE_SOURCE_DIR}/common/dialogs/dialog_page_settings.cpp
|
|
||||||
${CMAKE_SOURCE_DIR}/common/dialogs/panel_gal_display_options.cpp
|
${CMAKE_SOURCE_DIR}/common/dialogs/panel_gal_display_options.cpp
|
||||||
${CMAKE_SOURCE_DIR}/common/page_info.cpp
|
${CMAKE_SOURCE_DIR}/common/page_info.cpp
|
||||||
)
|
)
|
||||||
|
|
|
@ -89,7 +89,7 @@ int PL_EDITOR_CONTROL::PageSetup( const TOOL_EVENT& aEvent )
|
||||||
{
|
{
|
||||||
m_frame->SaveCopyInUndoList();
|
m_frame->SaveCopyInUndoList();
|
||||||
|
|
||||||
DIALOG_PAGES_SETTINGS dlg( m_frame, wxSize( MAX_PAGE_SIZE_MILS, MAX_PAGE_SIZE_MILS ) );
|
DIALOG_PAGES_SETTINGS dlg( m_frame, IU_PER_MILS, wxSize( MAX_PAGE_SIZE_MILS, MAX_PAGE_SIZE_MILS ) );
|
||||||
dlg.SetWksFileName( m_frame->GetCurrentFileName() );
|
dlg.SetWksFileName( m_frame->GetCurrentFileName() );
|
||||||
dlg.EnableWksFileNamePicker( false );
|
dlg.EnableWksFileNamePicker( false );
|
||||||
|
|
||||||
|
|
|
@ -366,7 +366,6 @@ set( PCBNEW_SRCS
|
||||||
|
|
||||||
# extra sources from common
|
# extra sources from common
|
||||||
set( PCBNEW_COMMON_SRCS
|
set( PCBNEW_COMMON_SRCS
|
||||||
${CMAKE_SOURCE_DIR}/common/dialogs/dialog_page_settings.cpp
|
|
||||||
${CMAKE_SOURCE_DIR}/common/base_units.cpp
|
${CMAKE_SOURCE_DIR}/common/base_units.cpp
|
||||||
${CMAKE_SOURCE_DIR}/common/hotkeys_basic.cpp
|
${CMAKE_SOURCE_DIR}/common/hotkeys_basic.cpp
|
||||||
)
|
)
|
||||||
|
|
|
@ -277,8 +277,8 @@ int BOARD_EDITOR_CONTROL::PageSettings( const TOOL_EVENT& aEvent )
|
||||||
undoCmd.PushItem( wrapper );
|
undoCmd.PushItem( wrapper );
|
||||||
m_frame->SaveCopyInUndoList( undoCmd, UNDO_REDO::PAGESETTINGS );
|
m_frame->SaveCopyInUndoList( undoCmd, UNDO_REDO::PAGESETTINGS );
|
||||||
|
|
||||||
DIALOG_PAGES_SETTINGS dlg( m_frame, wxSize( MAX_PAGE_SIZE_PCBNEW_MILS,
|
DIALOG_PAGES_SETTINGS dlg( m_frame, IU_PER_MILS,
|
||||||
MAX_PAGE_SIZE_PCBNEW_MILS ) );
|
wxSize( MAX_PAGE_SIZE_PCBNEW_MILS, MAX_PAGE_SIZE_PCBNEW_MILS ) );
|
||||||
dlg.SetWksFileName( BASE_SCREEN::m_PageLayoutDescrFileName );
|
dlg.SetWksFileName( BASE_SCREEN::m_PageLayoutDescrFileName );
|
||||||
|
|
||||||
if( dlg.ShowModal() != wxID_OK )
|
if( dlg.ShowModal() != wxID_OK )
|
||||||
|
|
Loading…
Reference in New Issue