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, 4, 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, 0, 1, wxEXPAND|wxTOP|wxBOTTOM, 3 );
69 fgSizer3->Add( 0, 0, 1, wxEXPAND|wxTOP|wxBOTTOM, 3 );
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 );
77 m_selectedItemsFilter =
new wxCheckBox( sbFilters->GetStaticBox(), wxID_ANY,
_(
"Only include selected items"), wxDefaultPosition, wxDefaultSize, 0 );
81 sbFilters->Add( fgSizer3, 1, wxEXPAND|wxBOTTOM, 5 );
84 bSizerTop->Add( sbFilters, 2, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 10 );
87 bMainSizer->Add( bSizerTop, 0, wxEXPAND, 5 );
89 wxStaticBoxSizer* sbAction;
90 sbAction =
new wxStaticBoxSizer(
new wxStaticBox(
this, wxID_ANY,
_(
"Action") ), wxVERTICAL );
96 wxFlexGridSizer* fgSizerTrackViaPopups;
97 fgSizerTrackViaPopups =
new wxFlexGridSizer( 2, 3, 0, 0 );
98 fgSizerTrackViaPopups->AddGrowableCol( 0 );
99 fgSizerTrackViaPopups->AddGrowableCol( 1 );
100 fgSizerTrackViaPopups->AddGrowableCol( 2 );
101 fgSizerTrackViaPopups->SetFlexibleDirection( wxHORIZONTAL );
102 fgSizerTrackViaPopups->SetNonFlexibleGrowMode( wxFLEX_GROWMODE_NONE );
104 m_staticTextTrackWidth =
new wxStaticText( sbAction->GetStaticBox(), wxID_ANY,
_(
"Track Width"), wxDefaultPosition, wxDefaultSize, 0 );
108 m_staticTextViaSize =
new wxStaticText( sbAction->GetStaticBox(), wxID_ANY,
_(
"Via Size"), wxDefaultPosition, wxDefaultSize, 0 );
112 m_staticTextLayer =
new wxStaticText( sbAction->GetStaticBox(), wxID_ANY,
_(
"Layer"), wxDefaultPosition, wxDefaultSize, 0 );
116 wxArrayString m_trackWidthSelectBoxChoices;
117 m_trackWidthSelectBox =
new wxChoice( sbAction->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_trackWidthSelectBoxChoices, 0 );
121 wxArrayString m_viaSizesSelectBoxChoices;
122 m_viaSizesSelectBox =
new wxChoice( sbAction->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, m_viaSizesSelectBoxChoices, 0 );
127 fgSizerTrackViaPopups->Add(
m_layerBox, 0, wxRIGHT|wxLEFT, 3 );
130 sbAction->Add( fgSizerTrackViaPopups, 1, wxBOTTOM|wxEXPAND|wxLEFT, 5 );
135 m_netclassGrid =
new wxGrid( sbAction->GetStaticBox(), wxID_ANY, wxDefaultPosition, wxDefaultSize, wxBORDER_DEFAULT|wxVSCROLL );
154 m_netclassGrid->SetColLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
159 m_netclassGrid->SetRowLabelAlignment( wxALIGN_CENTER, wxALIGN_CENTER );
164 m_netclassGrid->SetDefaultCellBackgroundColour( wxSystemSettings::GetColour( wxSYS_COLOUR_BTNFACE ) );
165 m_netclassGrid->SetDefaultCellFont( wxFont( 11, wxFONTFAMILY_DEFAULT, wxFONTSTYLE_NORMAL, wxFONTWEIGHT_NORMAL,
false, wxEmptyString ) );
166 m_netclassGrid->SetDefaultCellAlignment( wxALIGN_LEFT, wxALIGN_CENTER );
170 sbAction->Add( 0, 0, 1, wxEXPAND|wxTOP, 5 );
173 bMainSizer->Add( sbAction, 1, wxEXPAND|wxTOP|wxRIGHT|wxLEFT, 10 );
182 bMainSizer->Add(
m_sdbSizer, 0, wxEXPAND|wxALL, 5 );
185 this->SetSizer( bMainSizer );
187 bMainSizer->Fit(
this );
PCB_LAYER_BOX_SELECTOR * m_layerFilter
virtual void OnNetclassFilterSelect(wxCommandEvent &event)
wxButton * m_sdbSizerCancel
wxCheckBox * m_netclassFilterOpt
wxRadioButton * m_setToSpecifiedValues
virtual void OnSizeNetclassGrid(wxSizeEvent &event)
wxStaticText * m_staticTextViaSize
wxChoice * m_netclassFilter
wxChoice * m_trackWidthSelectBox
wxStdDialogButtonSizer * m_sdbSizer
~DIALOG_GLOBAL_EDIT_TRACKS_AND_VIAS_BASE()
wxCheckBox * m_netFilterOpt
wxRadioButton * m_setToNetclassValues
wxStaticText * m_staticTextTrackWidth
wxChoice * m_viaSizesSelectBox
PCB_LAYER_BOX_SELECTOR * m_layerBox
wxCheckBox * m_layerFilterOpt
wxCheckBox * m_selectedItemsFilter
wxStaticText * m_staticTextLayer
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)
virtual void onSpecifiedValuesUpdateUi(wxUpdateUIEvent &event)
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