KiCad PCB EDA Suite
dialog_plot_base.cpp
Go to the documentation of this file.
1 // C++ code generated with wxFormBuilder (version Aug 4 2017)
3 // http://www.wxformbuilder.org/
4 //
5 // PLEASE DO "NOT" EDIT THIS FILE!
7 
8 #include "wx_html_report_panel.h"
9 
10 #include "dialog_plot_base.h"
11 
13 
14 DIALOG_PLOT_BASE::DIALOG_PLOT_BASE( wxWindow* parent, wxWindowID id, const wxString& title, const wxPoint& pos, const wxSize& size, long style ) : DIALOG_SHIM( parent, id, title, pos, size, style )
15 {
16  this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
17 
18  m_MainSizer = new wxBoxSizer( wxVERTICAL );
19 
20  wxBoxSizer* bupperSizer;
21  bupperSizer = new wxBoxSizer( wxHORIZONTAL );
22 
23  wxBoxSizer* bSizerPlotFmt;
24  bSizerPlotFmt = new wxBoxSizer( wxVERTICAL );
25 
26  m_staticTextPlotFmt = new wxStaticText( this, wxID_ANY, _("Plot format:"), wxDefaultPosition, wxDefaultSize, 0 );
27  m_staticTextPlotFmt->Wrap( -1 );
28  bSizerPlotFmt->Add( m_staticTextPlotFmt, 0, wxTOP, 5 );
29 
30  wxString m_plotFormatOptChoices[] = { _("Gerber"), _("Postscript"), _("SVG"), _("DXF"), _("HPGL"), _("PDF") };
31  int m_plotFormatOptNChoices = sizeof( m_plotFormatOptChoices ) / sizeof( wxString );
32  m_plotFormatOpt = new wxChoice( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, m_plotFormatOptNChoices, m_plotFormatOptChoices, 0 );
33  m_plotFormatOpt->SetSelection( 0 );
34  bSizerPlotFmt->Add( m_plotFormatOpt, 0, wxTOP, 6 );
35 
36 
37  bupperSizer->Add( bSizerPlotFmt, 0, wxEXPAND|wxRIGHT|wxLEFT, 10 );
38 
39  wxBoxSizer* bSizerOutDir;
40  bSizerOutDir = new wxBoxSizer( wxVERTICAL );
41 
42  m_staticTextDir = new wxStaticText( this, wxID_ANY, _("Output directory:"), wxDefaultPosition, wxDefaultSize, 0 );
43  m_staticTextDir->Wrap( -1 );
44  bSizerOutDir->Add( m_staticTextDir, 0, wxEXPAND|wxTOP, 5 );
45 
46  wxBoxSizer* bSizer29;
47  bSizer29 = new wxBoxSizer( wxHORIZONTAL );
48 
49  m_outputDirectoryName = new wxTextCtrl( this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
50  m_outputDirectoryName->SetToolTip( _("Target directory for plot files. Can be absolute or relative to the board file location.") );
51 
52  bSizer29->Add( m_outputDirectoryName, 1, wxBOTTOM|wxEXPAND|wxTOP, 5 );
53 
54  m_browseButton = new wxBitmapButton( this, wxID_ANY, wxNullBitmap, wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW );
55  bSizer29->Add( m_browseButton, 0, wxRIGHT, 5 );
56 
57 
58  bSizerOutDir->Add( bSizer29, 1, wxEXPAND, 5 );
59 
60 
61  bupperSizer->Add( bSizerOutDir, 1, wxLEFT|wxRIGHT, 5 );
62 
63 
64  m_MainSizer->Add( bupperSizer, 0, wxEXPAND|wxLEFT|wxTOP, 5 );
65 
66  wxBoxSizer* bmiddleSizer;
67  bmiddleSizer = new wxBoxSizer( wxHORIZONTAL );
68 
69  m_LayersSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Included Layers:") ), wxHORIZONTAL );
70 
71  wxArrayString m_layerCheckListBoxChoices;
72  m_layerCheckListBox = new wxCheckListBox( m_LayersSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_layerCheckListBoxChoices, 0 );
73  m_layerCheckListBox->SetMinSize( wxSize( 150,-1 ) );
74 
75  m_LayersSizer->Add( m_layerCheckListBox, 1, wxEXPAND, 5 );
76 
77 
78  bmiddleSizer->Add( m_LayersSizer, 1, wxALL|wxEXPAND, 3 );
79 
80  m_PlotOptionsSizer = new wxBoxSizer( wxVERTICAL );
81 
82  wxStaticBoxSizer* sbOptionsSizer;
83  sbOptionsSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("General Options:") ), wxVERTICAL );
84 
85  wxBoxSizer* bSizer192;
86  bSizer192 = new wxBoxSizer( wxHORIZONTAL );
87 
88  wxBoxSizer* bSizerPlotItems;
89  bSizerPlotItems = new wxBoxSizer( wxVERTICAL );
90 
91  m_plotSheetRef = new wxCheckBox( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Plot sheet reference on all layers"), wxDefaultPosition, wxDefaultSize, 0 );
92  bSizerPlotItems->Add( m_plotSheetRef, 0, wxRIGHT|wxLEFT, 2 );
93 
94  m_plotModuleValueOpt = new wxCheckBox( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Plot footprint values"), wxDefaultPosition, wxDefaultSize, 0 );
95  m_plotModuleValueOpt->SetValue(true);
96  bSizerPlotItems->Add( m_plotModuleValueOpt, 0, wxTOP|wxRIGHT|wxLEFT, 2 );
97 
98  m_plotModuleRefOpt = new wxCheckBox( sbOptionsSizer->GetStaticBox(), ID_PRINT_REF, _("Plot footprint references"), wxDefaultPosition, wxDefaultSize, 0 );
99  m_plotModuleRefOpt->SetValue(true);
100  bSizerPlotItems->Add( m_plotModuleRefOpt, 0, wxTOP|wxRIGHT|wxLEFT, 2 );
101 
102  m_plotInvisibleText = new wxCheckBox( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Force plotting of invisible values/references"), wxDefaultPosition, wxDefaultSize, 0 );
103  m_plotInvisibleText->SetToolTip( _("Force plot invisible values and/or references") );
104 
105  bSizerPlotItems->Add( m_plotInvisibleText, 0, wxALL, 2 );
106 
107  m_plotNoViaOnMaskOpt = new wxCheckBox( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Do not tent vias"), wxDefaultPosition, wxDefaultSize, 0 );
108  m_plotNoViaOnMaskOpt->SetToolTip( _("Remove soldermask on vias") );
109 
110  bSizerPlotItems->Add( m_plotNoViaOnMaskOpt, 0, wxALL, 2 );
111 
112  m_excludeEdgeLayerOpt = new wxCheckBox( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Exclude PCB edge layer from other layers"), wxDefaultPosition, wxDefaultSize, 0 );
113  m_excludeEdgeLayerOpt->SetToolTip( _("Do not plot the contents of the PCB edge layer on any other layers.") );
114 
115  bSizerPlotItems->Add( m_excludeEdgeLayerOpt, 0, wxALL, 2 );
116 
117  m_excludePadsFromSilkscreen = new wxCheckBox( sbOptionsSizer->GetStaticBox(), ID_ALLOW_PRINT_PAD_ON_SILKSCREEN, _("Exclude pads from silkscreen"), wxDefaultPosition, wxDefaultSize, 0 );
118  m_excludePadsFromSilkscreen->SetToolTip( _("Do not plot pads on silkscreen layers, even when they are assigned to them.\nUncheck this if you wish to create assembly drawings from silkscreen layers.") );
119 
120  bSizerPlotItems->Add( m_excludePadsFromSilkscreen, 0, wxALL, 2 );
121 
122  m_useAuxOriginCheckBox = new wxCheckBox( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Use auxiliary axis as origin"), wxDefaultPosition, wxDefaultSize, 0 );
123  m_useAuxOriginCheckBox->SetToolTip( _("Use auxiliary axis as coordinates origin in plot files") );
124 
125  bSizerPlotItems->Add( m_useAuxOriginCheckBox, 0, wxALL, 2 );
126 
127  m_plotMirrorOpt = new wxCheckBox( sbOptionsSizer->GetStaticBox(), ID_MIROR_OPT, _("Mirrored plot"), wxDefaultPosition, wxDefaultSize, 0 );
128  bSizerPlotItems->Add( m_plotMirrorOpt, 0, wxALL, 2 );
129 
130  m_plotPSNegativeOpt = new wxCheckBox( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Negative plot"), wxDefaultPosition, wxDefaultSize, 0 );
131  bSizerPlotItems->Add( m_plotPSNegativeOpt, 0, wxALL, 2 );
132 
133  m_zoneFillCheck = new wxCheckBox( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Check zone fills before plotting"), wxDefaultPosition, wxDefaultSize, 0 );
134  bSizerPlotItems->Add( m_zoneFillCheck, 0, wxALL, 2 );
135 
136 
137  bSizer192->Add( bSizerPlotItems, 0, wxEXPAND, 5 );
138 
139  wxBoxSizer* bSizer14;
140  bSizer14 = new wxBoxSizer( wxVERTICAL );
141 
142  m_staticText11 = new wxStaticText( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Drill marks:"), wxDefaultPosition, wxDefaultSize, 0 );
143  m_staticText11->Wrap( -1 );
144  bSizer14->Add( m_staticText11, 0, wxRIGHT|wxLEFT, 5 );
145 
146  wxString m_drillShapeOptChoices[] = { _("None"), _("Small"), _("Actual size") };
147  int m_drillShapeOptNChoices = sizeof( m_drillShapeOptChoices ) / sizeof( wxString );
148  m_drillShapeOpt = new wxChoice( sbOptionsSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_drillShapeOptNChoices, m_drillShapeOptChoices, 0 );
149  m_drillShapeOpt->SetSelection( 0 );
150  bSizer14->Add( m_drillShapeOpt, 0, wxEXPAND|wxLEFT, 5 );
151 
152  m_staticText12 = new wxStaticText( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Scaling:"), wxDefaultPosition, wxDefaultSize, 0 );
153  m_staticText12->Wrap( -1 );
154  bSizer14->Add( m_staticText12, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
155 
156  wxString m_scaleOptChoices[] = { _("Auto"), _("1:1"), _("3:2"), _("2:1"), _("3:1") };
157  int m_scaleOptNChoices = sizeof( m_scaleOptChoices ) / sizeof( wxString );
158  m_scaleOpt = new wxChoice( sbOptionsSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_scaleOptNChoices, m_scaleOptChoices, 0 );
159  m_scaleOpt->SetSelection( 1 );
160  bSizer14->Add( m_scaleOpt, 0, wxEXPAND|wxLEFT, 5 );
161 
162  m_staticText13 = new wxStaticText( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Plot mode:"), wxDefaultPosition, wxDefaultSize, 0 );
163  m_staticText13->Wrap( -1 );
164  bSizer14->Add( m_staticText13, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
165 
166  wxString m_plotModeOptChoices[] = { _("Filled"), _("Sketch") };
167  int m_plotModeOptNChoices = sizeof( m_plotModeOptChoices ) / sizeof( wxString );
168  m_plotModeOpt = new wxChoice( sbOptionsSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_plotModeOptNChoices, m_plotModeOptChoices, 0 );
169  m_plotModeOpt->SetSelection( 0 );
170  bSizer14->Add( m_plotModeOpt, 0, wxEXPAND|wxLEFT, 5 );
171 
172  m_textDefaultPenSize = new wxStaticText( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Line width:"), wxDefaultPosition, wxDefaultSize, 0 );
173  m_textDefaultPenSize->Wrap( -1 );
174  m_textDefaultPenSize->SetToolTip( _("Pen size used to draw items that have no pen size specified.\nUsed mainly to draw items in sketch mode.") );
175 
176  bSizer14->Add( m_textDefaultPenSize, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
177 
178  m_linesWidth = new wxTextCtrl( sbOptionsSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
179  m_linesWidth->SetToolTip( _("Line width for, e.g., sheet references.") );
180 
181  bSizer14->Add( m_linesWidth, 0, wxBOTTOM|wxEXPAND|wxLEFT, 5 );
182 
183 
184  bSizer192->Add( bSizer14, 1, wxRIGHT|wxLEFT, 3 );
185 
186 
187  sbOptionsSizer->Add( bSizer192, 0, wxEXPAND, 5 );
188 
189 
190  m_PlotOptionsSizer->Add( sbOptionsSizer, 0, wxALL|wxEXPAND, 3 );
191 
192  m_sizerSoldMaskLayerOpt = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Solder Mask Options:") ), wxVERTICAL );
193 
194  wxFlexGridSizer* fgSizerSoldMaskOpts;
195  fgSizerSoldMaskOpts = new wxFlexGridSizer( 2, 2, 0, 0 );
196  fgSizerSoldMaskOpts->SetFlexibleDirection( wxBOTH );
197  fgSizerSoldMaskOpts->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
198 
199  m_SolderMaskMarginLabel = new wxStaticText( m_sizerSoldMaskLayerOpt->GetStaticBox(), wxID_ANY, _("Clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
200  m_SolderMaskMarginLabel->Wrap( -1 );
201  m_SolderMaskMarginLabel->SetToolTip( _("Margin between pads and solder mask") );
202 
203  fgSizerSoldMaskOpts->Add( m_SolderMaskMarginLabel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT|wxRIGHT, 5 );
204 
205  m_SolderMaskMarginCurrValue = new wxStaticText( m_sizerSoldMaskLayerOpt->GetStaticBox(), wxID_ANY, _("val"), wxDefaultPosition, wxDefaultSize, 0 );
206  m_SolderMaskMarginCurrValue->Wrap( -1 );
207  fgSizerSoldMaskOpts->Add( m_SolderMaskMarginCurrValue, 0, wxBOTTOM|wxLEFT|wxRIGHT, 5 );
208 
209  m_solderMaskMinWidthLabel = new wxStaticText( m_sizerSoldMaskLayerOpt->GetStaticBox(), wxID_ANY, _("Width:"), wxDefaultPosition, wxDefaultSize, 0 );
210  m_solderMaskMinWidthLabel->Wrap( -1 );
211  m_solderMaskMinWidthLabel->SetToolTip( _("Minimum distance between 2 pad areas.\nTwo pad areas nearer than this value will be merged during plotting") );
212 
213  fgSizerSoldMaskOpts->Add( m_solderMaskMinWidthLabel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
214 
215  m_SolderMaskMinWidthCurrValue = new wxStaticText( m_sizerSoldMaskLayerOpt->GetStaticBox(), wxID_ANY, _("val"), wxDefaultPosition, wxDefaultSize, 0 );
216  m_SolderMaskMinWidthCurrValue->Wrap( -1 );
217  fgSizerSoldMaskOpts->Add( m_SolderMaskMinWidthCurrValue, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
218 
219 
220  m_sizerSoldMaskLayerOpt->Add( fgSizerSoldMaskOpts, 1, wxEXPAND, 5 );
221 
222 
223  m_PlotOptionsSizer->Add( m_sizerSoldMaskLayerOpt, 1, wxALL|wxEXPAND, 3 );
224 
225  m_GerberOptionsSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Gerber Options:") ), wxHORIZONTAL );
226 
227  wxBoxSizer* bSizerGbrOpt;
228  bSizerGbrOpt = new wxBoxSizer( wxVERTICAL );
229 
230  m_useGerberExtensions = new wxCheckBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Use Protel filename extensions"), wxDefaultPosition, wxDefaultSize, 0 );
231  m_useGerberExtensions->SetToolTip( _("Use Protel Gerber extensions (.GBL, .GTL, etc...)\nNo longer recommended. The official extension is .gbr") );
232 
233  bSizerGbrOpt->Add( m_useGerberExtensions, 0, wxBOTTOM|wxRIGHT|wxLEFT, 2 );
234 
235  m_useGerberX2Attributes = new wxCheckBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Include extended (X2) attributes"), wxDefaultPosition, wxDefaultSize, 0 );
236  m_useGerberX2Attributes->SetToolTip( _("Include extended attributes (X2 Gerber files format) in the Gerber file.\nMainly File Format attributes.") );
237 
238  bSizerGbrOpt->Add( m_useGerberX2Attributes, 0, wxALL, 2 );
239 
240  m_useGerberNetAttributes = new wxCheckBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Include advanced X2 features"), wxDefaultPosition, wxDefaultSize, 0 );
241  m_useGerberNetAttributes->SetToolTip( _("Only available in X2 Gerber files format.\nInclude netlist metadata and aperture attributes.") );
242 
243  bSizerGbrOpt->Add( m_useGerberNetAttributes, 0, wxALL, 2 );
244 
245  m_generateGerberJobFile = new wxCheckBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Generate Gerber job file"), wxDefaultPosition, wxDefaultSize, 0 );
246  m_generateGerberJobFile->SetToolTip( _("Generate a Gerber job file that contains info about the board,\nand the list of generated Gerber plot files") );
247 
248  bSizerGbrOpt->Add( m_generateGerberJobFile, 0, wxALL, 2 );
249 
250  m_subtractMaskFromSilk = new wxCheckBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Subtract soldermask from silkscreen"), wxDefaultPosition, wxDefaultSize, 0 );
251  m_subtractMaskFromSilk->SetToolTip( _("Remove silkscreen from areas without soldermask") );
252 
253  bSizerGbrOpt->Add( m_subtractMaskFromSilk, 0, wxALL, 2 );
254 
255 
256  m_GerberOptionsSizer->Add( bSizerGbrOpt, 1, wxALIGN_CENTER_VERTICAL, 5 );
257 
258  wxString m_rbGerberFormatChoices[] = { _("4.5, unit mm"), _("4.6, unit mm") };
259  int m_rbGerberFormatNChoices = sizeof( m_rbGerberFormatChoices ) / sizeof( wxString );
260  m_rbGerberFormat = new wxRadioBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Coordinate Format"), wxDefaultPosition, wxDefaultSize, m_rbGerberFormatNChoices, m_rbGerberFormatChoices, 1, wxRA_SPECIFY_COLS );
261  m_rbGerberFormat->SetSelection( 0 );
262  m_rbGerberFormat->SetToolTip( _("Resolution of coordinates in Gerber files.\nUse the higher value if possible.") );
263 
264  m_GerberOptionsSizer->Add( m_rbGerberFormat, 0, wxALIGN_LEFT|wxALIGN_TOP|wxBOTTOM|wxLEFT, 5 );
265 
266 
267  m_PlotOptionsSizer->Add( m_GerberOptionsSizer, 0, wxALL|wxEXPAND, 3 );
268 
269  m_HPGLOptionsSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("HPGL Options:") ), wxVERTICAL );
270 
271  wxBoxSizer* bSizerHPGL_options;
272  bSizerHPGL_options = new wxBoxSizer( wxVERTICAL );
273 
274  m_textPenSize = new wxStaticText( m_HPGLOptionsSizer->GetStaticBox(), wxID_ANY, _("Pen size:"), wxDefaultPosition, wxDefaultSize, 0 );
275  m_textPenSize->Wrap( -1 );
276  bSizerHPGL_options->Add( m_textPenSize, 0, wxRIGHT|wxLEFT, 5 );
277 
278  m_HPGLPenSizeOpt = new wxTextCtrl( m_HPGLOptionsSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
279  bSizerHPGL_options->Add( m_HPGLPenSizeOpt, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
280 
281 
282  m_HPGLOptionsSizer->Add( bSizerHPGL_options, 1, wxEXPAND, 5 );
283 
284 
285  m_PlotOptionsSizer->Add( m_HPGLOptionsSizer, 0, wxALL|wxEXPAND, 3 );
286 
287  m_PSOptionsSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Postscript Options:") ), wxVERTICAL );
288 
289  wxBoxSizer* bSizer17;
290  bSizer17 = new wxBoxSizer( wxHORIZONTAL );
291 
292  wxBoxSizer* bSizer18;
293  bSizer18 = new wxBoxSizer( wxVERTICAL );
294 
295  m_staticText7 = new wxStaticText( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, _("X scale:"), wxDefaultPosition, wxDefaultSize, 0 );
296  m_staticText7->Wrap( -1 );
297  bSizer18->Add( m_staticText7, 0, wxRIGHT|wxLEFT, 5 );
298 
299  m_fineAdjustXscaleOpt = new wxTextCtrl( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
300  m_fineAdjustXscaleOpt->SetToolTip( _("Set global X scale adjust for exact scale postscript output.") );
301 
302  bSizer18->Add( m_fineAdjustXscaleOpt, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
303 
304 
305  bSizer17->Add( bSizer18, 1, wxEXPAND, 5 );
306 
307  wxBoxSizer* bSizer19;
308  bSizer19 = new wxBoxSizer( wxVERTICAL );
309 
310  m_staticText8 = new wxStaticText( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, _("Y scale:"), wxDefaultPosition, wxDefaultSize, 0 );
311  m_staticText8->Wrap( -1 );
312  bSizer19->Add( m_staticText8, 0, wxRIGHT|wxLEFT, 5 );
313 
314  m_fineAdjustYscaleOpt = new wxTextCtrl( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
315  m_fineAdjustYscaleOpt->SetToolTip( _("Set global Y scale adjust for exact scale postscript output.") );
316 
317  bSizer19->Add( m_fineAdjustYscaleOpt, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
318 
319 
320  bSizer17->Add( bSizer19, 1, wxEXPAND, 5 );
321 
322  wxBoxSizer* bSizer191;
323  bSizer191 = new wxBoxSizer( wxVERTICAL );
324 
325  m_textPSFineAdjustWidth = new wxStaticText( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, _("Width correction:"), wxDefaultPosition, wxDefaultSize, 0 );
326  m_textPSFineAdjustWidth->Wrap( -1 );
327  bSizer191->Add( m_textPSFineAdjustWidth, 0, wxRIGHT|wxLEFT, 5 );
328 
329  m_PSFineAdjustWidthOpt = new wxTextCtrl( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
330  m_PSFineAdjustWidthOpt->SetToolTip( _("Set global width correction for exact width postscript output.\nThese width correction is intended to compensate tracks width and also pads and vias size errors.\nThe reasonable width correction value must be in a range of [-(MinTrackWidth-1), +(MinClearanceValue-1)] in decimils.") );
331 
332  bSizer191->Add( m_PSFineAdjustWidthOpt, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
333 
334 
335  bSizer17->Add( bSizer191, 1, wxEXPAND, 5 );
336 
337 
338  m_PSOptionsSizer->Add( bSizer17, 1, wxEXPAND, 5 );
339 
340  m_forcePSA4OutputOpt = new wxCheckBox( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, _("Force A4 output"), wxDefaultPosition, wxDefaultSize, 0 );
341  m_PSOptionsSizer->Add( m_forcePSA4OutputOpt, 0, wxALL, 2 );
342 
343 
344  m_PlotOptionsSizer->Add( m_PSOptionsSizer, 0, wxALL|wxEXPAND, 3 );
345 
346  m_SizerDXF_options = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("DXF options:") ), wxVERTICAL );
347 
348  m_DXF_plotModeOpt = new wxCheckBox( m_SizerDXF_options->GetStaticBox(), wxID_ANY, _("Plot all layers in outline (polygon) mode"), wxDefaultPosition, wxDefaultSize, 0 );
349  m_DXF_plotModeOpt->SetValue(true);
350  m_DXF_plotModeOpt->SetToolTip( _("DXF only:\nCheck to plot all layers in polygon mode.\nUncheck to plot in sketch mode layers that don't support polygons (*.SilkS, *_User, Edge.Cuts, Margin, *.CrtYd, *.Fab)\nand plot in polygon mode other layers (*.Cu, *.Adhes, *.Paste, *.Mask)") );
351 
352  m_SizerDXF_options->Add( m_DXF_plotModeOpt, 0, wxALL, 2 );
353 
354  m_DXF_plotTextStrokeFontOpt = new wxCheckBox( m_SizerDXF_options->GetStaticBox(), wxID_ANY, _("Use Pcbnew font to plot texts"), wxDefaultPosition, wxDefaultSize, 0 );
355  m_DXF_plotTextStrokeFontOpt->SetToolTip( _("Check to use Pcbnew stroke font\nUncheck to plot oneline ASCII texts as editable text (using DXF font)") );
356 
357  m_SizerDXF_options->Add( m_DXF_plotTextStrokeFontOpt, 0, wxALL, 2 );
358 
359 
360  m_PlotOptionsSizer->Add( m_SizerDXF_options, 0, wxALL|wxEXPAND, 3 );
361 
362 
363  bmiddleSizer->Add( m_PlotOptionsSizer, 0, 0, 5 );
364 
365 
366  m_MainSizer->Add( bmiddleSizer, 0, wxEXPAND|wxLEFT|wxRIGHT|wxTOP, 8 );
367 
368  wxBoxSizer* sbSizerMsg;
369  sbSizerMsg = new wxBoxSizer( wxVERTICAL );
370 
371  m_messagesPanel = new WX_HTML_REPORT_PANEL( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
372  m_messagesPanel->SetMinSize( wxSize( -300,150 ) );
373 
374  sbSizerMsg->Add( m_messagesPanel, 1, wxEXPAND | wxALL, 5 );
375 
376 
377  m_MainSizer->Add( sbSizerMsg, 1, wxEXPAND, 5 );
378 
379  m_sizerButtons = new wxBoxSizer( wxHORIZONTAL );
380 
381  m_buttonDRC = new wxButton( this, wxID_ANY, _("Run DRC..."), wxDefaultPosition, wxDefaultSize, 0 );
382  m_sizerButtons->Add( m_buttonDRC, 0, wxALIGN_CENTER_VERTICAL|wxALL, 5 );
383 
384 
385  m_sizerButtons->Add( 10, 0, 1, wxEXPAND, 5 );
386 
387  m_sdbSizer1 = new wxStdDialogButtonSizer();
388  m_sdbSizer1OK = new wxButton( this, wxID_OK );
389  m_sdbSizer1->AddButton( m_sdbSizer1OK );
390  m_sdbSizer1Apply = new wxButton( this, wxID_APPLY );
391  m_sdbSizer1->AddButton( m_sdbSizer1Apply );
392  m_sdbSizer1Cancel = new wxButton( this, wxID_CANCEL );
393  m_sdbSizer1->AddButton( m_sdbSizer1Cancel );
394  m_sdbSizer1->Realize();
395 
396  m_sizerButtons->Add( m_sdbSizer1, 0, wxEXPAND, 5 );
397 
398 
399  m_MainSizer->Add( m_sizerButtons, 0, wxALIGN_RIGHT|wxEXPAND|wxLEFT|wxRIGHT, 5 );
400 
401 
402  this->SetSizer( m_MainSizer );
403  this->Layout();
404  m_MainSizer->Fit( this );
405  m_popMenu = new wxMenu();
406  wxMenuItem* m_menuItem1;
407  m_menuItem1 = new wxMenuItem( m_popMenu, ID_LAYER_FAB, wxString( _("Select Fab Layers") ) , wxEmptyString, wxITEM_NORMAL );
408  m_popMenu->Append( m_menuItem1 );
409 
410  wxMenuItem* m_menuItem2;
411  m_menuItem2 = new wxMenuItem( m_popMenu, ID_SELECT_COPPER_LAYERS, wxString( _("Select all Copper Layers") ) , wxEmptyString, wxITEM_NORMAL );
412  m_popMenu->Append( m_menuItem2 );
413 
414  wxMenuItem* m_menuItem3;
415  m_menuItem3 = new wxMenuItem( m_popMenu, ID_DESELECT_COPPER_LAYERS, wxString( _("Deselect all Copper Layers") ) , wxEmptyString, wxITEM_NORMAL );
416  m_popMenu->Append( m_menuItem3 );
417 
418  wxMenuItem* m_menuItem4;
419  m_menuItem4 = new wxMenuItem( m_popMenu, ID_SELECT_ALL_LAYERS, wxString( _("Select all Layers") ) , wxEmptyString, wxITEM_NORMAL );
420  m_popMenu->Append( m_menuItem4 );
421 
422  wxMenuItem* m_menuItem5;
423  m_menuItem5 = new wxMenuItem( m_popMenu, ID_DESELECT_ALL_LAYERS, wxString( _("Deselect all Layers") ) , wxEmptyString, wxITEM_NORMAL );
424  m_popMenu->Append( m_menuItem5 );
425 
426  this->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( DIALOG_PLOT_BASE::DIALOG_PLOT_BASEOnContextMenu ), NULL, this );
427 
428 
429  this->Centre( wxBOTH );
430 
431  // Connect Events
432  this->Connect( wxEVT_ACTIVATE, wxActivateEventHandler( DIALOG_PLOT_BASE::onActivate ) );
433  this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_PLOT_BASE::OnClose ) );
434  this->Connect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( DIALOG_PLOT_BASE::OnInitDialog ) );
435  this->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( DIALOG_PLOT_BASE::OnRightClick ) );
436  m_plotFormatOpt->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::SetPlotFormat ), NULL, this );
437  m_browseButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnOutputDirectoryBrowseClicked ), NULL, this );
438  m_layerCheckListBox->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( DIALOG_PLOT_BASE::OnRightClick ), NULL, this );
439  m_scaleOpt->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnSetScaleOpt ), NULL, this );
440  m_useGerberX2Attributes->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnGerberX2Checked ), NULL, this );
441  m_DXF_plotModeOpt->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnChangeDXFPlotMode ), NULL, this );
442  m_buttonDRC->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::onRunDRC ), NULL, this );
443  m_sdbSizer1Apply->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::CreateDrillFile ), NULL, this );
444  m_sdbSizer1Cancel->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnQuit ), NULL, this );
445  m_sdbSizer1OK->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::Plot ), NULL, this );
446  this->Connect( m_menuItem1->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
447  this->Connect( m_menuItem2->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
448  this->Connect( m_menuItem3->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
449  this->Connect( m_menuItem4->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
450  this->Connect( m_menuItem5->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
451 }
452 
454 {
455  // Disconnect Events
456  this->Disconnect( wxEVT_ACTIVATE, wxActivateEventHandler( DIALOG_PLOT_BASE::onActivate ) );
457  this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_PLOT_BASE::OnClose ) );
458  this->Disconnect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( DIALOG_PLOT_BASE::OnInitDialog ) );
459  this->Disconnect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( DIALOG_PLOT_BASE::OnRightClick ) );
460  m_plotFormatOpt->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::SetPlotFormat ), NULL, this );
461  m_browseButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnOutputDirectoryBrowseClicked ), NULL, this );
462  m_layerCheckListBox->Disconnect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( DIALOG_PLOT_BASE::OnRightClick ), NULL, this );
463  m_scaleOpt->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnSetScaleOpt ), NULL, this );
464  m_useGerberX2Attributes->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnGerberX2Checked ), NULL, this );
465  m_DXF_plotModeOpt->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnChangeDXFPlotMode ), NULL, this );
466  m_buttonDRC->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::onRunDRC ), NULL, this );
467  m_sdbSizer1Apply->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::CreateDrillFile ), NULL, this );
468  m_sdbSizer1Cancel->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnQuit ), NULL, this );
469  m_sdbSizer1OK->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::Plot ), NULL, this );
470  this->Disconnect( ID_LAYER_FAB, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
471  this->Disconnect( ID_SELECT_COPPER_LAYERS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
472  this->Disconnect( ID_DESELECT_COPPER_LAYERS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
473  this->Disconnect( ID_SELECT_ALL_LAYERS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
474  this->Disconnect( ID_DESELECT_ALL_LAYERS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
475 
476  delete m_popMenu;
477 }
virtual void OnPopUpLayers(wxCommandEvent &event)
WX_HTML_REPORT_PANEL * m_messagesPanel
wxStaticBoxSizer * m_HPGLOptionsSizer
wxStaticText * m_textPSFineAdjustWidth
virtual void OnQuit(wxCommandEvent &event)
wxTextCtrl * m_linesWidth
virtual void SetPlotFormat(wxCommandEvent &event)
wxTextCtrl * m_fineAdjustYscaleOpt
wxCheckBox * m_useGerberExtensions
DIALOG_PLOT_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Plot"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
wxButton * m_sdbSizer1Cancel
virtual void OnSetScaleOpt(wxCommandEvent &event)
virtual void CreateDrillFile(wxCommandEvent &event)
wxStaticText * m_SolderMaskMarginCurrValue
wxStaticBoxSizer * m_sizerSoldMaskLayerOpt
wxStaticText * m_textPenSize
wxCheckBox * m_plotPSNegativeOpt
wxStdDialogButtonSizer * m_sdbSizer1
wxRadioBox * m_rbGerberFormat
wxCheckBox * m_excludeEdgeLayerOpt
wxButton * m_sdbSizer1OK
wxCheckBox * m_plotMirrorOpt
virtual void OnOutputDirectoryBrowseClicked(wxCommandEvent &event)
Class DIALOG_SHIM may sit in the inheritance tree between wxDialog and any class written by wxFormBui...
Definition: dialog_shim.h:70
void DIALOG_PLOT_BASEOnContextMenu(wxMouseEvent &event)
wxCheckBox * m_zoneFillCheck
wxChoice * m_plotFormatOpt
virtual void OnChangeDXFPlotMode(wxCommandEvent &event)
wxStaticBoxSizer * m_SizerDXF_options
wxCheckBox * m_useGerberX2Attributes
wxButton * m_sdbSizer1Apply
wxCheckBox * m_DXF_plotModeOpt
wxCheckBox * m_plotSheetRef
wxTextCtrl * m_PSFineAdjustWidthOpt
wxStaticText * m_staticText13
wxStaticText * m_SolderMaskMinWidthCurrValue
virtual void OnClose(wxCloseEvent &event)
wxStaticText * m_staticText7
virtual void Plot(wxCommandEvent &event)
virtual void onActivate(wxActivateEvent &event)
wxCheckBox * m_forcePSA4OutputOpt
wxStaticBoxSizer * m_GerberOptionsSizer
wxCheckBox * m_useGerberNetAttributes
wxCheckBox * m_generateGerberJobFile
wxTextCtrl * m_outputDirectoryName
wxStaticText * m_staticText11
virtual void OnRightClick(wxMouseEvent &event)
wxCheckBox * m_DXF_plotTextStrokeFontOpt
wxStaticText * m_staticTextPlotFmt
wxChoice * m_scaleOpt
wxCheckBox * m_plotModuleRefOpt
wxBoxSizer * m_sizerButtons
wxCheckBox * m_subtractMaskFromSilk
virtual void OnInitDialog(wxInitDialogEvent &event)
wxStaticText * m_staticText8
wxCheckBox * m_plotNoViaOnMaskOpt
wxCheckBox * m_plotModuleValueOpt
wxChoice * m_drillShapeOpt
wxTextCtrl * m_fineAdjustXscaleOpt
wxStaticBoxSizer * m_LayersSizer
wxStaticText * m_staticTextDir
wxStaticText * m_staticText12
wxTextCtrl * m_HPGLPenSizeOpt
wxCheckBox * m_plotInvisibleText
wxCheckBox * m_useAuxOriginCheckBox
virtual void OnGerberX2Checked(wxCommandEvent &event)
wxChoice * m_plotModeOpt
wxCheckBox * m_excludePadsFromSilkscreen
virtual void onRunDRC(wxCommandEvent &event)
wxButton * m_buttonDRC
wxBitmapButton * m_browseButton
wxBoxSizer * m_MainSizer
wxStaticText * m_textDefaultPenSize
wxCheckListBox * m_layerCheckListBox
wxStaticBoxSizer * m_PSOptionsSizer
wxBoxSizer * m_PlotOptionsSizer
wxStaticText * m_solderMaskMinWidthLabel
wxStaticText * m_SolderMaskMarginLabel
Class WX_HTML_REPORT_PANEL.