14DIALOG_TRACK_VIA_PROPERTIES_BASE::DIALOG_TRACK_VIA_PROPERTIES_BASE( wxWindow* parent, wxWindowID
id,
const wxString& title,
const wxPoint& pos,
const wxSize& size,
long style ) :
DIALOG_SHIM( parent, id, title, pos, size, style )
16 this->SetSizeHints( wxSize( -1,-1 ), wxDefaultSize );
20 m_sbCommonSizer =
new wxStaticBoxSizer(
new wxStaticBox(
this, wxID_ANY,
_(
"Common") ), wxVERTICAL );
22 wxBoxSizer* bSizerNetWidgets;
23 bSizerNetWidgets =
new wxBoxSizer( wxHORIZONTAL );
27 bSizerNetWidgets->Add(
m_netSelectorLabel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
30 bSizerNetWidgets->Add(
m_netSelector, 1, wxBOTTOM|wxLEFT|wxRIGHT|wxEXPAND, 5 );
33 bSizerNetWidgets->Add( 20, 0, 0, wxEXPAND, 5 );
35 m_viaNotFree =
new wxCheckBox(
m_sbCommonSizer->GetStaticBox(), wxID_ANY,
_(
"Automatically update via nets"), wxDefaultPosition, wxDefaultSize, wxCHK_3STATE );
36 m_viaNotFree->SetToolTip(
_(
"Automatically change the net of this via when the pads or zones it touches are changed") );
38 bSizerNetWidgets->Add(
m_viaNotFree, 0, wxBOTTOM|wxRIGHT|wxLEFT|wxALIGN_CENTER_VERTICAL, 5 );
52 m_sbTrackSizer =
new wxStaticBoxSizer(
new wxStaticBox(
this, wxID_ANY,
_(
"Tracks") ), wxHORIZONTAL );
54 wxFlexGridSizer* fgTrackLeftGridSizer;
55 fgTrackLeftGridSizer =
new wxFlexGridSizer( 7, 3, 3, 5 );
56 fgTrackLeftGridSizer->AddGrowableCol( 1 );
57 fgTrackLeftGridSizer->SetFlexibleDirection( wxBOTH );
58 fgTrackLeftGridSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
69 fgTrackLeftGridSizer->Add(
m_TrackStartXUnit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 3 );
73 fgTrackLeftGridSizer->Add(
m_TrackStartYLabel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM, 5 );
76 fgTrackLeftGridSizer->Add(
m_TrackStartYCtrl, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxEXPAND, 5 );
80 fgTrackLeftGridSizer->Add(
m_TrackStartYUnit, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
84 fgTrackLeftGridSizer->Add(
m_TrackEndXLabel, 0, wxALIGN_CENTER_VERTICAL, 5 );
87 fgTrackLeftGridSizer->Add(
m_TrackEndXCtrl, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
91 fgTrackLeftGridSizer->Add(
m_TrackEndXUnit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
95 fgTrackLeftGridSizer->Add(
m_TrackEndYLabel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM, 8 );
98 fgTrackLeftGridSizer->Add(
m_TrackEndYCtrl, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxEXPAND, 8 );
102 fgTrackLeftGridSizer->Add(
m_TrackEndYUnit, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM, 8 );
108 wxArrayString m_DesignRuleWidthsCtrlChoices;
122 fgTrackLeftGridSizer->Add(
m_TrackWidthCtrl, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
126 fgTrackLeftGridSizer->Add(
m_TrackWidthUnit, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxRIGHT, 5 );
129 fgTrackLeftGridSizer->Add( 0, 0, 1, wxEXPAND, 5 );
135 fgTrackLeftGridSizer->Add( 0, 0, 1, wxEXPAND, 5 );
138 m_sbTrackSizer->Add( fgTrackLeftGridSizer, 5, wxEXPAND|wxRIGHT|wxLEFT, 5 );
143 wxFlexGridSizer* fgTrackRightSizer;
144 fgTrackRightSizer =
new wxFlexGridSizer( 1, 3, 3, 5 );
145 fgTrackRightSizer->AddGrowableCol( 1 );
146 fgTrackRightSizer->SetFlexibleDirection( wxBOTH );
147 fgTrackRightSizer->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
151 fgTrackRightSizer->Add(
m_TrackLayerLabel, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 25 );
154 fgTrackRightSizer->Add(
m_TrackLayerCtrl, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
157 m_sbTrackSizer->Add( fgTrackRightSizer, 4, wxEXPAND|wxRIGHT, 10 );
162 m_sbViaSizer =
new wxStaticBoxSizer(
new wxStaticBox(
this, wxID_ANY,
_(
"Vias") ), wxHORIZONTAL );
164 wxFlexGridSizer* viaLeftColumn;
165 viaLeftColumn =
new wxFlexGridSizer( 6, 3, 4, 5 );
166 viaLeftColumn->AddGrowableCol( 1 );
167 viaLeftColumn->SetFlexibleDirection( wxBOTH );
168 viaLeftColumn->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
170 m_ViaXLabel =
new wxStaticText(
m_sbViaSizer->GetStaticBox(), wxID_ANY,
_(
"Position X:"), wxDefaultPosition, wxDefaultSize, 0 );
172 viaLeftColumn->Add(
m_ViaXLabel, 0, wxALIGN_CENTER_VERTICAL, 3 );
174 m_ViaXCtrl =
new wxTextCtrl(
m_sbViaSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
175 viaLeftColumn->Add(
m_ViaXCtrl, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL, 3 );
177 m_ViaXUnit =
new wxStaticText(
m_sbViaSizer->GetStaticBox(), wxID_ANY,
_(
"Unit"), wxDefaultPosition, wxDefaultSize, 0 );
179 viaLeftColumn->Add(
m_ViaXUnit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 3 );
181 m_ViaYLabel =
new wxStaticText(
m_sbViaSizer->GetStaticBox(), wxID_ANY,
_(
"Position Y:"), wxDefaultPosition, wxDefaultSize, 0 );
183 viaLeftColumn->Add(
m_ViaYLabel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM, 5 );
185 m_ViaYCtrl =
new wxTextCtrl(
m_sbViaSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
186 viaLeftColumn->Add(
m_ViaYCtrl, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxEXPAND, 5 );
188 m_ViaYUnit =
new wxStaticText(
m_sbViaSizer->GetStaticBox(), wxID_ANY,
_(
"Unit"), wxDefaultPosition, wxDefaultSize, 0 );
190 viaLeftColumn->Add(
m_ViaYUnit, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT, 5 );
194 viaLeftColumn->Add(
m_DesignRuleVias, 0, wxALIGN_CENTER_VERTICAL|wxTOP, 5 );
196 wxArrayString m_DesignRuleViasCtrlChoices;
220 m_ViaDrillCtrl =
new wxTextCtrl(
m_sbViaSizer->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
221 viaLeftColumn->Add(
m_ViaDrillCtrl, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
225 viaLeftColumn->Add(
m_ViaDrillUnit, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
228 viaLeftColumn->Add( 0, 0, 1, wxEXPAND, 5 );
230 m_viaNetclass =
new wxCheckBox(
m_sbViaSizer->GetStaticBox(), wxID_ANY,
_(
"Use net class sizes"), wxDefaultPosition, wxDefaultSize, 0 );
231 viaLeftColumn->Add(
m_viaNetclass, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
234 viaLeftColumn->Add( 0, 0, 1, wxEXPAND, 5 );
237 m_sbViaSizer->Add( viaLeftColumn, 5, wxEXPAND|wxRIGHT|wxLEFT, 5 );
240 m_sbViaSizer->Add( 0, 0, 0, wxEXPAND|wxRIGHT|wxLEFT, 15 );
242 wxBoxSizer* viaRightColumn;
243 viaRightColumn =
new wxBoxSizer( wxVERTICAL );
245 wxFlexGridSizer* fgSizer4;
246 fgSizer4 =
new wxFlexGridSizer( 0, 2, 5, 0 );
247 fgSizer4->AddGrowableCol( 1 );
248 fgSizer4->SetFlexibleDirection( wxBOTH );
249 fgSizer4->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
255 wxString m_ViaTypeChoiceChoices[] = {
_(
"Through"),
_(
"Micro"),
_(
"Blind/buried") };
256 int m_ViaTypeChoiceNChoices =
sizeof( m_ViaTypeChoiceChoices ) /
sizeof( wxString );
257 m_ViaTypeChoice =
new wxChoice(
m_sbViaSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_ViaTypeChoiceNChoices, m_ViaTypeChoiceChoices, 0 );
261 fgSizer4->Add(
m_ViaTypeChoice, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
268 fgSizer4->Add(
m_ViaStartLayer, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
275 fgSizer4->Add(
m_ViaEndLayer, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND, 5 );
278 viaRightColumn->Add( fgSizer4, 0, wxBOTTOM|wxEXPAND|wxRIGHT, 5 );
284 wxString m_annularRingsCtrlChoices[] = {
_(
"All copper layers"),
_(
"Start, end, and connected layers"),
_(
"Connected layers only") };
285 int m_annularRingsCtrlNChoices =
sizeof( m_annularRingsCtrlChoices ) /
sizeof( wxString );
286 m_annularRingsCtrl =
new wxChoice(
m_sbViaSizer->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_annularRingsCtrlNChoices, m_annularRingsCtrlChoices, 0 );
291 m_sbViaSizer->Add( viaRightColumn, 4, wxEXPAND|wxRIGHT, 5 );
310 this->Centre( wxBOTH );
Dialog helper object to sit in the inheritance tree between wxDialog and any class written by wxFormB...
wxStdDialogButtonSizer * m_StdButtons
wxStaticText * m_annularRingsLabel
virtual void onViaEdit(wxCommandEvent &event)
wxStaticText * m_TrackEndYLabel
wxStaticText * m_ViaYLabel
wxStaticText * m_ViaEndLayerLabel1
PCB_LAYER_BOX_SELECTOR * m_ViaStartLayer
wxCheckBox * m_lockedCbox
wxStaticText * m_ViaXUnit
wxStaticBoxSizer * m_sbCommonSizer
wxStaticText * m_TrackStartYUnit
wxStaticText * m_TrackEndXLabel
wxTextCtrl * m_TrackStartXCtrl
wxChoice * m_DesignRuleViasCtrl
virtual void onTrackNetclassCheck(wxCommandEvent &event)
wxCheckBox * m_trackNetclass
wxStaticText * m_TrackWidthLabel
DIALOG_TRACK_VIA_PROPERTIES_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Track & Via Properties"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxSYSTEM_MENU)
virtual void onWidthEdit(wxCommandEvent &event)
wxStaticText * m_DesignRuleVias
PCB_LAYER_BOX_SELECTOR * m_ViaEndLayer
~DIALOG_TRACK_VIA_PROPERTIES_BASE()
wxStaticBoxSizer * m_sbTrackSizer
wxChoice * m_annularRingsCtrl
wxStaticBoxSizer * m_sbViaSizer
virtual void onWidthSelect(wxCommandEvent &event)
wxCheckBox * m_viaNetclass
wxStaticText * m_ViaDrillUnit
wxButton * m_StdButtonsCancel
wxStaticText * m_TrackStartXLabel
PCB_LAYER_BOX_SELECTOR * m_TrackLayerCtrl
virtual void onViaNotFreeClicked(wxCommandEvent &event)
wxStaticText * m_TrackStartYLabel
wxButton * m_StdButtonsOK
wxStaticText * m_DesignRuleViasUnit
wxStaticText * m_ViaDiameterUnit
wxTextCtrl * m_TrackEndXCtrl
wxStaticLine * m_staticline1
wxStaticText * m_ViaDrillLabel
wxStaticText * m_ViaYUnit
wxCheckBox * m_viaNotFree
wxStaticText * m_TrackWidthUnit
wxChoice * m_ViaTypeChoice
wxStaticText * m_ViaTypeLabel
wxTextCtrl * m_ViaDiameterCtrl
wxStaticText * m_ViaXLabel
virtual void onViaSelect(wxCommandEvent &event)
wxStaticText * m_DesignRuleWidths
wxTextCtrl * m_ViaDrillCtrl
wxStaticText * m_ViaStartLayerLabel
wxStaticText * m_TrackEndYUnit
wxStaticText * m_netSelectorLabel
wxTextCtrl * m_TrackEndYCtrl
virtual void onViaNetclassCheck(wxCommandEvent &event)
wxStaticText * m_TrackEndXUnit
wxTextCtrl * m_TrackStartYCtrl
wxChoice * m_DesignRuleWidthsCtrl
wxStaticText * m_ViaDiameterLabel
wxTextCtrl * m_TrackWidthCtrl
wxStaticText * m_TrackStartXUnit
wxStaticText * m_DesignRuleWidthsUnits
NET_SELECTOR * m_netSelector
wxStaticText * m_TrackLayerLabel
Class to display a pcb layer list in a wxBitmapComboBox.