KiCad PCB EDA Suite
dialog_plot_base.cpp
Go to the documentation of this file.
1 // C++ code generated with wxFormBuilder (version Apr 19 2018)
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, wxTOP|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, wxTOP|wxRIGHT|wxLEFT, 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_plotMirrorOpt = new wxCheckBox( sbOptionsSizer->GetStaticBox(), ID_MIROR_OPT, _("Mirrored plot"), wxDefaultPosition, wxDefaultSize, 0 );
123  bSizerPlotItems->Add( m_plotMirrorOpt, 0, wxALL, 2 );
124 
125  m_plotPSNegativeOpt = new wxCheckBox( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Negative plot"), wxDefaultPosition, wxDefaultSize, 0 );
126  bSizerPlotItems->Add( m_plotPSNegativeOpt, 0, wxALL, 2 );
127 
128  m_useAuxOriginCheckBox = new wxCheckBox( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Use auxiliary axis as origin"), wxDefaultPosition, wxDefaultSize, 0 );
129  m_useAuxOriginCheckBox->SetToolTip( _("Use auxiliary axis as coordinates origin in plot files") );
130 
131  bSizerPlotItems->Add( m_useAuxOriginCheckBox, 0, wxALL, 2 );
132 
133 
134  bSizer192->Add( bSizerPlotItems, 0, wxEXPAND, 5 );
135 
136  wxBoxSizer* bSizer14;
137  bSizer14 = new wxBoxSizer( wxVERTICAL );
138 
139  m_staticText11 = new wxStaticText( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Drill marks:"), wxDefaultPosition, wxDefaultSize, 0 );
140  m_staticText11->Wrap( -1 );
141  bSizer14->Add( m_staticText11, 0, wxRIGHT|wxLEFT, 5 );
142 
143  wxString m_drillShapeOptChoices[] = { _("None"), _("Small"), _("Actual size") };
144  int m_drillShapeOptNChoices = sizeof( m_drillShapeOptChoices ) / sizeof( wxString );
145  m_drillShapeOpt = new wxChoice( sbOptionsSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_drillShapeOptNChoices, m_drillShapeOptChoices, 0 );
146  m_drillShapeOpt->SetSelection( 0 );
147  bSizer14->Add( m_drillShapeOpt, 0, wxEXPAND|wxLEFT, 5 );
148 
149  m_staticText12 = new wxStaticText( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Scaling:"), wxDefaultPosition, wxDefaultSize, 0 );
150  m_staticText12->Wrap( -1 );
151  bSizer14->Add( m_staticText12, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
152 
153  wxString m_scaleOptChoices[] = { _("Auto"), _("1:1"), _("3:2"), _("2:1"), _("3:1") };
154  int m_scaleOptNChoices = sizeof( m_scaleOptChoices ) / sizeof( wxString );
155  m_scaleOpt = new wxChoice( sbOptionsSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_scaleOptNChoices, m_scaleOptChoices, 0 );
156  m_scaleOpt->SetSelection( 1 );
157  bSizer14->Add( m_scaleOpt, 0, wxEXPAND|wxLEFT, 5 );
158 
159  m_staticText13 = new wxStaticText( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Plot mode:"), wxDefaultPosition, wxDefaultSize, 0 );
160  m_staticText13->Wrap( -1 );
161  bSizer14->Add( m_staticText13, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
162 
163  wxString m_plotModeOptChoices[] = { _("Filled"), _("Sketch") };
164  int m_plotModeOptNChoices = sizeof( m_plotModeOptChoices ) / sizeof( wxString );
165  m_plotModeOpt = new wxChoice( sbOptionsSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_plotModeOptNChoices, m_plotModeOptChoices, 0 );
166  m_plotModeOpt->SetSelection( 0 );
167  bSizer14->Add( m_plotModeOpt, 0, wxEXPAND|wxLEFT, 5 );
168 
169  m_textDefaultPenSize = new wxStaticText( sbOptionsSizer->GetStaticBox(), wxID_ANY, _("Line width:"), wxDefaultPosition, wxDefaultSize, 0 );
170  m_textDefaultPenSize->Wrap( -1 );
171  m_textDefaultPenSize->SetToolTip( _("Pen size used to draw items that have no pen size specified.\nUsed mainly to draw items in sketch mode.") );
172 
173  bSizer14->Add( m_textDefaultPenSize, 0, wxTOP|wxRIGHT|wxLEFT, 5 );
174 
175  m_linesWidth = new wxTextCtrl( sbOptionsSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
176  m_linesWidth->SetToolTip( _("Line width for, e.g., sheet references.") );
177 
178  bSizer14->Add( m_linesWidth, 0, wxBOTTOM|wxEXPAND|wxLEFT, 5 );
179 
180 
181  bSizer192->Add( bSizer14, 1, wxRIGHT|wxLEFT, 3 );
182 
183 
184  sbOptionsSizer->Add( bSizer192, 0, wxEXPAND, 5 );
185 
186 
187  m_PlotOptionsSizer->Add( sbOptionsSizer, 0, wxALL|wxEXPAND, 3 );
188 
189  wxStaticBoxSizer* sbSizerSoldMaskLayerOpt;
190  sbSizerSoldMaskLayerOpt = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Solder Mask Options:") ), wxVERTICAL );
191 
192  wxFlexGridSizer* fgSizerSoldMaskOpts;
193  fgSizerSoldMaskOpts = new wxFlexGridSizer( 2, 2, 0, 0 );
194  fgSizerSoldMaskOpts->SetFlexibleDirection( wxBOTH );
195  fgSizerSoldMaskOpts->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
196 
197  m_SolderMaskMarginLabel = new wxStaticText( sbSizerSoldMaskLayerOpt->GetStaticBox(), wxID_ANY, _("Clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
198  m_SolderMaskMarginLabel->Wrap( -1 );
199  m_SolderMaskMarginLabel->SetToolTip( _("Margin between pads and solder mask") );
200 
201  fgSizerSoldMaskOpts->Add( m_SolderMaskMarginLabel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxLEFT|wxRIGHT, 5 );
202 
203  m_SolderMaskMarginCurrValue = new wxStaticText( sbSizerSoldMaskLayerOpt->GetStaticBox(), wxID_ANY, _("val"), wxDefaultPosition, wxDefaultSize, 0 );
204  m_SolderMaskMarginCurrValue->Wrap( -1 );
205  fgSizerSoldMaskOpts->Add( m_SolderMaskMarginCurrValue, 0, wxBOTTOM|wxLEFT|wxRIGHT, 5 );
206 
207  m_solderMaskMinWidthLabel = new wxStaticText( sbSizerSoldMaskLayerOpt->GetStaticBox(), wxID_ANY, _("Width:"), wxDefaultPosition, wxDefaultSize, 0 );
208  m_solderMaskMinWidthLabel->Wrap( -1 );
209  m_solderMaskMinWidthLabel->SetToolTip( _("Minimum distance between 2 pad areas.\nTwo pad areas nearer than this value will be merged during plotting") );
210 
211  fgSizerSoldMaskOpts->Add( m_solderMaskMinWidthLabel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
212 
213  m_SolderMaskMinWidthCurrValue = new wxStaticText( sbSizerSoldMaskLayerOpt->GetStaticBox(), wxID_ANY, _("val"), wxDefaultPosition, wxDefaultSize, 0 );
214  m_SolderMaskMinWidthCurrValue->Wrap( -1 );
215  fgSizerSoldMaskOpts->Add( m_SolderMaskMinWidthCurrValue, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
216 
217 
218  sbSizerSoldMaskLayerOpt->Add( fgSizerSoldMaskOpts, 1, wxEXPAND, 5 );
219 
220 
221  m_PlotOptionsSizer->Add( sbSizerSoldMaskLayerOpt, 1, wxEXPAND, 5 );
222 
223  m_GerberOptionsSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Gerber Options:") ), wxHORIZONTAL );
224 
225  wxBoxSizer* bSizerGbrOpt;
226  bSizerGbrOpt = new wxBoxSizer( wxVERTICAL );
227 
228  m_useGerberExtensions = new wxCheckBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Use Protel filename extensions"), wxDefaultPosition, wxDefaultSize, 0 );
229  m_useGerberExtensions->SetToolTip( _("Use Protel Gerber extensions (.GBL, .GTL, etc...)\nNo longer recommended. The official extension is .gbr") );
230 
231  bSizerGbrOpt->Add( m_useGerberExtensions, 0, wxALL, 2 );
232 
233  m_useGerberX2Attributes = new wxCheckBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Include extended (X2) attributes"), wxDefaultPosition, wxDefaultSize, 0 );
234  m_useGerberX2Attributes->SetToolTip( _("Include extended attributes (X2 Gerber files format) in the Gerber file.\nMainly File Format attributes.") );
235 
236  bSizerGbrOpt->Add( m_useGerberX2Attributes, 0, wxALL, 2 );
237 
238  m_useGerberNetAttributes = new wxCheckBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Include advanced X2 features"), wxDefaultPosition, wxDefaultSize, 0 );
239  m_useGerberNetAttributes->SetToolTip( _("Only available in X2 Gerber files format.\nInclude netlist metadata and aperture attributes.") );
240 
241  bSizerGbrOpt->Add( m_useGerberNetAttributes, 0, wxALL, 2 );
242 
243  m_generateGerberJobFile = new wxCheckBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Generate Gerber job file"), wxDefaultPosition, wxDefaultSize, 0 );
244  m_generateGerberJobFile->SetToolTip( _("Generate a Gerber job file that contains info about the board,\nand the list of generated Gerber plot files") );
245 
246  bSizerGbrOpt->Add( m_generateGerberJobFile, 0, wxALL, 2 );
247 
248  m_subtractMaskFromSilk = new wxCheckBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Subtract soldermask from silkscreen"), wxDefaultPosition, wxDefaultSize, 0 );
249  m_subtractMaskFromSilk->SetToolTip( _("Remove silkscreen from areas without soldermask") );
250 
251  bSizerGbrOpt->Add( m_subtractMaskFromSilk, 0, wxALL, 2 );
252 
253 
254  m_GerberOptionsSizer->Add( bSizerGbrOpt, 1, wxALIGN_CENTER_VERTICAL, 5 );
255 
256  wxString m_rbGerberFormatChoices[] = { _("4.5, unit mm"), _("4.6, unit mm") };
257  int m_rbGerberFormatNChoices = sizeof( m_rbGerberFormatChoices ) / sizeof( wxString );
258  m_rbGerberFormat = new wxRadioBox( m_GerberOptionsSizer->GetStaticBox(), wxID_ANY, _("Coordinate Format"), wxDefaultPosition, wxDefaultSize, m_rbGerberFormatNChoices, m_rbGerberFormatChoices, 1, wxRA_SPECIFY_COLS );
259  m_rbGerberFormat->SetSelection( 0 );
260  m_rbGerberFormat->SetToolTip( _("Resolution of coordinates in Gerber files.\nUse the higher value if possible.") );
261 
262  m_GerberOptionsSizer->Add( m_rbGerberFormat, 0, wxALIGN_LEFT|wxALIGN_TOP|wxALL, 5 );
263 
264 
265  m_PlotOptionsSizer->Add( m_GerberOptionsSizer, 0, wxALL|wxEXPAND, 3 );
266 
267  m_HPGLOptionsSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("HPGL Options:") ), wxVERTICAL );
268 
269  wxBoxSizer* bSizerHPGL_options;
270  bSizerHPGL_options = new wxBoxSizer( wxVERTICAL );
271 
272  m_textPenSize = new wxStaticText( m_HPGLOptionsSizer->GetStaticBox(), wxID_ANY, _("Pen size:"), wxDefaultPosition, wxDefaultSize, 0 );
273  m_textPenSize->Wrap( -1 );
274  bSizerHPGL_options->Add( m_textPenSize, 0, wxRIGHT|wxLEFT, 5 );
275 
276  m_HPGLPenSizeOpt = new wxTextCtrl( m_HPGLOptionsSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
277  bSizerHPGL_options->Add( m_HPGLPenSizeOpt, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxEXPAND, 5 );
278 
279 
280  m_HPGLOptionsSizer->Add( bSizerHPGL_options, 1, wxEXPAND, 5 );
281 
282 
283  m_PlotOptionsSizer->Add( m_HPGLOptionsSizer, 0, wxALL|wxEXPAND, 3 );
284 
285  m_PSOptionsSizer = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("Postscript Options:") ), wxVERTICAL );
286 
287  wxBoxSizer* bSizer17;
288  bSizer17 = new wxBoxSizer( wxHORIZONTAL );
289 
290  wxBoxSizer* bSizer18;
291  bSizer18 = new wxBoxSizer( wxVERTICAL );
292 
293  m_staticText7 = new wxStaticText( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, _("X scale:"), wxDefaultPosition, wxDefaultSize, 0 );
294  m_staticText7->Wrap( -1 );
295  bSizer18->Add( m_staticText7, 0, wxRIGHT|wxLEFT, 5 );
296 
297  m_fineAdjustXscaleOpt = new wxTextCtrl( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
298  m_fineAdjustXscaleOpt->SetToolTip( _("Set global X scale adjust for exact scale postscript output.") );
299 
300  bSizer18->Add( m_fineAdjustXscaleOpt, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
301 
302 
303  bSizer17->Add( bSizer18, 1, wxEXPAND, 5 );
304 
305  wxBoxSizer* bSizer19;
306  bSizer19 = new wxBoxSizer( wxVERTICAL );
307 
308  m_staticText8 = new wxStaticText( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, _("Y scale:"), wxDefaultPosition, wxDefaultSize, 0 );
309  m_staticText8->Wrap( -1 );
310  bSizer19->Add( m_staticText8, 0, wxRIGHT|wxLEFT, 5 );
311 
312  m_fineAdjustYscaleOpt = new wxTextCtrl( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
313  m_fineAdjustYscaleOpt->SetToolTip( _("Set global Y scale adjust for exact scale postscript output.") );
314 
315  bSizer19->Add( m_fineAdjustYscaleOpt, 0, wxEXPAND|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
316 
317 
318  bSizer17->Add( bSizer19, 1, wxEXPAND, 5 );
319 
320  wxBoxSizer* bSizer191;
321  bSizer191 = new wxBoxSizer( wxVERTICAL );
322 
323  m_textPSFineAdjustWidth = new wxStaticText( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, _("Width correction:"), wxDefaultPosition, wxDefaultSize, 0 );
324  m_textPSFineAdjustWidth->Wrap( -1 );
325  bSizer191->Add( m_textPSFineAdjustWidth, 0, wxRIGHT|wxLEFT, 5 );
326 
327  m_PSFineAdjustWidthOpt = new wxTextCtrl( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
328  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.") );
329 
330  bSizer191->Add( m_PSFineAdjustWidthOpt, 0, wxBOTTOM|wxEXPAND|wxLEFT|wxRIGHT, 5 );
331 
332 
333  bSizer17->Add( bSizer191, 1, wxEXPAND, 5 );
334 
335 
336  m_PSOptionsSizer->Add( bSizer17, 1, wxEXPAND, 5 );
337 
338  m_forcePSA4OutputOpt = new wxCheckBox( m_PSOptionsSizer->GetStaticBox(), wxID_ANY, _("Force A4 output"), wxDefaultPosition, wxDefaultSize, 0 );
339  m_PSOptionsSizer->Add( m_forcePSA4OutputOpt, 0, wxALL, 2 );
340 
341 
342  m_PlotOptionsSizer->Add( m_PSOptionsSizer, 0, wxALL|wxEXPAND, 3 );
343 
344  m_SizerDXF_options = new wxStaticBoxSizer( new wxStaticBox( this, wxID_ANY, _("DXF options:") ), wxVERTICAL );
345 
346  m_DXF_plotModeOpt = new wxCheckBox( m_SizerDXF_options->GetStaticBox(), wxID_ANY, _("Plot all layers in outline (polygon) mode"), wxDefaultPosition, wxDefaultSize, 0 );
347  m_DXF_plotModeOpt->SetValue(true);
348  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)") );
349 
350  m_SizerDXF_options->Add( m_DXF_plotModeOpt, 0, wxALL, 2 );
351 
352  m_DXF_plotTextStrokeFontOpt = new wxCheckBox( m_SizerDXF_options->GetStaticBox(), wxID_ANY, _("Use Pcbnew font to plot texts"), wxDefaultPosition, wxDefaultSize, 0 );
353  m_DXF_plotTextStrokeFontOpt->SetToolTip( _("Check to use Pcbnew stroke font\nUncheck to plot oneline ASCII texts as editable text (using DXF font)") );
354 
355  m_SizerDXF_options->Add( m_DXF_plotTextStrokeFontOpt, 0, wxALL, 2 );
356 
357 
358  m_PlotOptionsSizer->Add( m_SizerDXF_options, 0, wxEXPAND, 5 );
359 
360 
361  bmiddleSizer->Add( m_PlotOptionsSizer, 0, 0, 5 );
362 
363 
364  m_MainSizer->Add( bmiddleSizer, 0, wxEXPAND|wxLEFT|wxRIGHT|wxTOP, 8 );
365 
366  wxBoxSizer* sbSizerMsg;
367  sbSizerMsg = new wxBoxSizer( wxVERTICAL );
368 
369  m_messagesPanel = new WX_HTML_REPORT_PANEL( this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxTAB_TRAVERSAL );
370  m_messagesPanel->SetMinSize( wxSize( -300,150 ) );
371 
372  sbSizerMsg->Add( m_messagesPanel, 1, wxEXPAND | wxALL, 5 );
373 
374 
375  m_MainSizer->Add( sbSizerMsg, 1, wxEXPAND, 5 );
376 
377  wxBoxSizer* bSizerButtons;
378  bSizerButtons = new wxBoxSizer( wxHORIZONTAL );
379 
380  m_buttonDRC = new wxButton( this, wxID_ANY, _("Run DRC..."), wxDefaultPosition, wxDefaultSize, 0 );
381  bSizerButtons->Add( m_buttonDRC, 0, wxALL, 5 );
382 
383 
384  bSizerButtons->Add( 10, 0, 1, wxEXPAND, 5 );
385 
386  m_plotButton = new wxButton( this, wxID_ANY, _("Plot"), wxDefaultPosition, wxDefaultSize, 0 );
387  m_plotButton->SetDefault();
388  bSizerButtons->Add( m_plotButton, 0, wxALL, 5 );
389 
390  m_buttonDrill = new wxButton( this, ID_CREATE_DRILL_FILE, _("Generate Drill File..."), wxDefaultPosition, wxDefaultSize, 0 );
391  bSizerButtons->Add( m_buttonDrill, 0, wxALL, 5 );
392 
393  m_buttonQuit = new wxButton( this, wxID_CANCEL, _("Close"), wxDefaultPosition, wxDefaultSize, 0 );
394  bSizerButtons->Add( m_buttonQuit, 0, wxALL, 5 );
395 
396 
397  m_MainSizer->Add( bSizerButtons, 0, wxALIGN_RIGHT|wxBOTTOM|wxLEFT|wxRIGHT|wxEXPAND, 5 );
398 
399 
400  this->SetSizer( m_MainSizer );
401  this->Layout();
402  m_MainSizer->Fit( this );
403  m_popMenu = new wxMenu();
404  wxMenuItem* m_menuItem1;
405  m_menuItem1 = new wxMenuItem( m_popMenu, ID_LAYER_FAB, wxString( _("Select Fab Layers") ) , wxEmptyString, wxITEM_NORMAL );
406  m_popMenu->Append( m_menuItem1 );
407 
408  wxMenuItem* m_menuItem2;
409  m_menuItem2 = new wxMenuItem( m_popMenu, ID_SELECT_COPPER_LAYERS, wxString( _("Select all Copper Layers") ) , wxEmptyString, wxITEM_NORMAL );
410  m_popMenu->Append( m_menuItem2 );
411 
412  wxMenuItem* m_menuItem3;
413  m_menuItem3 = new wxMenuItem( m_popMenu, ID_DESELECT_COPPER_LAYERS, wxString( _("Deselect all Copper Layers") ) , wxEmptyString, wxITEM_NORMAL );
414  m_popMenu->Append( m_menuItem3 );
415 
416  wxMenuItem* m_menuItem4;
417  m_menuItem4 = new wxMenuItem( m_popMenu, ID_SELECT_ALL_LAYERS, wxString( _("Select all Layers") ) , wxEmptyString, wxITEM_NORMAL );
418  m_popMenu->Append( m_menuItem4 );
419 
420  wxMenuItem* m_menuItem5;
421  m_menuItem5 = new wxMenuItem( m_popMenu, ID_DESELECT_ALL_LAYERS, wxString( _("Deselect all Layers") ) , wxEmptyString, wxITEM_NORMAL );
422  m_popMenu->Append( m_menuItem5 );
423 
424  this->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( DIALOG_PLOT_BASE::DIALOG_PLOT_BASEOnContextMenu ), NULL, this );
425 
426 
427  this->Centre( wxBOTH );
428 
429  // Connect Events
430  this->Connect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_PLOT_BASE::OnClose ) );
431  this->Connect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( DIALOG_PLOT_BASE::OnInitDialog ) );
432  this->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( DIALOG_PLOT_BASE::OnRightClick ) );
433  m_plotFormatOpt->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::SetPlotFormat ), NULL, this );
434  m_browseButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnOutputDirectoryBrowseClicked ), NULL, this );
435  m_layerCheckListBox->Connect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( DIALOG_PLOT_BASE::OnRightClick ), NULL, this );
436  m_scaleOpt->Connect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnSetScaleOpt ), NULL, this );
437  m_useGerberX2Attributes->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnGerberX2Checked ), NULL, this );
438  m_DXF_plotModeOpt->Connect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnChangeDXFPlotMode ), NULL, this );
439  m_buttonDRC->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::onRunDRC ), NULL, this );
440  m_plotButton->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::Plot ), NULL, this );
441  m_buttonDrill->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::CreateDrillFile ), NULL, this );
442  m_buttonQuit->Connect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnQuit ), NULL, this );
443  this->Connect( m_menuItem1->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
444  this->Connect( m_menuItem2->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
445  this->Connect( m_menuItem3->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
446  this->Connect( m_menuItem4->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
447  this->Connect( m_menuItem5->GetId(), wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
448 }
449 
451 {
452  // Disconnect Events
453  this->Disconnect( wxEVT_CLOSE_WINDOW, wxCloseEventHandler( DIALOG_PLOT_BASE::OnClose ) );
454  this->Disconnect( wxEVT_INIT_DIALOG, wxInitDialogEventHandler( DIALOG_PLOT_BASE::OnInitDialog ) );
455  this->Disconnect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( DIALOG_PLOT_BASE::OnRightClick ) );
456  m_plotFormatOpt->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::SetPlotFormat ), NULL, this );
457  m_browseButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnOutputDirectoryBrowseClicked ), NULL, this );
458  m_layerCheckListBox->Disconnect( wxEVT_RIGHT_DOWN, wxMouseEventHandler( DIALOG_PLOT_BASE::OnRightClick ), NULL, this );
459  m_scaleOpt->Disconnect( wxEVT_COMMAND_CHOICE_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnSetScaleOpt ), NULL, this );
460  m_useGerberX2Attributes->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnGerberX2Checked ), NULL, this );
461  m_DXF_plotModeOpt->Disconnect( wxEVT_COMMAND_CHECKBOX_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnChangeDXFPlotMode ), NULL, this );
462  m_buttonDRC->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::onRunDRC ), NULL, this );
463  m_plotButton->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::Plot ), NULL, this );
464  m_buttonDrill->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::CreateDrillFile ), NULL, this );
465  m_buttonQuit->Disconnect( wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnQuit ), NULL, this );
466  this->Disconnect( ID_LAYER_FAB, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
467  this->Disconnect( ID_SELECT_COPPER_LAYERS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
468  this->Disconnect( ID_DESELECT_COPPER_LAYERS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
469  this->Disconnect( ID_SELECT_ALL_LAYERS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
470  this->Disconnect( ID_DESELECT_ALL_LAYERS, wxEVT_COMMAND_MENU_SELECTED, wxCommandEventHandler( DIALOG_PLOT_BASE::OnPopUpLayers ) );
471 
472  delete m_popMenu;
473 }
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)
virtual void OnSetScaleOpt(wxCommandEvent &event)
virtual void CreateDrillFile(wxCommandEvent &event)
wxButton * m_plotButton
wxStaticText * m_SolderMaskMarginCurrValue
wxStaticText * m_textPenSize
wxCheckBox * m_plotPSNegativeOpt
wxRadioBox * m_rbGerberFormat
wxCheckBox * m_excludeEdgeLayerOpt
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)
wxChoice * m_plotFormatOpt
virtual void OnChangeDXFPlotMode(wxCommandEvent &event)
wxStaticBoxSizer * m_SizerDXF_options
wxCheckBox * m_useGerberX2Attributes
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)
wxButton * m_buttonDrill
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
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
wxButton * m_buttonQuit
wxBoxSizer * m_PlotOptionsSizer
wxStaticText * m_solderMaskMinWidthLabel
wxStaticText * m_SolderMaskMarginLabel
Class WX_HTML_REPORT_PANEL.