14DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS_BASE::DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS_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( wxDefaultSize, wxDefaultSize );
18 wxBoxSizer* bMainSizer;
19 bMainSizer =
new wxBoxSizer( wxVERTICAL );
21 wxBoxSizer* bSizerTop;
22 bSizerTop =
new wxBoxSizer( wxHORIZONTAL );
24 wxStaticBoxSizer* sbScope;
25 sbScope =
new wxStaticBoxSizer(
new wxStaticBox(
this, wxID_ANY,
_(
"Scope") ), wxVERTICAL );
27 m_tracks =
new wxCheckBox( sbScope->GetStaticBox(), wxID_ANY,
_(
"Tracks"), wxDefaultPosition, wxDefaultSize, 0 );
29 sbScope->Add(
m_tracks, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
31 m_vias =
new wxCheckBox( sbScope->GetStaticBox(), wxID_ANY,
_(
"Vias"), wxDefaultPosition, wxDefaultSize, 0 );
33 sbScope->Add(
m_vias, 0, wxBOTTOM|wxRIGHT|wxLEFT, 5 );
36 bSizerTop->Add( sbScope, 1, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 10 );
38 wxStaticBoxSizer* sbFilters;
39 sbFilters =
new wxStaticBoxSizer(
new wxStaticBox(
this, wxID_ANY,
_(
"Filter Items") ), wxVERTICAL );
41 wxFlexGridSizer* fgSizer3;
42 fgSizer3 =
new wxFlexGridSizer( 0, 2, 3, 0 );
43 fgSizer3->AddGrowableCol( 1 );
44 fgSizer3->AddGrowableRow( 0 );
45 fgSizer3->AddGrowableRow( 1 );
46 fgSizer3->AddGrowableRow( 2 );
47 fgSizer3->AddGrowableRow( 3 );
48 fgSizer3->SetFlexibleDirection( wxBOTH );
49 fgSizer3->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_SPECIFIED );
51 m_netFilterOpt =
new wxCheckBox( sbFilters->GetStaticBox(), wxID_ANY,
_(
"Filter items by net:"), wxDefaultPosition, wxDefaultSize, 0 );
52 fgSizer3->Add(
m_netFilterOpt, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
55 fgSizer3->Add(
m_netFilter, 1, wxEXPAND|wxRIGHT, 5 );
57 m_netclassFilterOpt =
new wxCheckBox( sbFilters->GetStaticBox(), wxID_ANY,
_(
"Filter items by net class:"), wxDefaultPosition, wxDefaultSize, 0 );
60 wxArrayString m_netclassFilterChoices;
61 m_netclassFilter =
new wxChoice( sbFilters->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_netclassFilterChoices, 0 );
63 fgSizer3->Add(
m_netclassFilter, 0, wxALIGN_CENTER_VERTICAL|wxEXPAND|wxRIGHT, 5 );
66 fgSizer3->Add( 0, 7, 1, wxEXPAND, 5 );
69 fgSizer3->Add( 0, 0, 1, wxEXPAND, 5 );
71 m_layerFilterOpt =
new wxCheckBox( sbFilters->GetStaticBox(), wxID_ANY,
_(
"Filter items by layer:"), wxDefaultPosition, wxDefaultSize, 0 );
72 fgSizer3->Add(
m_layerFilterOpt, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
75 fgSizer3->Add(
m_layerFilter, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
78 fgSizer3->Add( 0, 7, 1, wxEXPAND, 5 );
81 fgSizer3->Add( 0, 0, 1, wxEXPAND, 5 );
83 m_filterByTrackWidth =
new wxCheckBox( sbFilters->GetStaticBox(), wxID_ANY,
_(
"Filter tracks by width:"), wxDefaultPosition, wxDefaultSize, 0 );
87 bSizer3 =
new wxBoxSizer( wxHORIZONTAL );
89 m_trackWidthFilterCtrl =
new wxTextCtrl( sbFilters->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
92 m_trackWidthFilterUnits =
new wxStaticText( sbFilters->GetStaticBox(), wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
97 fgSizer3->Add( bSizer3, 1, wxEXPAND, 5 );
99 m_filterByViaSize =
new wxCheckBox( sbFilters->GetStaticBox(), wxID_ANY,
_(
"Filter vias by size:"), wxDefaultPosition, wxDefaultSize, 0 );
100 fgSizer3->Add(
m_filterByViaSize, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
102 wxBoxSizer* bSizer31;
103 bSizer31 =
new wxBoxSizer( wxHORIZONTAL );
105 m_viaSizeFilterCtrl =
new wxTextCtrl( sbFilters->GetStaticBox(), wxID_ANY, wxEmptyString, wxDefaultPosition, wxDefaultSize, 0 );
108 m_viaSizeFilterUnits =
new wxStaticText( sbFilters->GetStaticBox(), wxID_ANY,
_(
"mm"), wxDefaultPosition, wxDefaultSize, 0 );
113 fgSizer3->Add( bSizer31, 1, wxEXPAND|wxALIGN_CENTER_VERTICAL, 5 );
116 sbFilters->Add( fgSizer3, 1, wxEXPAND|wxBOTTOM, 5 );
119 sbFilters->Add( 0, 5, 0, 0, 5 );
121 m_selectedItemsFilter =
new wxCheckBox( sbFilters->GetStaticBox(), wxID_ANY,
_(
"Selected items only"), wxDefaultPosition, wxDefaultSize, 0 );
125 bSizerTop->Add( sbFilters, 2, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 10 );
128 bMainSizer->Add( bSizerTop, 0, wxEXPAND, 5 );
130 wxStaticBoxSizer* sbAction;
131 sbAction =
new wxStaticBoxSizer(
new wxStaticBox(
this, wxID_ANY,
_(
"Action") ), wxVERTICAL );
137 wxFlexGridSizer* fgSizerTrackViaPopups;
138 fgSizerTrackViaPopups =
new wxFlexGridSizer( 3, 4, 0, 0 );
139 fgSizerTrackViaPopups->AddGrowableCol( 0 );
140 fgSizerTrackViaPopups->AddGrowableCol( 1 );
141 fgSizerTrackViaPopups->AddGrowableCol( 2 );
142 fgSizerTrackViaPopups->AddGrowableRow( 0 );
143 fgSizerTrackViaPopups->AddGrowableRow( 1 );
144 fgSizerTrackViaPopups->SetFlexibleDirection( wxBOTH );
145 fgSizerTrackViaPopups->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_NONE );
147 m_layerLabel =
new wxStaticText( sbAction->GetStaticBox(), wxID_ANY,
_(
"Layer:"), wxDefaultPosition, wxDefaultSize, 0 );
149 fgSizerTrackViaPopups->Add(
m_layerLabel, 0, wxALIGN_CENTER_VERTICAL|wxTOP|wxBOTTOM, 5 );
152 fgSizerTrackViaPopups->Add(
m_layerCtrl, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxALL, 5 );
155 fgSizerTrackViaPopups->Add( 0, 0, 1, wxEXPAND, 5 );
158 fgSizerTrackViaPopups->Add( 0, 0, 1, wxEXPAND, 5 );
160 m_trackWidthLabel =
new wxStaticText( sbAction->GetStaticBox(), wxID_ANY,
_(
"Track width:"), wxDefaultPosition, wxDefaultSize, 0 );
162 fgSizerTrackViaPopups->Add(
m_trackWidthLabel, 0, wxALIGN_CENTER_VERTICAL|wxBOTTOM, 5 );
164 wxArrayString m_trackWidthCtrlChoices;
165 m_trackWidthCtrl =
new wxChoice( sbAction->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_trackWidthCtrlChoices, 0 );
167 fgSizerTrackViaPopups->Add(
m_trackWidthCtrl, 4, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxBOTTOM|wxRIGHT|wxLEFT, 5 );
170 fgSizerTrackViaPopups->Add( 0, 0, 1, wxEXPAND, 5 );
173 fgSizerTrackViaPopups->Add( 0, 0, 1, wxEXPAND, 5 );
175 m_viaSizeLabel =
new wxStaticText( sbAction->GetStaticBox(), wxID_ANY,
_(
"Via size:"), wxDefaultPosition, wxDefaultSize, 0 );
177 fgSizerTrackViaPopups->Add(
m_viaSizeLabel, 0, wxALIGN_CENTER_VERTICAL|wxRIGHT, 5 );
179 wxArrayString m_viaSizesCtrlChoices;
180 m_viaSizesCtrl =
new wxChoice( sbAction->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_viaSizesCtrlChoices, 0 );
182 fgSizerTrackViaPopups->Add(
m_viaSizesCtrl, 0, wxEXPAND|wxALIGN_CENTER_VERTICAL|wxRIGHT|wxLEFT, 5 );
184 m_annularRingsLabel =
new wxStaticText( sbAction->GetStaticBox(), wxID_ANY,
_(
"Annular rings:"), wxDefaultPosition, wxDefaultSize, 0 );
188 wxString m_annularRingsCtrlChoices[] = {
_(
"All copper layers"),
_(
"Start, end, and connected layers"),
_(
"Connected layers only") };
189 int m_annularRingsCtrlNChoices =
sizeof( m_annularRingsCtrlChoices ) /
sizeof( wxString );
190 m_annularRingsCtrl =
new wxChoice( sbAction->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_annularRingsCtrlNChoices, m_annularRingsCtrlChoices, 0 );
192 fgSizerTrackViaPopups->Add(
m_annularRingsCtrl, 0, wxALIGN_CENTER_VERTICAL|wxLEFT, 5 );
195 sbAction->Add( fgSizerTrackViaPopups, 0, wxBOTTOM|wxEXPAND|wxLEFT, 25 );
201 bMainSizer->Add( sbAction, 1, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 10 );
212 bMainSizer->Add(
m_sdbSizer, 0, wxEXPAND|wxALL, 5 );
215 this->SetSizer( bMainSizer );
217 bMainSizer->Fit(
this );
PCB_LAYER_BOX_SELECTOR * m_layerCtrl
wxCheckBox * m_filterByTrackWidth
PCB_LAYER_BOX_SELECTOR * m_layerFilter
wxChoice * m_trackWidthCtrl
virtual void OnNetclassFilterSelect(wxCommandEvent &event)
wxButton * m_sdbSizerCancel
wxCheckBox * m_netclassFilterOpt
wxRadioButton * m_setToSpecifiedValues
wxButton * m_sdbSizerApply
wxCheckBox * m_filterByViaSize
wxStaticText * m_trackWidthLabel
wxChoice * m_netclassFilter
wxStaticText * m_layerLabel
wxStdDialogButtonSizer * m_sdbSizer
~DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS_BASE()
wxCheckBox * m_netFilterOpt
wxStaticText * m_viaSizeLabel
virtual void OnViaSizeText(wxCommandEvent &event)
wxStaticText * m_annularRingsLabel
wxChoice * m_viaSizesCtrl
wxStaticText * m_trackWidthFilterUnits
wxTextCtrl * m_trackWidthFilterCtrl
wxCheckBox * m_layerFilterOpt
wxChoice * m_annularRingsCtrl
wxCheckBox * m_selectedItemsFilter
virtual void OnTrackWidthText(wxCommandEvent &event)
wxTextCtrl * m_viaSizeFilterCtrl
NET_SELECTOR * m_netFilter
virtual void OnLayerFilterSelect(wxCommandEvent &event)
DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Set Track and Via Properties"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
wxStaticText * m_viaSizeFilterUnits
virtual void onActionButtonChange(wxCommandEvent &event)
wxRadioButton * m_setToDesignRuleValues
Dialog helper object to sit in the inheritance tree between wxDialog and any class written by wxFormB...
Class to display a pcb layer list in a wxBitmapComboBox.
#define ID_SPECIFIED_NET_TO_SPECIFIED_VALUES
#define ID_SPECIFIED_NET_TO_NETCLASS_VALUES