diff --git a/common/jobs/job.h b/common/jobs/job.h index 75ae99144f..e7cac9f58c 100644 --- a/common/jobs/job.h +++ b/common/jobs/job.h @@ -157,6 +157,7 @@ public: bool OutputPathFullSpecified() const; + bool GetOutpathIsDirectory() const { return m_outputPathIsDirectory; } protected: std::string m_type; diff --git a/common/jobs/job_export_sch_plot.cpp b/common/jobs/job_export_sch_plot.cpp index 2fe124f711..7068f4f555 100644 --- a/common/jobs/job_export_sch_plot.cpp +++ b/common/jobs/job_export_sch_plot.cpp @@ -79,8 +79,6 @@ JOB_EXPORT_SCH_PLOT::JOB_EXPORT_SCH_PLOT() : m_PDFHierarchicalLinks( true ), m_PDFMetadata( true ), m_theme(), - m_outputDirectory(), - m_outputFile(), m_HPGLPlotOrigin( JOB_HPGL_PLOT_ORIGIN_AND_UNITS::USER_FIT_CONTENT ) { m_params.emplace_back( @@ -106,10 +104,6 @@ JOB_EXPORT_SCH_PLOT::JOB_EXPORT_SCH_PLOT() : m_PDFHierarchicalLinks ) ); m_params.emplace_back( new JOB_PARAM( "pdf_metadata", &m_PDFMetadata, m_PDFMetadata ) ); m_params.emplace_back( new JOB_PARAM( "color_theme", &m_theme, m_theme ) ); - m_params.emplace_back( - new JOB_PARAM( "output_filename", &m_outputFile, m_outputFile ) ); - m_params.emplace_back( - new JOB_PARAM( "output_directory", &m_outputDirectory, m_outputDirectory ) ); m_params.emplace_back( new JOB_PARAM( "hpgl_plot_origin", &m_HPGLPlotOrigin, m_HPGLPlotOrigin ) ); diff --git a/common/jobs/job_export_sch_plot.h b/common/jobs/job_export_sch_plot.h index f18948adbe..72c64583fe 100644 --- a/common/jobs/job_export_sch_plot.h +++ b/common/jobs/job_export_sch_plot.h @@ -95,9 +95,6 @@ public: bool m_PDFMetadata; wxString m_theme; - wxString m_outputDirectory; - wxString m_outputFile; - JOB_HPGL_PLOT_ORIGIN_AND_UNITS m_HPGLPlotOrigin; }; diff --git a/eeschema/eeschema_jobs_handler.cpp b/eeschema/eeschema_jobs_handler.cpp index fc79489686..5b07d605f5 100644 --- a/eeschema/eeschema_jobs_handler.cpp +++ b/eeschema/eeschema_jobs_handler.cpp @@ -340,8 +340,16 @@ int EESCHEMA_JOBS_HANDLER::JobExportPlot( JOB* aJob ) plotOpts.m_PDFPropertyPopups = aPlotJob->m_PDFPropertyPopups; plotOpts.m_PDFHierarchicalLinks = aPlotJob->m_PDFHierarchicalLinks; plotOpts.m_PDFMetadata = aPlotJob->m_PDFMetadata; - plotOpts.m_outputDirectory = aPlotJob->GetFullOutputPath(); - plotOpts.m_outputFile = aPlotJob->GetFullOutputPath(); + if (aPlotJob->GetOutpathIsDirectory()) + { + plotOpts.m_outputDirectory = aPlotJob->GetFullOutputPath(); + plotOpts.m_outputFile = wxEmptyString; + } + else + { + plotOpts.m_outputDirectory = wxEmptyString; + plotOpts.m_outputFile = aPlotJob->GetFullOutputPath(); + } plotOpts.m_pageSizeSelect = pageSizeSelect; plotOpts.m_plotAll = aPlotJob->m_plotAll; plotOpts.m_plotDrawingSheet = aPlotJob->m_plotDrawingSheet; diff --git a/kicad/cli/command_sch_export_plot.cpp b/kicad/cli/command_sch_export_plot.cpp index 4549f7bb3f..7b7bb9830b 100644 --- a/kicad/cli/command_sch_export_plot.cpp +++ b/kicad/cli/command_sch_export_plot.cpp @@ -163,10 +163,7 @@ int CLI::SCH_EXPORT_PLOT_COMMAND::doPerform( KIWAY& aKiway ) plotJob->m_theme = From_UTF8( m_argParser.get( ARG_THEME ).c_str() ); } - if( m_outputArgExpectsDir ) - plotJob->m_outputDirectory = m_argOutput; - else - plotJob->m_outputFile = m_argOutput; + plotJob->SetOutputPath( m_argOutput ); plotJob->m_plotAll = plotJob->m_plotPages.size() == 0;