12PANEL_SETUP_MASK_AND_PASTE_BASE::PANEL_SETUP_MASK_AND_PASTE_BASE( wxWindow* parent, wxWindowID
id,
const wxPoint& pos,
const wxSize& size,
long style,
const wxString&
name ) : wxPanel( parent, id, pos, size, style,
name )
14 wxBoxSizer* bMainSizer;
15 bMainSizer =
new wxBoxSizer( wxVERTICAL );
18 bSizer3 =
new wxBoxSizer( wxVERTICAL );
20 wxBoxSizer* bMessages;
21 bMessages =
new wxBoxSizer( wxHORIZONTAL );
24 bMessages->Add( 4, 0, 0, wxEXPAND, 5 );
26 m_bitmapWarning =
new wxStaticBitmap(
this, wxID_ANY, wxArtProvider::GetBitmap( wxART_WARNING, wxART_OTHER ), wxDefaultPosition, wxDefaultSize, 0 );
27 bMessages->Add(
m_bitmapWarning, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM|wxRIGHT, 5 );
30 bSizer4 =
new wxBoxSizer( wxVERTICAL );
32 m_staticTextInfoMaskMinWidth =
new wxStaticText(
this, wxID_ANY,
_(
"Use your board manufacturer's recommendations for solder mask expansion and minimum web width."), wxDefaultPosition, wxDefaultSize, 0 );
36 m_staticTextInfoMaskMinWidth1 =
new wxStaticText(
this, wxID_ANY,
_(
"If none are provided, setting the values to zero is suggested."), wxDefaultPosition, wxDefaultSize, 0 );
41 bMessages->Add( bSizer4, 1, wxEXPAND|wxLEFT, 5 );
44 bSizer3->Add( bMessages, 0, wxEXPAND|wxTOP|wxBOTTOM, 10 );
46 m_staticline1 =
new wxStaticLine(
this, wxID_ANY, wxDefaultPosition, wxDefaultSize, wxLI_HORIZONTAL );
49 wxGridBagSizer* gbSizer1;
50 gbSizer1 =
new wxGridBagSizer( 5, 0 );
51 gbSizer1->SetFlexibleDirection( wxBOTH );
52 gbSizer1->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
54 m_maskMarginLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Solder mask expansion:"), wxDefaultPosition, wxDefaultSize, 0 );
56 m_maskMarginLabel->SetToolTip(
_(
"Global clearance between pads and the solder mask.\nThis value can be superseded by local values for a footprint or a pad.") );
58 gbSizer1->Add(
m_maskMarginLabel, wxGBPosition( 0, 0 ), wxGBSpan( 1, 1 ), wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
60 m_maskMarginCtrl =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
61 m_maskMarginCtrl->SetToolTip(
_(
"Positive clearance means area bigger than the pad (usual for solder mask clearance).") );
63 gbSizer1->Add(
m_maskMarginCtrl, wxGBPosition( 0, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
65 m_maskMarginUnits =
new wxStaticText(
this, wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
67 gbSizer1->Add(
m_maskMarginUnits, wxGBPosition( 0, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
69 m_maskMinWidthLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Solder mask minimum web width:"), wxDefaultPosition, wxDefaultSize, 0 );
71 m_maskMinWidthLabel->SetToolTip(
_(
"Min. dist between 2 pad areas.\nTwo pad areas nearer than this value will be merged during plotting.\nThis parameter is only used to plot solder mask layers.\nLeave at 0 unless you know what you are doing.") );
73 gbSizer1->Add(
m_maskMinWidthLabel, wxGBPosition( 1, 0 ), wxGBSpan( 1, 1 ), wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
75 m_maskMinWidthCtrl =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
76 m_maskMinWidthCtrl->SetToolTip(
_(
"Minimum distance between openings in the solder mask. Pad openings closer than this distance will be plotted as a single opening.") );
78 gbSizer1->Add(
m_maskMinWidthCtrl, wxGBPosition( 1, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
80 m_maskMinWidthUnits =
new wxStaticText(
this, wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
82 gbSizer1->Add(
m_maskMinWidthUnits, wxGBPosition( 1, 2 ), wxGBSpan( 1, 1 ), wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
84 m_maskToCopperClearanceLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Solder mask to copper clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
95 m_allowBridges =
new wxCheckBox(
this, wxID_ANY,
_(
"Allow bridged solder mask apertures between pads within footprints"), wxDefaultPosition, wxDefaultSize, 0 );
96 gbSizer1->Add(
m_allowBridges, wxGBPosition( 3, 0 ), wxGBSpan( 1, 3 ), wxALL, 5 );
98 m_tentVias =
new wxCheckBox(
this, wxID_ANY,
_(
"Tent vias"), wxDefaultPosition, wxDefaultSize, 0 );
99 m_tentVias->SetToolTip(
_(
"Tented vias: not plotted on soldermask layer\nNot tented: vias are plotted on soldermask layer\n(Solder mask is a negative layer)") );
101 gbSizer1->Add(
m_tentVias, wxGBPosition( 4, 0 ), wxGBSpan( 1, 3 ), wxBOTTOM|wxRIGHT|wxLEFT, 5 );
103 m_pasteMarginLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Solder paste absolute clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
105 m_pasteMarginLabel->SetToolTip(
_(
"Global clearance between pads and the solder paste.\nThis value can be superseded by local values for a footprint or a pad.\nFinal clearance value is the sum of this value and the clearance value ratio.") );
107 gbSizer1->Add(
m_pasteMarginLabel, wxGBPosition( 6, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
109 m_pasteMarginCtrl =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
110 m_pasteMarginCtrl->SetToolTip(
_(
"Negative clearance means area smaller than the pad (usual for solder paste clearance).") );
112 gbSizer1->Add(
m_pasteMarginCtrl, wxGBPosition( 6, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
114 m_pasteMarginUnits =
new wxStaticText(
this, wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
116 gbSizer1->Add(
m_pasteMarginUnits, wxGBPosition( 6, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
118 m_pasteMarginRatioLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Solder paste relative clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
120 m_pasteMarginRatioLabel->SetToolTip(
_(
"Global clearance ratio in percent between pads and the solder paste.\nA value of 10 means the clearance value is 10 percent of the pad size.\nThis value can be superseded by local values for a footprint or a pad.\nFinal clearance value is the sum of this value and the clearance value.") );
122 gbSizer1->Add(
m_pasteMarginRatioLabel, wxGBPosition( 7, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
124 m_pasteMarginRatioCtrl =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
127 gbSizer1->Add(
m_pasteMarginRatioCtrl, wxGBPosition( 7, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
131 gbSizer1->Add(
m_pasteMarginRatioUnits, wxGBPosition( 7, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
134 bSizer3->Add( gbSizer1, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
136 m_staticTextInfoPaste =
new wxStaticText(
this, wxID_ANY,
_(
"Note: Solder paste clearances (absolute and relative) are added to determine the final clearance."), wxDefaultPosition, wxDefaultSize, 0 );
141 bMainSizer->Add( bSizer3, 1, wxRIGHT|wxLEFT|wxEXPAND, 5 );
144 this->SetSizer( bMainSizer );
146 bMainSizer->Fit(
this );
wxStaticText * m_staticTextInfoMaskMinWidth
wxTextCtrl * m_maskToCopperClearanceCtrl
~PANEL_SETUP_MASK_AND_PASTE_BASE()
wxStaticText * m_maskMarginLabel
wxTextCtrl * m_maskMarginCtrl
wxCheckBox * m_allowBridges
wxStaticLine * m_staticline1
wxStaticText * m_maskToCopperClearanceLabel
PANEL_SETUP_MASK_AND_PASTE_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxTAB_TRAVERSAL, const wxString &name=wxEmptyString)
wxTextCtrl * m_pasteMarginRatioCtrl
wxStaticText * m_pasteMarginUnits
wxStaticBitmap * m_bitmapWarning
wxStaticText * m_maskToCopperClearanceUnits
wxStaticText * m_maskMarginUnits
wxStaticText * m_maskMinWidthUnits
wxTextCtrl * m_pasteMarginCtrl
wxStaticText * m_maskMinWidthLabel
wxStaticText * m_pasteMarginRatioUnits
wxStaticText * m_pasteMarginRatioLabel
wxStaticText * m_pasteMarginLabel
wxTextCtrl * m_maskMinWidthCtrl
wxStaticText * m_staticTextInfoPaste
wxStaticText * m_staticTextInfoMaskMinWidth1