74 { wxID_APPLY,
_(
"Plot Current Page" ) },
75 { wxID_CANCEL,
_(
"Close" ) } } );
79 SetTitle(
m_job->GetSettingsDialogTitle() );
94 for(
COLOR_SETTINGS* settings :
Pgm().GetSettingsManager().GetColorSettingsList() )
95 m_colorTheme->Append( settings->GetName(),
static_cast<void*
>( settings ) );
132 int paperSizeIndex = (int)
m_job->m_pageSizeSelect;
134 if( paperSizeIndex >= 0 && paperSizeIndex < (
int)
m_paperSizeOption->GetCount() )
141 switch(
m_job->m_plotFormat )
156 if( !
m_job->m_variant.IsEmpty() )
160 if( idx != wxNOT_FOUND )
166 GetSizer()->SetSizeHints(
this );
169 wxCommandEvent
dummy;
187 if(
Prj().IsNullProject() )
198 wxDirDialog dirDialog(
this,
_(
"Select Output Directory" ),
path );
200 if( dirDialog.ShowModal() == wxID_CANCEL )
203 wxFileName dirName = wxFileName::DirName( dirDialog.GetPath() );
205 wxFileName fn(
Prj().AbsolutePath(
m_editFrame->Schematic().Root().GetFileName() ) );
206 wxString defaultPath = fn.GetPathWithSep();
207 wxFileName relPathTest;
209 relPathTest.Assign( dirDialog.GetPath() );
212 if( relPathTest.MakeRelativeTo( defaultPath ) )
214 if(
IsOK(
this, wxString::Format(
_(
"Do you want to use a path relative to\n'%s'?" ), defaultPath ) ) )
215 dirName.MakeRelativeTo( defaultPath );
294 wxCommandEvent
dummy;
323 m_job->m_plotAll =
true;
343 std::unique_ptr<SCH_PLOTTER> schPlotter = std::make_unique<SCH_PLOTTER>(
m_editFrame );
364 OpenPDF( schPlotter->GetLastOutputFilePath() );
370 wxString extMsg = wxString::Format(
_(
"Falling back to user path '%s'." ),
376 std::function<bool( wxString* )> textResolver =
377 [&]( wxString* token ) ->
bool
380 return schematic.ResolveTextVar( &schematic.CurrentSheet(), token, 0 );
390 if( fn.IsAbsolute() )
395 if(
Prj().IsNullProject() )
407 fn.SetName( wxEmptyString );
408 fn.SetExt( wxEmptyString );
422 DisplayErrorMessage(
this,
_(
"No project or path defined for the current schematic." ), extMsg );
453 if( ( selection != 0 ) && ( selection != wxNOT_FOUND ) )
constexpr EDA_IU_SCALE schIUScale
KIFACE_BASE & Kiface()
Global KIFACE_BASE "get" accessor.
wxBitmapBundle KiBitmapBundle(BITMAPS aBitmap, int aMinHeight)
static const COLOR4D UNSPECIFIED
For legacy support; used as a value to indicate color hasn't been set yet.
Color settings are a bit different than most of the settings objects in that there can be more than o...
static const wxString COLOR_BUILTIN_DEFAULT
COLOR4D GetColor(int aLayer) const
const wxString & GetName() const
wxRadioBox * m_plotFormatOpt
wxChoice * m_DXF_plotUnits
wxStaticText * m_lineWidthUnits
wxCheckBox * m_plotPDFMetadata
wxChoice * m_ModeColorOption
wxStaticText * m_colorThemeLabel
DIALOG_PLOT_SCHEMATIC_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Plot Schematic"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
STD_BITMAP_BUTTON * m_browseButton
wxStaticText * m_staticTextDXF
wxCheckBox * m_plotDrawingSheet
wxCheckBox * m_plotPDFPropertyPopups
WX_HTML_REPORT_PANEL * m_MessagesBox
wxStaticText * m_lineWidthLabel
wxCheckBox * m_plotPDFHierarchicalLinks
wxChoice * m_paperSizeOption
wxChoice * m_variantChoiceCtrl
wxCheckBox * m_openFileAfterPlot
wxButton * m_sdbSizer1Apply
wxCheckBox * m_plotBackgroundColor
wxTextCtrl * m_outputPath
wxTextCtrl * m_lineWidthCtrl
UNIT_BINDER m_defaultLineWidth
void OnPlotAll(wxCommandEvent &event) override
PLOT_FORMAT getPlotFileFormat()
void onColorMode(wxCommandEvent &aEvent) override
wxString getSelectedVariant() const
void OnPlotCurrent(wxCommandEvent &event) override
void onPlotFormatSelection(wxCommandEvent &event) override
JOB_EXPORT_SCH_PLOT * m_job
SCH_EDIT_FRAME * m_editFrame
void getPlotOptions(RENDER_SETTINGS *aSettings)
COLOR_SETTINGS * getColorSettings()
bool TransferDataToWindow() override
void plotSchematic(bool aPlotAll)
void onOutputDirectoryBrowseClicked(wxCommandEvent &event) override
DIALOG_PLOT_SCHEMATIC(SCH_EDIT_FRAME *aEditFrame)
wxString getOutputPath()
Determine the best absolute path to plot files given the contents of the path edit control.
void SetupStandardButtons(std::map< int, wxString > aLabels={})
void finishDialogSettings()
In all dialogs, we must call the same functions to fix minimal dlg size, the default position and per...
wxString GetFilename() const
APP_SETTINGS_BASE * KifaceSettings() const
Container for all the knowledge about how graphical objects are drawn on any output surface/device.
virtual void LoadColors(const COLOR_SETTINGS *aSettings)
void SetDefaultFont(const wxString &aFont)
virtual void SetBackgroundColor(const COLOR4D &aColor)=0
Set the background color.
void SetMinPenWidth(int aWidth)
PROJECT & Prj() const
Return a reference to the PROJECT associated with this KIWAY.
virtual const wxString GetProjectPath() const
Return the full path of the project.
virtual const wxString AbsolutePath(const wxString &aFileName) const
Fix up aFileName if it is relative to the project's directory to be an absolute path and filename.
Holds all the data relating to one schematic.
Schematic editor (Eeschema) main window.
const wxString & GetFileName() const
const wxString ExpandEnvVarSubstitutions(const wxString &aString, const PROJECT *aProject)
Replace any environment variable & text variable references with their values.
wxString ExpandTextVars(const wxString &aSource, const PROJECT *aProject, int aFlags)
bool IsOK(wxWindow *aParent, const wxString &aMessage)
Display a yes/no dialog with aMessage and returns the user response.
void DisplayErrorMessage(wxWindow *aParent, const wxString &aText, const wxString &aExtraInfo)
Display an error message with aMessage.
This file is part of the common library.
bool OpenPDF(const wxString &file)
Run the PDF viewer and display a PDF file.
@ LAYER_SCHEMATIC_BACKGROUND
PGM_BASE & Pgm()
The global program "get" accessor.
PLOT_FORMAT
The set of supported output plot formats.
Plotting engines similar to ps (PostScript, Gerber, svg)
std::vector< FAB_LAYER_COLOR > dummy
#define TO_UTF8(wxstring)
Convert a wxString to a UTF8 encoded C string for all wxWidgets build modes.
int default_line_thickness
DXF_UNITS m_DXF_File_Unit
wxString m_outputDirectory
bool m_PDFHierarchicalLinks
bool m_useBackgroundColor
wxLogTrace helper definitions.
#define FN_NORMALIZE_FLAGS
Default flags to pass to wxFileName::Normalize().