Formatting.
This commit is contained in:
parent
c3496e4af6
commit
3282e4bb66
|
@ -104,28 +104,26 @@ void EESCHEMA_JOBS_HANDLER::InitRenderSettings( KIGFX::SCH_RENDER_SETTINGS* aRen
|
||||||
// Load the drawing sheet from the filename stored in BASE_SCREEN::m_DrawingSheetFileName.
|
// Load the drawing sheet from the filename stored in BASE_SCREEN::m_DrawingSheetFileName.
|
||||||
// If empty, or not existing, the default drawing sheet is loaded.
|
// If empty, or not existing, the default drawing sheet is loaded.
|
||||||
|
|
||||||
auto loadSheet = [&]( const wxString& path ) -> bool
|
auto loadSheet =
|
||||||
{
|
[&]( const wxString& path ) -> bool
|
||||||
wxString resolvedSheetPath =
|
{
|
||||||
DS_DATA_MODEL::ResolvePath( path, aSch->Prj().GetProjectPath() );
|
wxString absolutePath = DS_DATA_MODEL::ResolvePath( path,
|
||||||
|
aSch->Prj().GetProjectPath() );
|
||||||
|
|
||||||
if( !DS_DATA_MODEL::GetTheInstance().LoadDrawingSheet( resolvedSheetPath ) )
|
if( !DS_DATA_MODEL::GetTheInstance().LoadDrawingSheet( absolutePath ) )
|
||||||
{
|
{
|
||||||
m_reporter->Report(
|
m_reporter->Report( wxString::Format( _( "Error loading drawing sheet '%s'." ),
|
||||||
wxString::Format( _( "Error loading drawing sheet '%s'." ) + wxS( "\n" ),
|
path ),
|
||||||
path ),
|
RPT_SEVERITY_ERROR );
|
||||||
RPT_SEVERITY_ERROR );
|
return false;
|
||||||
return false;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
};
|
};
|
||||||
|
|
||||||
// try to load the override first
|
// try to load the override first
|
||||||
if( !aDrawingSheetOverride.IsEmpty() && loadSheet( aDrawingSheetOverride ) )
|
if( !aDrawingSheetOverride.IsEmpty() && loadSheet( aDrawingSheetOverride ) )
|
||||||
{
|
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
|
|
||||||
// no override or failed override continues here
|
// no override or failed override continues here
|
||||||
loadSheet( aSch->Settings().m_SchDrawingSheetFileName );
|
loadSheet( aSch->Settings().m_SchDrawingSheetFileName );
|
||||||
|
@ -158,11 +156,11 @@ int EESCHEMA_JOBS_HANDLER::JobExportPlot( JOB* aJob )
|
||||||
PLOT_FORMAT format = PLOT_FORMAT::PDF;
|
PLOT_FORMAT format = PLOT_FORMAT::PDF;
|
||||||
switch( aPlotJob->m_plotFormat )
|
switch( aPlotJob->m_plotFormat )
|
||||||
{
|
{
|
||||||
case SCH_PLOT_FORMAT::DXF: format = PLOT_FORMAT::DXF; break;
|
case SCH_PLOT_FORMAT::DXF: format = PLOT_FORMAT::DXF; break;
|
||||||
case SCH_PLOT_FORMAT::PDF: format = PLOT_FORMAT::PDF; break;
|
case SCH_PLOT_FORMAT::PDF: format = PLOT_FORMAT::PDF; break;
|
||||||
case SCH_PLOT_FORMAT::SVG: format = PLOT_FORMAT::SVG; break;
|
case SCH_PLOT_FORMAT::SVG: format = PLOT_FORMAT::SVG; break;
|
||||||
case SCH_PLOT_FORMAT::POST: format = PLOT_FORMAT::POST; break;
|
case SCH_PLOT_FORMAT::POST: format = PLOT_FORMAT::POST; break;
|
||||||
case SCH_PLOT_FORMAT::HPGL: format = PLOT_FORMAT::HPGL; break;
|
case SCH_PLOT_FORMAT::HPGL: format = PLOT_FORMAT::HPGL; break;
|
||||||
case SCH_PLOT_FORMAT::GERBER: format = PLOT_FORMAT::GERBER; break;
|
case SCH_PLOT_FORMAT::GERBER: format = PLOT_FORMAT::GERBER; break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -170,17 +168,17 @@ int EESCHEMA_JOBS_HANDLER::JobExportPlot( JOB* aJob )
|
||||||
switch( aPlotJob->m_HPGLPaperSizeSelect )
|
switch( aPlotJob->m_HPGLPaperSizeSelect )
|
||||||
{
|
{
|
||||||
case JOB_HPGL_PAGE_SIZE::DEFAULT: hpglPageSize = HPGL_PAGE_SIZE::DEFAULT; break;
|
case JOB_HPGL_PAGE_SIZE::DEFAULT: hpglPageSize = HPGL_PAGE_SIZE::DEFAULT; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_A: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_A: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_A0: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A0; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_A0: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A0; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_A1: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A1; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_A1: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A1; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_A2: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A2; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_A2: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A2; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_A3: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A3; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_A3: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A3; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_A4: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A4; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_A4: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A4; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_A5: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A5; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_A5: hpglPageSize = HPGL_PAGE_SIZE::SIZE_A5; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_B: hpglPageSize = HPGL_PAGE_SIZE::SIZE_B; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_B: hpglPageSize = HPGL_PAGE_SIZE::SIZE_B; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_C: hpglPageSize = HPGL_PAGE_SIZE::SIZE_C; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_C: hpglPageSize = HPGL_PAGE_SIZE::SIZE_C; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_D: hpglPageSize = HPGL_PAGE_SIZE::SIZE_D; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_D: hpglPageSize = HPGL_PAGE_SIZE::SIZE_D; break;
|
||||||
case JOB_HPGL_PAGE_SIZE::SIZE_E: hpglPageSize = HPGL_PAGE_SIZE::SIZE_E; break;
|
case JOB_HPGL_PAGE_SIZE::SIZE_E: hpglPageSize = HPGL_PAGE_SIZE::SIZE_E; break;
|
||||||
}
|
}
|
||||||
|
|
||||||
HPGL_PLOT_ORIGIN_AND_UNITS hpglOrigin = HPGL_PLOT_ORIGIN_AND_UNITS::USER_FIT_PAGE;
|
HPGL_PLOT_ORIGIN_AND_UNITS hpglOrigin = HPGL_PLOT_ORIGIN_AND_UNITS::USER_FIT_PAGE;
|
||||||
|
@ -189,7 +187,6 @@ int EESCHEMA_JOBS_HANDLER::JobExportPlot( JOB* aJob )
|
||||||
case JOB_HPGL_PLOT_ORIGIN_AND_UNITS::PLOTTER_BOT_LEFT:
|
case JOB_HPGL_PLOT_ORIGIN_AND_UNITS::PLOTTER_BOT_LEFT:
|
||||||
hpglOrigin = HPGL_PLOT_ORIGIN_AND_UNITS::PLOTTER_BOT_LEFT;
|
hpglOrigin = HPGL_PLOT_ORIGIN_AND_UNITS::PLOTTER_BOT_LEFT;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case JOB_HPGL_PLOT_ORIGIN_AND_UNITS::PLOTTER_CENTER:
|
case JOB_HPGL_PLOT_ORIGIN_AND_UNITS::PLOTTER_CENTER:
|
||||||
hpglOrigin = HPGL_PLOT_ORIGIN_AND_UNITS::PLOTTER_CENTER;
|
hpglOrigin = HPGL_PLOT_ORIGIN_AND_UNITS::PLOTTER_CENTER;
|
||||||
break;
|
break;
|
||||||
|
@ -205,8 +202,8 @@ int EESCHEMA_JOBS_HANDLER::JobExportPlot( JOB* aJob )
|
||||||
|
|
||||||
switch( aPlotJob->m_pageSizeSelect )
|
switch( aPlotJob->m_pageSizeSelect )
|
||||||
{
|
{
|
||||||
case JOB_PAGE_SIZE::PAGE_SIZE_A: pageSizeSelect = PageFormatReq::PAGE_SIZE_A; break;
|
case JOB_PAGE_SIZE::PAGE_SIZE_A: pageSizeSelect = PageFormatReq::PAGE_SIZE_A; break;
|
||||||
case JOB_PAGE_SIZE::PAGE_SIZE_A4: pageSizeSelect = PageFormatReq::PAGE_SIZE_A4; break;
|
case JOB_PAGE_SIZE::PAGE_SIZE_A4: pageSizeSelect = PageFormatReq::PAGE_SIZE_A4; break;
|
||||||
case JOB_PAGE_SIZE::PAGE_SIZE_AUTO: pageSizeSelect = PageFormatReq::PAGE_SIZE_AUTO; break;
|
case JOB_PAGE_SIZE::PAGE_SIZE_AUTO: pageSizeSelect = PageFormatReq::PAGE_SIZE_AUTO; break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -269,10 +266,7 @@ int EESCHEMA_JOBS_HANDLER::JobExportNetlist( JOB* aJob )
|
||||||
ERC_TESTER erc( sch );
|
ERC_TESTER erc( sch );
|
||||||
|
|
||||||
if( erc.TestDuplicateSheetNames( false ) > 0 )
|
if( erc.TestDuplicateSheetNames( false ) > 0 )
|
||||||
{
|
|
||||||
m_reporter->Report( _( "Warning: duplicate sheet names.\n" ), RPT_SEVERITY_WARNING );
|
m_reporter->Report( _( "Warning: duplicate sheet names.\n" ), RPT_SEVERITY_WARNING );
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
std::unique_ptr<NETLIST_EXPORTER_BASE> helper;
|
std::unique_ptr<NETLIST_EXPORTER_BASE> helper;
|
||||||
unsigned netlistOption = 0;
|
unsigned netlistOption = 0;
|
||||||
|
@ -311,6 +305,7 @@ int EESCHEMA_JOBS_HANDLER::JobExportNetlist( JOB* aJob )
|
||||||
fileExt = wxS( "xml" );
|
fileExt = wxS( "xml" );
|
||||||
helper = std::make_unique<NETLIST_EXPORTER_XML>( sch );
|
helper = std::make_unique<NETLIST_EXPORTER_XML>( sch );
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
m_reporter->Report( _( "Unknown netlist format.\n" ), RPT_SEVERITY_ERROR );
|
m_reporter->Report( _( "Unknown netlist format.\n" ), RPT_SEVERITY_ERROR );
|
||||||
return CLI::EXIT_CODES::ERR_UNKNOWN;
|
return CLI::EXIT_CODES::ERR_UNKNOWN;
|
||||||
|
@ -328,9 +323,7 @@ int EESCHEMA_JOBS_HANDLER::JobExportNetlist( JOB* aJob )
|
||||||
bool res = helper->WriteNetlist( aNetJob->m_outputFile, netlistOption, *m_reporter );
|
bool res = helper->WriteNetlist( aNetJob->m_outputFile, netlistOption, *m_reporter );
|
||||||
|
|
||||||
if( !res )
|
if( !res )
|
||||||
{
|
|
||||||
return CLI::EXIT_CODES::ERR_UNKNOWN;
|
return CLI::EXIT_CODES::ERR_UNKNOWN;
|
||||||
}
|
|
||||||
|
|
||||||
return CLI::EXIT_CODES::OK;
|
return CLI::EXIT_CODES::OK;
|
||||||
}
|
}
|
||||||
|
@ -380,9 +373,7 @@ int EESCHEMA_JOBS_HANDLER::JobExportBom( JOB* aJob )
|
||||||
ERC_TESTER erc( sch );
|
ERC_TESTER erc( sch );
|
||||||
|
|
||||||
if( erc.TestDuplicateSheetNames( false ) > 0 )
|
if( erc.TestDuplicateSheetNames( false ) > 0 )
|
||||||
{
|
|
||||||
m_reporter->Report( _( "Warning: duplicate sheet names.\n" ), RPT_SEVERITY_WARNING );
|
m_reporter->Report( _( "Warning: duplicate sheet names.\n" ), RPT_SEVERITY_WARNING );
|
||||||
}
|
|
||||||
|
|
||||||
// Build our data model
|
// Build our data model
|
||||||
FIELDS_EDITOR_GRID_DATA_MODEL dataModel( referenceList );
|
FIELDS_EDITOR_GRID_DATA_MODEL dataModel( referenceList );
|
||||||
|
@ -411,8 +402,10 @@ int EESCHEMA_JOBS_HANDLER::JobExportBom( JOB* aJob )
|
||||||
sch->Settings().m_TemplateFieldNames.GetTemplateFieldNames() )
|
sch->Settings().m_TemplateFieldNames.GetTemplateFieldNames() )
|
||||||
{
|
{
|
||||||
if( userFieldNames.count( templateFieldname.m_Name ) == 0 )
|
if( userFieldNames.count( templateFieldname.m_Name ) == 0 )
|
||||||
|
{
|
||||||
dataModel.AddColumn( templateFieldname.m_Name, GetTextVars( templateFieldname.m_Name ),
|
dataModel.AddColumn( templateFieldname.m_Name, GetTextVars( templateFieldname.m_Name ),
|
||||||
false );
|
false );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
BOM_PRESET preset;
|
BOM_PRESET preset;
|
||||||
|
@ -500,6 +493,7 @@ int EESCHEMA_JOBS_HANDLER::JobExportBom( JOB* aJob )
|
||||||
field.groupBy = std::find( aBomJob->m_fieldsGroupBy.begin(),
|
field.groupBy = std::find( aBomJob->m_fieldsGroupBy.begin(),
|
||||||
aBomJob->m_fieldsGroupBy.end(), field.name )
|
aBomJob->m_fieldsGroupBy.end(), field.name )
|
||||||
!= aBomJob->m_fieldsGroupBy.end();
|
!= aBomJob->m_fieldsGroupBy.end();
|
||||||
|
|
||||||
if( ( aBomJob->m_fieldsLabels.size() > i ) && !aBomJob->m_fieldsLabels[i].IsEmpty() )
|
if( ( aBomJob->m_fieldsLabels.size() > i ) && !aBomJob->m_fieldsLabels[i].IsEmpty() )
|
||||||
field.label = aBomJob->m_fieldsLabels[i];
|
field.label = aBomJob->m_fieldsLabels[i];
|
||||||
else if( IsTextVar( field.name ) )
|
else if( IsTextVar( field.name ) )
|
||||||
|
@ -533,10 +527,9 @@ int EESCHEMA_JOBS_HANDLER::JobExportBom( JOB* aJob )
|
||||||
|
|
||||||
if( !f.Open( aBomJob->m_outputFile, wxFile::write ) )
|
if( !f.Open( aBomJob->m_outputFile, wxFile::write ) )
|
||||||
{
|
{
|
||||||
m_reporter->Report( wxString::Format( _( "Unable to open destination '%s'" ) + wxS( "\n" ),
|
m_reporter->Report( wxString::Format( _( "Unable to open destination '%s'" ),
|
||||||
aBomJob->m_outputFile ),
|
aBomJob->m_outputFile ),
|
||||||
RPT_SEVERITY_ERROR
|
RPT_SEVERITY_ERROR );
|
||||||
);
|
|
||||||
|
|
||||||
return CLI::EXIT_CODES::ERR_INVALID_INPUT_FILE;
|
return CLI::EXIT_CODES::ERR_INVALID_INPUT_FILE;
|
||||||
}
|
}
|
||||||
|
@ -587,9 +580,7 @@ int EESCHEMA_JOBS_HANDLER::JobExportBom( JOB* aJob )
|
||||||
bool res = f.Write( dataModel.Export( fmt ) );
|
bool res = f.Write( dataModel.Export( fmt ) );
|
||||||
|
|
||||||
if( !res )
|
if( !res )
|
||||||
{
|
|
||||||
return CLI::EXIT_CODES::ERR_UNKNOWN;
|
return CLI::EXIT_CODES::ERR_UNKNOWN;
|
||||||
}
|
|
||||||
|
|
||||||
return CLI::EXIT_CODES::OK;
|
return CLI::EXIT_CODES::OK;
|
||||||
}
|
}
|
||||||
|
@ -912,9 +903,7 @@ int EESCHEMA_JOBS_HANDLER::JobSymUpgrade( JOB* aJob )
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
if( !upgradeJob->m_outputLibraryPath.IsEmpty() )
|
if( !upgradeJob->m_outputLibraryPath.IsEmpty() )
|
||||||
{
|
|
||||||
schLibrary.SetFileName( upgradeJob->m_outputLibraryPath );
|
schLibrary.SetFileName( upgradeJob->m_outputLibraryPath );
|
||||||
}
|
|
||||||
|
|
||||||
schLibrary.SetModified();
|
schLibrary.SetModified();
|
||||||
schLibrary.Save();
|
schLibrary.Save();
|
||||||
|
@ -969,15 +958,10 @@ int EESCHEMA_JOBS_HANDLER::JobSchErc( JOB* aJob )
|
||||||
|
|
||||||
switch( ercJob->m_units )
|
switch( ercJob->m_units )
|
||||||
{
|
{
|
||||||
case JOB_SCH_ERC::UNITS::INCHES:
|
case JOB_SCH_ERC::UNITS::INCHES: units = EDA_UNITS::INCHES; break;
|
||||||
units = EDA_UNITS::INCHES;
|
case JOB_SCH_ERC::UNITS::MILS: units = EDA_UNITS::MILS; break;
|
||||||
break;
|
case JOB_SCH_ERC::UNITS::MILLIMETERS: units = EDA_UNITS::MILLIMETRES; break;
|
||||||
case JOB_SCH_ERC::UNITS::MILS:
|
default: units = EDA_UNITS::MILLIMETRES; break;
|
||||||
units = EDA_UNITS::MILS;
|
|
||||||
break;
|
|
||||||
case JOB_SCH_ERC::UNITS::MILLIMETERS:
|
|
||||||
default:
|
|
||||||
units = EDA_UNITS::MILLIMETRES; break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
std::shared_ptr<SHEETLIST_ERC_ITEMS_PROVIDER> markersProvider =
|
std::shared_ptr<SHEETLIST_ERC_ITEMS_PROVIDER> markersProvider =
|
||||||
|
@ -993,9 +977,9 @@ int EESCHEMA_JOBS_HANDLER::JobSchErc( JOB* aJob )
|
||||||
|
|
||||||
markersProvider->SetSeverities( ercJob->m_severity );
|
markersProvider->SetSeverities( ercJob->m_severity );
|
||||||
|
|
||||||
m_reporter->Report(
|
m_reporter->Report( wxString::Format( _( "Found %d violations\n" ),
|
||||||
wxString::Format( _( "Found %d violations\n" ), markersProvider->GetCount() ),
|
markersProvider->GetCount() ),
|
||||||
RPT_SEVERITY_INFO );
|
RPT_SEVERITY_INFO );
|
||||||
|
|
||||||
ERC_REPORT reportWriter( sch, units );
|
ERC_REPORT reportWriter( sch, units );
|
||||||
|
|
||||||
|
@ -1008,9 +992,9 @@ int EESCHEMA_JOBS_HANDLER::JobSchErc( JOB* aJob )
|
||||||
|
|
||||||
if( !wroteReport )
|
if( !wroteReport )
|
||||||
{
|
{
|
||||||
m_reporter->Report(
|
m_reporter->Report( wxString::Format( _( "Unable to save ERC report to %s\n" ),
|
||||||
wxString::Format( _( "Unable to save ERC report to %s\n" ), ercJob->m_outputFile ),
|
ercJob->m_outputFile ),
|
||||||
RPT_SEVERITY_INFO );
|
RPT_SEVERITY_INFO );
|
||||||
return CLI::EXIT_CODES::ERR_INVALID_OUTPUT_CONFLICT;
|
return CLI::EXIT_CODES::ERR_INVALID_OUTPUT_CONFLICT;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1020,9 +1004,7 @@ int EESCHEMA_JOBS_HANDLER::JobSchErc( JOB* aJob )
|
||||||
if( ercJob->m_exitCodeViolations )
|
if( ercJob->m_exitCodeViolations )
|
||||||
{
|
{
|
||||||
if( markersProvider->GetCount() > 0 )
|
if( markersProvider->GetCount() > 0 )
|
||||||
{
|
|
||||||
return CLI::EXIT_CODES::ERR_RC_VIOLATIONS;
|
return CLI::EXIT_CODES::ERR_RC_VIOLATIONS;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return CLI::EXIT_CODES::SUCCESS;
|
return CLI::EXIT_CODES::SUCCESS;
|
||||||
|
|
|
@ -123,7 +123,8 @@ int PCBNEW_JOBS_HANDLER::JobExportStep( JOB* aJob )
|
||||||
break;
|
break;
|
||||||
case JOB_EXPORT_PCB_3D::FORMAT::GLB: fn.SetExt( FILEEXT::GltfBinaryFileExtension );
|
case JOB_EXPORT_PCB_3D::FORMAT::GLB: fn.SetExt( FILEEXT::GltfBinaryFileExtension );
|
||||||
break;
|
break;
|
||||||
default: return CLI::EXIT_CODES::ERR_UNKNOWN; // shouldnt have gotten here
|
default:
|
||||||
|
return CLI::EXIT_CODES::ERR_UNKNOWN; // shouldnt have gotten here
|
||||||
}
|
}
|
||||||
|
|
||||||
aStepJob->m_outputFile = fn.GetFullName();
|
aStepJob->m_outputFile = fn.GetFullName();
|
||||||
|
@ -135,10 +136,10 @@ int PCBNEW_JOBS_HANDLER::JobExportStep( JOB* aJob )
|
||||||
double scale = 0.0;
|
double scale = 0.0;
|
||||||
switch ( aStepJob->m_vrmlUnits )
|
switch ( aStepJob->m_vrmlUnits )
|
||||||
{
|
{
|
||||||
case JOB_EXPORT_PCB_3D::VRML_UNITS::MILLIMETERS: scale = 1.0; break;
|
case JOB_EXPORT_PCB_3D::VRML_UNITS::MILLIMETERS: scale = 1.0; break;
|
||||||
case JOB_EXPORT_PCB_3D::VRML_UNITS::METERS: scale = 0.001; break;
|
case JOB_EXPORT_PCB_3D::VRML_UNITS::METERS: scale = 0.001; break;
|
||||||
case JOB_EXPORT_PCB_3D::VRML_UNITS::TENTHS: scale = 10.0 / 25.4; break;
|
case JOB_EXPORT_PCB_3D::VRML_UNITS::TENTHS: scale = 10.0 / 25.4; break;
|
||||||
case JOB_EXPORT_PCB_3D::VRML_UNITS::INCHES: scale = 1.0 / 25.4; break;
|
case JOB_EXPORT_PCB_3D::VRML_UNITS::INCHES: scale = 1.0 / 25.4; break;
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORTER_VRML vrmlExporter( brd );
|
EXPORTER_VRML vrmlExporter( brd );
|
||||||
|
@ -161,7 +162,8 @@ int PCBNEW_JOBS_HANDLER::JobExportStep( JOB* aJob )
|
||||||
|
|
||||||
if ( success )
|
if ( success )
|
||||||
{
|
{
|
||||||
m_reporter->Report( wxString::Format( _( "Successfully exported VRML to %s" ), aStepJob->m_outputFile ),
|
m_reporter->Report( wxString::Format( _( "Successfully exported VRML to %s" ),
|
||||||
|
aStepJob->m_outputFile ),
|
||||||
RPT_SEVERITY_INFO );
|
RPT_SEVERITY_INFO );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -194,16 +196,15 @@ int PCBNEW_JOBS_HANDLER::JobExportStep( JOB* aJob )
|
||||||
case JOB_EXPORT_PCB_3D::FORMAT::GLB:
|
case JOB_EXPORT_PCB_3D::FORMAT::GLB:
|
||||||
params.m_format = EXPORTER_STEP_PARAMS::FORMAT::GLB;
|
params.m_format = EXPORTER_STEP_PARAMS::FORMAT::GLB;
|
||||||
break;
|
break;
|
||||||
default: return CLI::EXIT_CODES::ERR_UNKNOWN; // shouldnt have gotten here
|
default:
|
||||||
|
return CLI::EXIT_CODES::ERR_UNKNOWN; // shouldnt have gotten here
|
||||||
}
|
}
|
||||||
|
|
||||||
EXPORTER_STEP stepExporter( brd, params );
|
EXPORTER_STEP stepExporter( brd, params );
|
||||||
stepExporter.m_outputFile = aStepJob->m_outputFile;
|
stepExporter.m_outputFile = aStepJob->m_outputFile;
|
||||||
|
|
||||||
if( !stepExporter.Export() )
|
if( !stepExporter.Export() )
|
||||||
{
|
|
||||||
return CLI::EXIT_CODES::ERR_UNKNOWN;
|
return CLI::EXIT_CODES::ERR_UNKNOWN;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return CLI::EXIT_CODES::OK;
|
return CLI::EXIT_CODES::OK;
|
||||||
|
@ -276,13 +277,9 @@ int PCBNEW_JOBS_HANDLER::JobExportDxf( JOB* aJob )
|
||||||
plotOpts.SetDXFPlotPolygonMode( aDxfJob->m_plotGraphicItemsUsingContours );
|
plotOpts.SetDXFPlotPolygonMode( aDxfJob->m_plotGraphicItemsUsingContours );
|
||||||
|
|
||||||
if( aDxfJob->m_dxfUnits == JOB_EXPORT_PCB_DXF::DXF_UNITS::MILLIMETERS )
|
if( aDxfJob->m_dxfUnits == JOB_EXPORT_PCB_DXF::DXF_UNITS::MILLIMETERS )
|
||||||
{
|
|
||||||
plotOpts.SetDXFPlotUnits( DXF_UNITS::MILLIMETERS );
|
plotOpts.SetDXFPlotUnits( DXF_UNITS::MILLIMETERS );
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
|
||||||
plotOpts.SetDXFPlotUnits( DXF_UNITS::INCHES );
|
plotOpts.SetDXFPlotUnits( DXF_UNITS::INCHES );
|
||||||
}
|
|
||||||
|
|
||||||
plotOpts.SetPlotFrameRef( aDxfJob->m_plotBorderTitleBlocks );
|
plotOpts.SetPlotFrameRef( aDxfJob->m_plotBorderTitleBlocks );
|
||||||
plotOpts.SetPlotValue( aDxfJob->m_plotFootprintValues );
|
plotOpts.SetPlotValue( aDxfJob->m_plotFootprintValues );
|
||||||
|
@ -345,17 +342,9 @@ int PCBNEW_JOBS_HANDLER::JobExportPdf( JOB* aJob )
|
||||||
switch( aPdfJob->m_drillShapeOption )
|
switch( aPdfJob->m_drillShapeOption )
|
||||||
{
|
{
|
||||||
default:
|
default:
|
||||||
case 0:
|
case 0: plotOpts.SetDrillMarksType( DRILL_MARKS::NO_DRILL_SHAPE ); break;
|
||||||
plotOpts.SetDrillMarksType( DRILL_MARKS::NO_DRILL_SHAPE );
|
case 1: plotOpts.SetDrillMarksType( DRILL_MARKS::SMALL_DRILL_SHAPE ); break;
|
||||||
break;
|
case 2: plotOpts.SetDrillMarksType( DRILL_MARKS::FULL_DRILL_SHAPE ); break;
|
||||||
|
|
||||||
case 1:
|
|
||||||
plotOpts.SetDrillMarksType( DRILL_MARKS::SMALL_DRILL_SHAPE );
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 2:
|
|
||||||
plotOpts.SetDrillMarksType( DRILL_MARKS::FULL_DRILL_SHAPE );
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
PDF_PLOTTER* plotter = (PDF_PLOTTER*) StartPlotBoard(
|
PDF_PLOTTER* plotter = (PDF_PLOTTER*) StartPlotBoard(
|
||||||
|
@ -485,7 +474,7 @@ int PCBNEW_JOBS_HANDLER::JobExportGerbers( JOB* aJob )
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void PCBNEW_JOBS_HANDLER::populateGerberPlotOptionsFromJob( PCB_PLOT_PARAMS& aPlotOpts,
|
void PCBNEW_JOBS_HANDLER::populateGerberPlotOptionsFromJob( PCB_PLOT_PARAMS& aPlotOpts,
|
||||||
JOB_EXPORT_PCB_GERBER* aJob )
|
JOB_EXPORT_PCB_GERBER* aJob )
|
||||||
{
|
{
|
||||||
aPlotOpts.SetFormat( PLOT_FORMAT::GERBER );
|
aPlotOpts.SetFormat( PLOT_FORMAT::GERBER );
|
||||||
|
@ -576,6 +565,7 @@ int PCBNEW_JOBS_HANDLER::JobExportDrill( JOB* aJob )
|
||||||
|
|
||||||
// ensure output dir exists
|
// ensure output dir exists
|
||||||
wxFileName fn( aDrillJob->m_outputDir + wxT( "/" ) );
|
wxFileName fn( aDrillJob->m_outputDir + wxT( "/" ) );
|
||||||
|
|
||||||
if( !fn.Mkdir( wxS_DIR_DEFAULT, wxPATH_MKDIR_FULL ) )
|
if( !fn.Mkdir( wxS_DIR_DEFAULT, wxPATH_MKDIR_FULL ) )
|
||||||
{
|
{
|
||||||
m_reporter->Report( _( "Failed to create output directory\n" ), RPT_SEVERITY_ERROR );
|
m_reporter->Report( _( "Failed to create output directory\n" ), RPT_SEVERITY_ERROR );
|
||||||
|
@ -585,13 +575,9 @@ int PCBNEW_JOBS_HANDLER::JobExportDrill( JOB* aJob )
|
||||||
std::unique_ptr<GENDRILL_WRITER_BASE> drillWriter;
|
std::unique_ptr<GENDRILL_WRITER_BASE> drillWriter;
|
||||||
|
|
||||||
if( aDrillJob->m_format == JOB_EXPORT_PCB_DRILL::DRILL_FORMAT::EXCELLON )
|
if( aDrillJob->m_format == JOB_EXPORT_PCB_DRILL::DRILL_FORMAT::EXCELLON )
|
||||||
{
|
|
||||||
drillWriter = std::make_unique<EXCELLON_WRITER>( brd );
|
drillWriter = std::make_unique<EXCELLON_WRITER>( brd );
|
||||||
}
|
|
||||||
else
|
else
|
||||||
{
|
|
||||||
drillWriter = std::make_unique<GERBER_WRITER>( brd );
|
drillWriter = std::make_unique<GERBER_WRITER>( brd );
|
||||||
}
|
|
||||||
|
|
||||||
VECTOR2I offset;
|
VECTOR2I offset;
|
||||||
|
|
||||||
|
@ -604,12 +590,12 @@ int PCBNEW_JOBS_HANDLER::JobExportDrill( JOB* aJob )
|
||||||
|
|
||||||
switch( aDrillJob->m_mapFormat )
|
switch( aDrillJob->m_mapFormat )
|
||||||
{
|
{
|
||||||
case JOB_EXPORT_PCB_DRILL::MAP_FORMAT::POSTSCRIPT: mapFormat = PLOT_FORMAT::POST; break;
|
case JOB_EXPORT_PCB_DRILL::MAP_FORMAT::POSTSCRIPT: mapFormat = PLOT_FORMAT::POST; break;
|
||||||
case JOB_EXPORT_PCB_DRILL::MAP_FORMAT::GERBER_X2: mapFormat = PLOT_FORMAT::GERBER; break;
|
case JOB_EXPORT_PCB_DRILL::MAP_FORMAT::GERBER_X2: mapFormat = PLOT_FORMAT::GERBER; break;
|
||||||
case JOB_EXPORT_PCB_DRILL::MAP_FORMAT::DXF: mapFormat = PLOT_FORMAT::DXF; break;
|
case JOB_EXPORT_PCB_DRILL::MAP_FORMAT::DXF: mapFormat = PLOT_FORMAT::DXF; break;
|
||||||
case JOB_EXPORT_PCB_DRILL::MAP_FORMAT::SVG: mapFormat = PLOT_FORMAT::SVG; break;
|
case JOB_EXPORT_PCB_DRILL::MAP_FORMAT::SVG: mapFormat = PLOT_FORMAT::SVG; break;
|
||||||
default:
|
default:
|
||||||
case JOB_EXPORT_PCB_DRILL::MAP_FORMAT::PDF: mapFormat = PLOT_FORMAT::PDF; break;
|
case JOB_EXPORT_PCB_DRILL::MAP_FORMAT::PDF: mapFormat = PLOT_FORMAT::PDF; break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if( aDrillJob->m_format == JOB_EXPORT_PCB_DRILL::DRILL_FORMAT::EXCELLON )
|
if( aDrillJob->m_format == JOB_EXPORT_PCB_DRILL::DRILL_FORMAT::EXCELLON )
|
||||||
|
@ -981,17 +967,13 @@ int PCBNEW_JOBS_HANDLER::JobExportDrc( JOB* aJob )
|
||||||
}
|
}
|
||||||
|
|
||||||
EDA_UNITS units;
|
EDA_UNITS units;
|
||||||
|
|
||||||
switch( drcJob->m_units )
|
switch( drcJob->m_units )
|
||||||
{
|
{
|
||||||
case JOB_PCB_DRC::UNITS::INCHES:
|
case JOB_PCB_DRC::UNITS::INCHES: units = EDA_UNITS::INCHES; break;
|
||||||
units = EDA_UNITS::INCHES;
|
case JOB_PCB_DRC::UNITS::MILS: units = EDA_UNITS::MILS; break;
|
||||||
break;
|
case JOB_PCB_DRC::UNITS::MILLIMETERS: units = EDA_UNITS::MILLIMETRES; break;
|
||||||
case JOB_PCB_DRC::UNITS::MILS:
|
default: units = EDA_UNITS::MILLIMETRES; break;
|
||||||
units = EDA_UNITS::MILS;
|
|
||||||
break;
|
|
||||||
case JOB_PCB_DRC::UNITS::MILLIMETERS:
|
|
||||||
default:
|
|
||||||
units = EDA_UNITS::MILLIMETRES; break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
std::shared_ptr<DRC_ENGINE> drcEngine = brd->GetDesignSettings().m_DRCEngine;
|
std::shared_ptr<DRC_ENGINE> drcEngine = brd->GetDesignSettings().m_DRCEngine;
|
||||||
|
@ -1096,6 +1078,7 @@ int PCBNEW_JOBS_HANDLER::JobExportDrc( JOB* aJob )
|
||||||
DRC_REPORT reportWriter( brd, units, markersProvider, ratsnestProvider, fpWarningsProvider );
|
DRC_REPORT reportWriter( brd, units, markersProvider, ratsnestProvider, fpWarningsProvider );
|
||||||
|
|
||||||
bool wroteReport = false;
|
bool wroteReport = false;
|
||||||
|
|
||||||
if( drcJob->m_format == JOB_PCB_DRC::OUTPUT_FORMAT::JSON )
|
if( drcJob->m_format == JOB_PCB_DRC::OUTPUT_FORMAT::JSON )
|
||||||
wroteReport = reportWriter.WriteJsonReport( drcJob->m_outputFile );
|
wroteReport = reportWriter.WriteJsonReport( drcJob->m_outputFile );
|
||||||
else
|
else
|
||||||
|
@ -1103,12 +1086,14 @@ int PCBNEW_JOBS_HANDLER::JobExportDrc( JOB* aJob )
|
||||||
|
|
||||||
if( !wroteReport )
|
if( !wroteReport )
|
||||||
{
|
{
|
||||||
m_reporter->Report( wxString::Format( _( "Unable to save DRC report to %s\n" ), drcJob->m_outputFile ),
|
m_reporter->Report( wxString::Format( _( "Unable to save DRC report to %s\n" ),
|
||||||
|
drcJob->m_outputFile ),
|
||||||
RPT_SEVERITY_INFO );
|
RPT_SEVERITY_INFO );
|
||||||
return CLI::EXIT_CODES::ERR_INVALID_OUTPUT_CONFLICT;
|
return CLI::EXIT_CODES::ERR_INVALID_OUTPUT_CONFLICT;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_reporter->Report( wxString::Format( _( "Saved DRC Report to %s\n" ), drcJob->m_outputFile ),
|
m_reporter->Report( wxString::Format( _( "Saved DRC Report to %s\n" ),
|
||||||
|
drcJob->m_outputFile ),
|
||||||
RPT_SEVERITY_INFO );
|
RPT_SEVERITY_INFO );
|
||||||
|
|
||||||
if( drcJob->m_exitCodeViolations )
|
if( drcJob->m_exitCodeViolations )
|
||||||
|
@ -1146,8 +1131,8 @@ int PCBNEW_JOBS_HANDLER::JobExportIpc2581( JOB* aJob )
|
||||||
}
|
}
|
||||||
|
|
||||||
STRING_UTF8_MAP props;
|
STRING_UTF8_MAP props;
|
||||||
props["units"] =
|
props["units"] = job->m_units == JOB_EXPORT_PCB_IPC2581::IPC2581_UNITS::MILLIMETERS ? "mm"
|
||||||
job->m_units == JOB_EXPORT_PCB_IPC2581::IPC2581_UNITS::MILLIMETERS ? "mm" : "inch";
|
: "inch";
|
||||||
props["sigfig"] = wxString::Format( "%d", job->m_units );
|
props["sigfig"] = wxString::Format( "%d", job->m_units );
|
||||||
props["version"] = job->m_version == JOB_EXPORT_PCB_IPC2581::IPC2581_VERSION::C ? "C" : "B";
|
props["version"] = job->m_version == JOB_EXPORT_PCB_IPC2581::IPC2581_VERSION::C ? "C" : "B";
|
||||||
props["OEMRef"] = job->m_colInternalId;
|
props["OEMRef"] = job->m_colInternalId;
|
||||||
|
@ -1232,20 +1217,23 @@ void PCBNEW_JOBS_HANDLER::loadOverrideDrawingSheet( BOARD* aBrd, const wxString&
|
||||||
if( aSheetPath.IsEmpty() )
|
if( aSheetPath.IsEmpty() )
|
||||||
return;
|
return;
|
||||||
|
|
||||||
auto loadSheet = [&]( const wxString& path ) -> bool
|
auto loadSheet =
|
||||||
{
|
[&]( const wxString& path ) -> bool
|
||||||
BASE_SCREEN::m_DrawingSheetFileName = path;
|
{
|
||||||
wxString filename = DS_DATA_MODEL::ResolvePath( BASE_SCREEN::m_DrawingSheetFileName,
|
BASE_SCREEN::m_DrawingSheetFileName = path;
|
||||||
aBrd->GetProject()->GetProjectPath() );
|
wxString filename = DS_DATA_MODEL::ResolvePath( BASE_SCREEN::m_DrawingSheetFileName,
|
||||||
if( !DS_DATA_MODEL::GetTheInstance().LoadDrawingSheet( filename ) )
|
aBrd->GetProject()->GetProjectPath() );
|
||||||
{
|
|
||||||
m_reporter->Report( wxString::Format( _( "Error loading drawing sheet '%s'." )+ wxS( "\n" ), path ),
|
|
||||||
RPT_SEVERITY_ERROR );
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return true;
|
if( !DS_DATA_MODEL::GetTheInstance().LoadDrawingSheet( filename ) )
|
||||||
};
|
{
|
||||||
|
m_reporter->Report( wxString::Format( _( "Error loading drawing sheet '%s'." ) + wxS( "\n" ),
|
||||||
|
path ),
|
||||||
|
RPT_SEVERITY_ERROR );
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
};
|
||||||
|
|
||||||
if( loadSheet( aSheetPath ) )
|
if( loadSheet( aSheetPath ) )
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in New Issue