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 );
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 );
99 bSizer6 =
new wxBoxSizer( wxHORIZONTAL );
101 m_stTenting =
new wxStaticText(
this, wxID_ANY,
_(
"Tent vias:"), wxDefaultPosition, wxDefaultSize, 0 );
103 bSizer6->Add(
m_stTenting, 0, wxALIGN_CENTER_VERTICAL|wxALL|wxLEFT|wxRIGHT, 5 );
105 m_tentViasFront =
new wxCheckBox(
this, wxID_ANY,
_(
"Front"), wxDefaultPosition, wxDefaultSize, 0 );
106 m_tentViasFront->SetToolTip(
_(
"Tented vias: not plotted on soldermask layer\nNot tented: vias are plotted on soldermask layer\n(Solder mask is a negative layer)") );
110 m_tentViasBack =
new wxCheckBox(
this, wxID_ANY,
_(
"Back"), wxDefaultPosition, wxDefaultSize, 0 );
111 m_tentViasBack->SetToolTip(
_(
"Tented vias: not plotted on soldermask layer\nNot tented: vias are plotted on soldermask layer\n(Solder mask is a negative layer)") );
116 gbSizer1->Add( bSizer6, wxGBPosition( 4, 0 ), wxGBSpan( 1, 3 ), wxEXPAND, 5 );
118 m_pasteMarginLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Solder paste absolute clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
120 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.") );
122 gbSizer1->Add(
m_pasteMarginLabel, wxGBPosition( 6, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
124 m_pasteMarginCtrl =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
125 m_pasteMarginCtrl->SetToolTip(
_(
"Negative clearance means area smaller than the pad (usual for solder paste clearance).") );
127 gbSizer1->Add(
m_pasteMarginCtrl, wxGBPosition( 6, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
129 m_pasteMarginUnits =
new wxStaticText(
this, wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
131 gbSizer1->Add(
m_pasteMarginUnits, wxGBPosition( 6, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
133 m_pasteMarginRatioLabel =
new wxStaticText(
this, wxID_ANY,
_(
"Solder paste relative clearance:"), wxDefaultPosition, wxDefaultSize, 0 );
135 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.") );
137 gbSizer1->Add(
m_pasteMarginRatioLabel, wxGBPosition( 7, 0 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
139 m_pasteMarginRatioCtrl =
new wxTextCtrl(
this, wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
142 gbSizer1->Add(
m_pasteMarginRatioCtrl, wxGBPosition( 7, 1 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL, 5 );
146 gbSizer1->Add(
m_pasteMarginRatioUnits, wxGBPosition( 7, 2 ), wxGBSpan( 1, 1 ), wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
149 bSizer3->Add( gbSizer1, 0, wxEXPAND|wxTOP|wxBOTTOM, 5 );
151 m_staticTextInfoPaste =
new wxStaticText(
this, wxID_ANY,
_(
"Note: Solder paste clearances (absolute and relative) are added to determine the final clearance."), wxDefaultPosition, wxDefaultSize, 0 );
156 bMainSizer->Add( bSizer3, 1, wxRIGHT|wxLEFT|wxEXPAND, 5 );
159 this->SetSizer( bMainSizer );
161 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
wxCheckBox * m_tentViasFront
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_stTenting
wxStaticText * m_pasteMarginRatioUnits
wxStaticText * m_pasteMarginRatioLabel
wxStaticText * m_pasteMarginLabel
wxCheckBox * m_tentViasBack
wxTextCtrl * m_maskMinWidthCtrl
wxStaticText * m_staticTextInfoPaste
wxStaticText * m_staticTextInfoMaskMinWidth1