Loading pcbnew/dialog_zones_by_polygon.cpp +55 −12 Original line number Diff line number Diff line Loading @@ -77,7 +77,6 @@ WinEDA_ZoneFrame::WinEDA_ZoneFrame( WinEDA_PcbFrame* parent, { m_Parent = parent; m_Zone_Container = zone_container; if( m_Parent->m_Parent->m_EDA_Config ) { m_NetSorting = m_Parent->m_Parent->m_EDA_Config->Read( ZONE_NET_SORT_OPTION_KEY, (long) BOARD::PAD_CNT_SORT ); Loading Loading @@ -107,6 +106,7 @@ bool WinEDA_ZoneFrame::Create( wxWindow* parent, m_FillOpt = NULL; m_OrientEdgesOpt = NULL; m_NetSortingOption = NULL; m_NetNameFilter = NULL; m_ListNetNameSelection = NULL; m_LayerSelectionCtrl = NULL; ////@end WinEDA_ZoneFrame member initialisation Loading Loading @@ -136,7 +136,7 @@ void WinEDA_ZoneFrame::CreateControls() SetFont( *g_DialogFont ); ////@begin WinEDA_ZoneFrame content construction // Generated by DialogBlocks, 29/12/2007 14:29:53 (unregistered) // Generated by DialogBlocks, 06/01/2008 15:03:35 (unregistered) WinEDA_ZoneFrame* itemDialog1 = this; Loading Loading @@ -214,22 +214,30 @@ void WinEDA_ZoneFrame::CreateControls() m_NetSortingOption->SetSelection(0); itemBoxSizer15->Add(m_NetSortingOption, 0, wxGROW|wxALL, 5); wxBoxSizer* itemBoxSizer20 = new wxBoxSizer(wxVERTICAL); itemBoxSizer2->Add(itemBoxSizer20, 0, wxGROW|wxALL, 5); wxStaticText* itemStaticText20 = new wxStaticText( itemDialog1, wxID_STATIC, _("Filter"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer15->Add(itemStaticText20, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT, 5); m_NetNameFilter = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_NETNAMES_FILTER, _T(""), wxDefaultPosition, wxDefaultSize, 0 ); if (WinEDA_ZoneFrame::ShowToolTips()) m_NetNameFilter->SetToolTip(_("Do not list net names which match with this text, in advanced mode")); itemBoxSizer15->Add(m_NetNameFilter, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5); wxStaticText* itemStaticText21 = new wxStaticText( itemDialog1, wxID_STATIC, _("Net:"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer20->Add(itemStaticText21, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); wxBoxSizer* itemBoxSizer22 = new wxBoxSizer(wxVERTICAL); itemBoxSizer2->Add(itemBoxSizer22, 0, wxGROW|wxALL, 5); wxStaticText* itemStaticText23 = new wxStaticText( itemDialog1, wxID_STATIC, _("Net:"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer22->Add(itemStaticText23, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); wxArrayString m_ListNetNameSelectionStrings; m_ListNetNameSelection = new wxListBox( itemDialog1, ID_NETNAME_SELECTION, wxDefaultPosition, wxDefaultSize, m_ListNetNameSelectionStrings, wxLB_SINGLE|wxSUNKEN_BORDER ); itemBoxSizer20->Add(m_ListNetNameSelection, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5); itemBoxSizer22->Add(m_ListNetNameSelection, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5); wxStaticText* itemStaticText23 = new wxStaticText( itemDialog1, wxID_LAYER_SELECTION, _("Layer:"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer20->Add(itemStaticText23, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); wxStaticText* itemStaticText25 = new wxStaticText( itemDialog1, wxID_LAYER_SELECTION, _("Layer:"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer22->Add(itemStaticText25, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); wxArrayString m_LayerSelectionCtrlStrings; m_LayerSelectionCtrl = new wxListBox( itemDialog1, ID_LAYER_CHOICE, wxDefaultPosition, wxDefaultSize, m_LayerSelectionCtrlStrings, wxLB_SINGLE ); itemBoxSizer20->Add(m_LayerSelectionCtrl, 0, wxGROW|wxALL, 5); itemBoxSizer22->Add(m_LayerSelectionCtrl, 0, wxGROW|wxALL, 5); // Set validators m_NetSortingOption->SetValidator( wxGenericValidator(& m_NetSorting) ); Loading Loading @@ -297,8 +305,6 @@ void WinEDA_ZoneFrame::CreateControls() break; } m_NetSortingOption->SetSelection(m_NetSorting == 0 ? 0 : 1 ); int layer_cnt = g_DesignSettings.m_CopperLayerCount; for( int ii = 0; ii < g_DesignSettings.m_CopperLayerCount; ii++ ) { Loading @@ -312,16 +318,40 @@ void WinEDA_ZoneFrame::CreateControls() msg = ReturnPcbLayerName( layer_number ).Trim(); m_LayerSelectionCtrl->InsertItems( 1, &msg, ii ); if ( m_Zone_Container ) { if( m_Zone_Container->GetLayer() == layer_number ) m_LayerSelectionCtrl->SetSelection( ii ); } else { if( m_Parent->GetScreen()->m_Active_Layer == layer_number ) m_LayerSelectionCtrl->SetSelection( ii ); } } m_NetSortingOption->SetSelection(m_NetSorting == BOARD::ALPHA_SORT ? 0 : 1 ); wxString NetNameFilter; if( m_Parent->m_Parent->m_EDA_Config ) { NetNameFilter = m_Parent->m_Parent->m_EDA_Config->Read( ZONE_NET_FILTER_STRING_KEY, wxT("N_0*") ); } m_NetNameFilter->SetValue(NetNameFilter); wxArrayString ListNetName; m_Parent->m_Pcb->ReturnSortedNetnamesList( ListNetName, m_NetSorting == 0 ? BOARD::ALPHA_SORT : BOARD::PAD_CNT_SORT ); if ( m_NetSorting != 0 ) { wxString Filter = m_NetNameFilter->GetValue(); for (unsigned ii = 0; ii < ListNetName.GetCount(); ii ++ ) { if ( ListNetName[ii].Matches(Filter.GetData() ) ) { ListNetName. RemoveAt(ii); ii--; } } } m_ListNetNameSelection->InsertItems( ListNetName, 0 ); // Select net: Loading Loading @@ -500,11 +530,24 @@ void WinEDA_ZoneFrame::OnNetSortingOptionSelected( wxCommandEvent& event ) m_NetSorting = m_NetSortingOption->GetSelection(); m_Parent->m_Pcb->ReturnSortedNetnamesList( ListNetName, m_NetSorting == 0 ? BOARD::ALPHA_SORT : BOARD::PAD_CNT_SORT ); if ( m_NetSorting != 0 ) { wxString Filter = m_NetNameFilter->GetValue(); for (unsigned ii = 0; ii < ListNetName.GetCount(); ii ++ ) { if ( ListNetName[ii].Matches(Filter.GetData() ) ) { ListNetName. RemoveAt(ii); ii--; } } } m_ListNetNameSelection->Clear(); m_ListNetNameSelection->InsertItems( ListNetName, 0 ); if( m_Parent->m_Parent->m_EDA_Config ) { m_Parent->m_Parent->m_EDA_Config->Write( ZONE_NET_SORT_OPTION_KEY, (long) m_NetSorting ); m_Parent->m_Parent->m_EDA_Config->Write( ZONE_NET_FILTER_STRING_KEY, m_NetNameFilter->GetValue() ); } } Loading pcbnew/dialog_zones_by_polygon.h +2 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ #define ID_RADIOBOX4 10008 #define ID_RADIOBOX5 10009 #define ID_NET_SORTING_OPTION 10005 #define ID_TEXTCTRL_NETNAMES_FILTER 10010 #define ID_NETNAME_SELECTION 10001 #define wxID_LAYER_SELECTION 10004 #define ID_LAYER_CHOICE 10002 Loading Loading @@ -126,6 +127,7 @@ public: wxRadioBox* m_FillOpt; wxRadioBox* m_OrientEdgesOpt; wxRadioBox* m_NetSortingOption; wxTextCtrl* m_NetNameFilter; wxListBox* m_ListNetNameSelection; wxListBox* m_LayerSelectionCtrl; ////@end WinEDA_ZoneFrame member variables Loading pcbnew/dialog_zones_by_polygon.pjd +153 −1 Original line number Diff line number Diff line Loading @@ -201,7 +201,7 @@ <long name="title-mode">0</long> <long name="locked">1</long> <document> <string name="title">"Fill Zones Options"</string> <string name="title">"Zone Areas Options"</string> <string name="type">"dialog-document"</string> <string name="filename">""</string> <string name="icon-name">"dialog"</string> Loading Loading @@ -1108,6 +1108,158 @@ <string name="proxy-Custom arguments">""</string> <string name="proxy-Custom ctor arguments">""</string> </document> <document> <string name="title">"wxStaticText: wxID_STATIC"</string> <string name="type">"dialog-control-document"</string> <string name="filename">""</string> <string name="icon-name">"statictext"</string> <long name="is-transient">0</long> <long name="owns-file">1</long> <long name="title-mode">0</long> <long name="locked">0</long> <string name="created">"6/1/2008"</string> <string name="proxy-type">"wbStaticTextProxy"</string> <string name="proxy-Id name">"wxID_STATIC"</string> <long name="proxy-Id value">5105</long> <string name="proxy-Name">""</string> <string name="proxy-Class">"wxStaticText"</string> <string name="proxy-Base class">"wxStaticText"</string> <bool name="proxy-External implementation">1</bool> <bool name="proxy-Separate files">0</bool> <string name="proxy-Implementation filename">""</string> <string name="proxy-Header filename">""</string> <string name="proxy-Member variable name">""</string> <string name="proxy-Label">"Filter"</string> <long name="proxy-Wrapping width">-1</long> <string name="proxy-Help text">""</string> <string name="proxy-Tooltip text">""</string> <string name="proxy-Background colour">""</string> <string name="proxy-Foreground colour">""</string> <string name="proxy-Font">""</string> <bool name="proxy-Hidden">0</bool> <bool name="proxy-Enabled">1</bool> <string name="proxy-Platform">"<Any platform>"</string> <string name="proxy-Data variable">""</string> <string name="proxy-Data validator">""</string> <string name="proxy-Data source">""</string> <string name="proxy-Data class name">""</string> <string name="proxy-Data class implementation filename">""</string> <string name="proxy-Data class header filename">""</string> <string name="proxy-Data class manager window">""</string> <bool name="proxy-wxALIGN_LEFT">0</bool> <bool name="proxy-wxALIGN_RIGHT">0</bool> <bool name="proxy-wxALIGN_CENTRE">0</bool> <bool name="proxy-wxST_NO_AUTORESIZE">0</bool> <bool name="proxy-wxNO_BORDER">0</bool> <bool name="proxy-wxSIMPLE_BORDER">0</bool> <bool name="proxy-wxDOUBLE_BORDER">0</bool> <bool name="proxy-wxSUNKEN_BORDER">0</bool> <bool name="proxy-wxRAISED_BORDER">0</bool> <bool name="proxy-wxSTATIC_BORDER">0</bool> <bool name="proxy-wxWANTS_CHARS">0</bool> <bool name="proxy-wxNO_FULL_REPAINT_ON_RESIZE">0</bool> <bool name="proxy-wxFULL_REPAINT_ON_RESIZE">0</bool> <string name="proxy-Custom styles">""</string> <long name="proxy-X">-1</long> <long name="proxy-Y">-1</long> <long name="proxy-Width">-1</long> <long name="proxy-Height">-1</long> <string name="proxy-AlignH">"Left"</string> <string name="proxy-AlignV">"Centre"</string> <long name="proxy-Stretch factor">0</long> <long name="proxy-Border">5</long> <bool name="proxy-wxLEFT">1</bool> <bool name="proxy-wxRIGHT">1</bool> <bool name="proxy-wxTOP">0</bool> <bool name="proxy-wxBOTTOM">0</bool> <bool name="proxy-wxSHAPED">0</bool> <bool name="proxy-wxADJUST_MINSIZE">0</bool> <bool name="proxy-wxFIXED_MINSIZE">0</bool> <string name="proxy-Custom arguments">""</string> <string name="proxy-Custom ctor arguments">""</string> </document> <document> <string name="title">"wxTextCtrl: ID_TEXTCTRL_NETNAMES_FILTER"</string> <string name="type">"dialog-control-document"</string> <string name="filename">""</string> <string name="icon-name">"textctrl"</string> <long name="is-transient">0</long> <long name="owns-file">1</long> <long name="title-mode">0</long> <long name="locked">0</long> <string name="created">"6/1/2008"</string> <string name="proxy-type">"wbTextCtrlProxy"</string> <string name="proxy-Id name">"ID_TEXTCTRL_NETNAMES_FILTER"</string> <long name="proxy-Id value">10010</long> <string name="proxy-Name">""</string> <string name="proxy-Class">"wxTextCtrl"</string> <string name="proxy-Base class">"wxTextCtrl"</string> <bool name="proxy-External implementation">1</bool> <bool name="proxy-Separate files">0</bool> <string name="proxy-Implementation filename">""</string> <string name="proxy-Header filename">""</string> <string name="proxy-Member variable name">"m_NetNameFilter"</string> <string name="proxy-Initial value">""</string> <long name="proxy-Max length">0</long> <string name="proxy-Help text">""</string> <string name="proxy-Tooltip text">"Do not list net names which match with this text, in advanced mode"</string> <string name="proxy-Background colour">""</string> <string name="proxy-Foreground colour">""</string> <string name="proxy-Font">""</string> <bool name="proxy-Hidden">0</bool> <bool name="proxy-Enabled">1</bool> <string name="proxy-Platform">"<Any platform>"</string> <string name="proxy-Data variable">""</string> <string name="proxy-Data validator">""</string> <string name="proxy-Data source">""</string> <string name="proxy-Data class name">""</string> <string name="proxy-Data class implementation filename">""</string> <string name="proxy-Data class header filename">""</string> <string name="proxy-Data class manager window">""</string> <bool name="proxy-wxTE_MULTILINE">0</bool> <bool name="proxy-wxTE_PROCESS_ENTER">0</bool> <bool name="proxy-wxTE_PROCESS_TAB">0</bool> <bool name="proxy-wxTE_PASSWORD">0</bool> <bool name="proxy-wxTE_READONLY">0</bool> <bool name="proxy-wxTE_RICH">0</bool> <bool name="proxy-wxTE_RICH2">0</bool> <bool name="proxy-wxTE_AUTO_URL">0</bool> <bool name="proxy-wxTE_NOHIDESEL">0</bool> <bool name="proxy-wxTE_LEFT">0</bool> <bool name="proxy-wxTE_CENTRE">0</bool> <bool name="proxy-wxTE_RIGHT">0</bool> <bool name="proxy-wxHSCROLL">0</bool> <bool name="proxy-wxTE_CHARWRAP">0</bool> <bool name="proxy-wxTE_WORDWRAP">0</bool> <bool name="proxy-wxTE_CAPITALIZE">0</bool> <bool name="proxy-wxNO_BORDER">0</bool> <bool name="proxy-wxSIMPLE_BORDER">0</bool> <bool name="proxy-wxDOUBLE_BORDER">0</bool> <bool name="proxy-wxSUNKEN_BORDER">0</bool> <bool name="proxy-wxRAISED_BORDER">0</bool> <bool name="proxy-wxSTATIC_BORDER">0</bool> <bool name="proxy-wxWANTS_CHARS">0</bool> <bool name="proxy-wxNO_FULL_REPAINT_ON_RESIZE">0</bool> <bool name="proxy-wxFULL_REPAINT_ON_RESIZE">0</bool> <string name="proxy-Custom styles">""</string> <long name="proxy-X">-1</long> <long name="proxy-Y">-1</long> <long name="proxy-Width">-1</long> <long name="proxy-Height">-1</long> <string name="proxy-AlignH">"Expand"</string> <string name="proxy-AlignV">"Centre"</string> <long name="proxy-Stretch factor">0</long> <long name="proxy-Border">5</long> <bool name="proxy-wxLEFT">1</bool> <bool name="proxy-wxRIGHT">1</bool> <bool name="proxy-wxTOP">0</bool> <bool name="proxy-wxBOTTOM">1</bool> <bool name="proxy-wxSHAPED">0</bool> <bool name="proxy-wxADJUST_MINSIZE">0</bool> <bool name="proxy-wxFIXED_MINSIZE">0</bool> <string name="proxy-Custom arguments">""</string> <string name="proxy-Custom ctor arguments">""</string> </document> </document> </document> <document> Loading pcbnew/edit.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -447,6 +447,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_POPUP_PCB_EDIT_ZONE_PARAMS: Edit_Zone_Params( &dc, (ZONE_CONTAINER*) GetCurItem() ); SetCurItem( NULL ); // Outlines can have changed break; case ID_POPUP_PCB_ZONE_ADD_SIMILAR_ZONE: Loading pcbnew/zones_by_polygon.cpp +2 −0 Original line number Diff line number Diff line Loading @@ -56,6 +56,7 @@ static ZONE_CONTAINER* s_CurrentZone; // if != NULL, t // key used to store net sort option in config file : #define ZONE_NET_SORT_OPTION_KEY wxT( "Zone_NetSort_Opt" ) #define ZONE_NET_FILTER_STRING_KEY wxT( "Zone_Filter_Opt" ) enum zone_cmd { ZONE_ABORT, Loading Loading @@ -734,6 +735,7 @@ void WinEDA_PcbFrame::Edit_Zone_Params( wxDC* DC, ZONE_CONTAINER* zone_container for( unsigned ii = 0; ii < m_Pcb->m_ZoneDescriptorList.size(); ii++ ) { ZONE_CONTAINER* edge_zone = m_Pcb->m_ZoneDescriptorList[ii]; edge_zone->m_Flags = 0; edge_zone->Draw( DrawPanel, DC, wxPoint( 0, 0 ), GR_OR ); } Loading Loading
pcbnew/dialog_zones_by_polygon.cpp +55 −12 Original line number Diff line number Diff line Loading @@ -77,7 +77,6 @@ WinEDA_ZoneFrame::WinEDA_ZoneFrame( WinEDA_PcbFrame* parent, { m_Parent = parent; m_Zone_Container = zone_container; if( m_Parent->m_Parent->m_EDA_Config ) { m_NetSorting = m_Parent->m_Parent->m_EDA_Config->Read( ZONE_NET_SORT_OPTION_KEY, (long) BOARD::PAD_CNT_SORT ); Loading Loading @@ -107,6 +106,7 @@ bool WinEDA_ZoneFrame::Create( wxWindow* parent, m_FillOpt = NULL; m_OrientEdgesOpt = NULL; m_NetSortingOption = NULL; m_NetNameFilter = NULL; m_ListNetNameSelection = NULL; m_LayerSelectionCtrl = NULL; ////@end WinEDA_ZoneFrame member initialisation Loading Loading @@ -136,7 +136,7 @@ void WinEDA_ZoneFrame::CreateControls() SetFont( *g_DialogFont ); ////@begin WinEDA_ZoneFrame content construction // Generated by DialogBlocks, 29/12/2007 14:29:53 (unregistered) // Generated by DialogBlocks, 06/01/2008 15:03:35 (unregistered) WinEDA_ZoneFrame* itemDialog1 = this; Loading Loading @@ -214,22 +214,30 @@ void WinEDA_ZoneFrame::CreateControls() m_NetSortingOption->SetSelection(0); itemBoxSizer15->Add(m_NetSortingOption, 0, wxGROW|wxALL, 5); wxBoxSizer* itemBoxSizer20 = new wxBoxSizer(wxVERTICAL); itemBoxSizer2->Add(itemBoxSizer20, 0, wxGROW|wxALL, 5); wxStaticText* itemStaticText20 = new wxStaticText( itemDialog1, wxID_STATIC, _("Filter"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer15->Add(itemStaticText20, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT, 5); m_NetNameFilter = new wxTextCtrl( itemDialog1, ID_TEXTCTRL_NETNAMES_FILTER, _T(""), wxDefaultPosition, wxDefaultSize, 0 ); if (WinEDA_ZoneFrame::ShowToolTips()) m_NetNameFilter->SetToolTip(_("Do not list net names which match with this text, in advanced mode")); itemBoxSizer15->Add(m_NetNameFilter, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5); wxStaticText* itemStaticText21 = new wxStaticText( itemDialog1, wxID_STATIC, _("Net:"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer20->Add(itemStaticText21, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); wxBoxSizer* itemBoxSizer22 = new wxBoxSizer(wxVERTICAL); itemBoxSizer2->Add(itemBoxSizer22, 0, wxGROW|wxALL, 5); wxStaticText* itemStaticText23 = new wxStaticText( itemDialog1, wxID_STATIC, _("Net:"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer22->Add(itemStaticText23, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); wxArrayString m_ListNetNameSelectionStrings; m_ListNetNameSelection = new wxListBox( itemDialog1, ID_NETNAME_SELECTION, wxDefaultPosition, wxDefaultSize, m_ListNetNameSelectionStrings, wxLB_SINGLE|wxSUNKEN_BORDER ); itemBoxSizer20->Add(m_ListNetNameSelection, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5); itemBoxSizer22->Add(m_ListNetNameSelection, 0, wxGROW|wxLEFT|wxRIGHT|wxBOTTOM, 5); wxStaticText* itemStaticText23 = new wxStaticText( itemDialog1, wxID_LAYER_SELECTION, _("Layer:"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer20->Add(itemStaticText23, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); wxStaticText* itemStaticText25 = new wxStaticText( itemDialog1, wxID_LAYER_SELECTION, _("Layer:"), wxDefaultPosition, wxDefaultSize, 0 ); itemBoxSizer22->Add(itemStaticText25, 0, wxALIGN_LEFT|wxLEFT|wxRIGHT|wxTOP, 5); wxArrayString m_LayerSelectionCtrlStrings; m_LayerSelectionCtrl = new wxListBox( itemDialog1, ID_LAYER_CHOICE, wxDefaultPosition, wxDefaultSize, m_LayerSelectionCtrlStrings, wxLB_SINGLE ); itemBoxSizer20->Add(m_LayerSelectionCtrl, 0, wxGROW|wxALL, 5); itemBoxSizer22->Add(m_LayerSelectionCtrl, 0, wxGROW|wxALL, 5); // Set validators m_NetSortingOption->SetValidator( wxGenericValidator(& m_NetSorting) ); Loading Loading @@ -297,8 +305,6 @@ void WinEDA_ZoneFrame::CreateControls() break; } m_NetSortingOption->SetSelection(m_NetSorting == 0 ? 0 : 1 ); int layer_cnt = g_DesignSettings.m_CopperLayerCount; for( int ii = 0; ii < g_DesignSettings.m_CopperLayerCount; ii++ ) { Loading @@ -312,16 +318,40 @@ void WinEDA_ZoneFrame::CreateControls() msg = ReturnPcbLayerName( layer_number ).Trim(); m_LayerSelectionCtrl->InsertItems( 1, &msg, ii ); if ( m_Zone_Container ) { if( m_Zone_Container->GetLayer() == layer_number ) m_LayerSelectionCtrl->SetSelection( ii ); } else { if( m_Parent->GetScreen()->m_Active_Layer == layer_number ) m_LayerSelectionCtrl->SetSelection( ii ); } } m_NetSortingOption->SetSelection(m_NetSorting == BOARD::ALPHA_SORT ? 0 : 1 ); wxString NetNameFilter; if( m_Parent->m_Parent->m_EDA_Config ) { NetNameFilter = m_Parent->m_Parent->m_EDA_Config->Read( ZONE_NET_FILTER_STRING_KEY, wxT("N_0*") ); } m_NetNameFilter->SetValue(NetNameFilter); wxArrayString ListNetName; m_Parent->m_Pcb->ReturnSortedNetnamesList( ListNetName, m_NetSorting == 0 ? BOARD::ALPHA_SORT : BOARD::PAD_CNT_SORT ); if ( m_NetSorting != 0 ) { wxString Filter = m_NetNameFilter->GetValue(); for (unsigned ii = 0; ii < ListNetName.GetCount(); ii ++ ) { if ( ListNetName[ii].Matches(Filter.GetData() ) ) { ListNetName. RemoveAt(ii); ii--; } } } m_ListNetNameSelection->InsertItems( ListNetName, 0 ); // Select net: Loading Loading @@ -500,11 +530,24 @@ void WinEDA_ZoneFrame::OnNetSortingOptionSelected( wxCommandEvent& event ) m_NetSorting = m_NetSortingOption->GetSelection(); m_Parent->m_Pcb->ReturnSortedNetnamesList( ListNetName, m_NetSorting == 0 ? BOARD::ALPHA_SORT : BOARD::PAD_CNT_SORT ); if ( m_NetSorting != 0 ) { wxString Filter = m_NetNameFilter->GetValue(); for (unsigned ii = 0; ii < ListNetName.GetCount(); ii ++ ) { if ( ListNetName[ii].Matches(Filter.GetData() ) ) { ListNetName. RemoveAt(ii); ii--; } } } m_ListNetNameSelection->Clear(); m_ListNetNameSelection->InsertItems( ListNetName, 0 ); if( m_Parent->m_Parent->m_EDA_Config ) { m_Parent->m_Parent->m_EDA_Config->Write( ZONE_NET_SORT_OPTION_KEY, (long) m_NetSorting ); m_Parent->m_Parent->m_EDA_Config->Write( ZONE_NET_FILTER_STRING_KEY, m_NetNameFilter->GetValue() ); } } Loading
pcbnew/dialog_zones_by_polygon.h +2 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ #define ID_RADIOBOX4 10008 #define ID_RADIOBOX5 10009 #define ID_NET_SORTING_OPTION 10005 #define ID_TEXTCTRL_NETNAMES_FILTER 10010 #define ID_NETNAME_SELECTION 10001 #define wxID_LAYER_SELECTION 10004 #define ID_LAYER_CHOICE 10002 Loading Loading @@ -126,6 +127,7 @@ public: wxRadioBox* m_FillOpt; wxRadioBox* m_OrientEdgesOpt; wxRadioBox* m_NetSortingOption; wxTextCtrl* m_NetNameFilter; wxListBox* m_ListNetNameSelection; wxListBox* m_LayerSelectionCtrl; ////@end WinEDA_ZoneFrame member variables Loading
pcbnew/dialog_zones_by_polygon.pjd +153 −1 Original line number Diff line number Diff line Loading @@ -201,7 +201,7 @@ <long name="title-mode">0</long> <long name="locked">1</long> <document> <string name="title">"Fill Zones Options"</string> <string name="title">"Zone Areas Options"</string> <string name="type">"dialog-document"</string> <string name="filename">""</string> <string name="icon-name">"dialog"</string> Loading Loading @@ -1108,6 +1108,158 @@ <string name="proxy-Custom arguments">""</string> <string name="proxy-Custom ctor arguments">""</string> </document> <document> <string name="title">"wxStaticText: wxID_STATIC"</string> <string name="type">"dialog-control-document"</string> <string name="filename">""</string> <string name="icon-name">"statictext"</string> <long name="is-transient">0</long> <long name="owns-file">1</long> <long name="title-mode">0</long> <long name="locked">0</long> <string name="created">"6/1/2008"</string> <string name="proxy-type">"wbStaticTextProxy"</string> <string name="proxy-Id name">"wxID_STATIC"</string> <long name="proxy-Id value">5105</long> <string name="proxy-Name">""</string> <string name="proxy-Class">"wxStaticText"</string> <string name="proxy-Base class">"wxStaticText"</string> <bool name="proxy-External implementation">1</bool> <bool name="proxy-Separate files">0</bool> <string name="proxy-Implementation filename">""</string> <string name="proxy-Header filename">""</string> <string name="proxy-Member variable name">""</string> <string name="proxy-Label">"Filter"</string> <long name="proxy-Wrapping width">-1</long> <string name="proxy-Help text">""</string> <string name="proxy-Tooltip text">""</string> <string name="proxy-Background colour">""</string> <string name="proxy-Foreground colour">""</string> <string name="proxy-Font">""</string> <bool name="proxy-Hidden">0</bool> <bool name="proxy-Enabled">1</bool> <string name="proxy-Platform">"<Any platform>"</string> <string name="proxy-Data variable">""</string> <string name="proxy-Data validator">""</string> <string name="proxy-Data source">""</string> <string name="proxy-Data class name">""</string> <string name="proxy-Data class implementation filename">""</string> <string name="proxy-Data class header filename">""</string> <string name="proxy-Data class manager window">""</string> <bool name="proxy-wxALIGN_LEFT">0</bool> <bool name="proxy-wxALIGN_RIGHT">0</bool> <bool name="proxy-wxALIGN_CENTRE">0</bool> <bool name="proxy-wxST_NO_AUTORESIZE">0</bool> <bool name="proxy-wxNO_BORDER">0</bool> <bool name="proxy-wxSIMPLE_BORDER">0</bool> <bool name="proxy-wxDOUBLE_BORDER">0</bool> <bool name="proxy-wxSUNKEN_BORDER">0</bool> <bool name="proxy-wxRAISED_BORDER">0</bool> <bool name="proxy-wxSTATIC_BORDER">0</bool> <bool name="proxy-wxWANTS_CHARS">0</bool> <bool name="proxy-wxNO_FULL_REPAINT_ON_RESIZE">0</bool> <bool name="proxy-wxFULL_REPAINT_ON_RESIZE">0</bool> <string name="proxy-Custom styles">""</string> <long name="proxy-X">-1</long> <long name="proxy-Y">-1</long> <long name="proxy-Width">-1</long> <long name="proxy-Height">-1</long> <string name="proxy-AlignH">"Left"</string> <string name="proxy-AlignV">"Centre"</string> <long name="proxy-Stretch factor">0</long> <long name="proxy-Border">5</long> <bool name="proxy-wxLEFT">1</bool> <bool name="proxy-wxRIGHT">1</bool> <bool name="proxy-wxTOP">0</bool> <bool name="proxy-wxBOTTOM">0</bool> <bool name="proxy-wxSHAPED">0</bool> <bool name="proxy-wxADJUST_MINSIZE">0</bool> <bool name="proxy-wxFIXED_MINSIZE">0</bool> <string name="proxy-Custom arguments">""</string> <string name="proxy-Custom ctor arguments">""</string> </document> <document> <string name="title">"wxTextCtrl: ID_TEXTCTRL_NETNAMES_FILTER"</string> <string name="type">"dialog-control-document"</string> <string name="filename">""</string> <string name="icon-name">"textctrl"</string> <long name="is-transient">0</long> <long name="owns-file">1</long> <long name="title-mode">0</long> <long name="locked">0</long> <string name="created">"6/1/2008"</string> <string name="proxy-type">"wbTextCtrlProxy"</string> <string name="proxy-Id name">"ID_TEXTCTRL_NETNAMES_FILTER"</string> <long name="proxy-Id value">10010</long> <string name="proxy-Name">""</string> <string name="proxy-Class">"wxTextCtrl"</string> <string name="proxy-Base class">"wxTextCtrl"</string> <bool name="proxy-External implementation">1</bool> <bool name="proxy-Separate files">0</bool> <string name="proxy-Implementation filename">""</string> <string name="proxy-Header filename">""</string> <string name="proxy-Member variable name">"m_NetNameFilter"</string> <string name="proxy-Initial value">""</string> <long name="proxy-Max length">0</long> <string name="proxy-Help text">""</string> <string name="proxy-Tooltip text">"Do not list net names which match with this text, in advanced mode"</string> <string name="proxy-Background colour">""</string> <string name="proxy-Foreground colour">""</string> <string name="proxy-Font">""</string> <bool name="proxy-Hidden">0</bool> <bool name="proxy-Enabled">1</bool> <string name="proxy-Platform">"<Any platform>"</string> <string name="proxy-Data variable">""</string> <string name="proxy-Data validator">""</string> <string name="proxy-Data source">""</string> <string name="proxy-Data class name">""</string> <string name="proxy-Data class implementation filename">""</string> <string name="proxy-Data class header filename">""</string> <string name="proxy-Data class manager window">""</string> <bool name="proxy-wxTE_MULTILINE">0</bool> <bool name="proxy-wxTE_PROCESS_ENTER">0</bool> <bool name="proxy-wxTE_PROCESS_TAB">0</bool> <bool name="proxy-wxTE_PASSWORD">0</bool> <bool name="proxy-wxTE_READONLY">0</bool> <bool name="proxy-wxTE_RICH">0</bool> <bool name="proxy-wxTE_RICH2">0</bool> <bool name="proxy-wxTE_AUTO_URL">0</bool> <bool name="proxy-wxTE_NOHIDESEL">0</bool> <bool name="proxy-wxTE_LEFT">0</bool> <bool name="proxy-wxTE_CENTRE">0</bool> <bool name="proxy-wxTE_RIGHT">0</bool> <bool name="proxy-wxHSCROLL">0</bool> <bool name="proxy-wxTE_CHARWRAP">0</bool> <bool name="proxy-wxTE_WORDWRAP">0</bool> <bool name="proxy-wxTE_CAPITALIZE">0</bool> <bool name="proxy-wxNO_BORDER">0</bool> <bool name="proxy-wxSIMPLE_BORDER">0</bool> <bool name="proxy-wxDOUBLE_BORDER">0</bool> <bool name="proxy-wxSUNKEN_BORDER">0</bool> <bool name="proxy-wxRAISED_BORDER">0</bool> <bool name="proxy-wxSTATIC_BORDER">0</bool> <bool name="proxy-wxWANTS_CHARS">0</bool> <bool name="proxy-wxNO_FULL_REPAINT_ON_RESIZE">0</bool> <bool name="proxy-wxFULL_REPAINT_ON_RESIZE">0</bool> <string name="proxy-Custom styles">""</string> <long name="proxy-X">-1</long> <long name="proxy-Y">-1</long> <long name="proxy-Width">-1</long> <long name="proxy-Height">-1</long> <string name="proxy-AlignH">"Expand"</string> <string name="proxy-AlignV">"Centre"</string> <long name="proxy-Stretch factor">0</long> <long name="proxy-Border">5</long> <bool name="proxy-wxLEFT">1</bool> <bool name="proxy-wxRIGHT">1</bool> <bool name="proxy-wxTOP">0</bool> <bool name="proxy-wxBOTTOM">1</bool> <bool name="proxy-wxSHAPED">0</bool> <bool name="proxy-wxADJUST_MINSIZE">0</bool> <bool name="proxy-wxFIXED_MINSIZE">0</bool> <string name="proxy-Custom arguments">""</string> <string name="proxy-Custom ctor arguments">""</string> </document> </document> </document> <document> Loading
pcbnew/edit.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -447,6 +447,7 @@ void WinEDA_PcbFrame::Process_Special_Functions( wxCommandEvent& event ) case ID_POPUP_PCB_EDIT_ZONE_PARAMS: Edit_Zone_Params( &dc, (ZONE_CONTAINER*) GetCurItem() ); SetCurItem( NULL ); // Outlines can have changed break; case ID_POPUP_PCB_ZONE_ADD_SIMILAR_ZONE: Loading
pcbnew/zones_by_polygon.cpp +2 −0 Original line number Diff line number Diff line Loading @@ -56,6 +56,7 @@ static ZONE_CONTAINER* s_CurrentZone; // if != NULL, t // key used to store net sort option in config file : #define ZONE_NET_SORT_OPTION_KEY wxT( "Zone_NetSort_Opt" ) #define ZONE_NET_FILTER_STRING_KEY wxT( "Zone_Filter_Opt" ) enum zone_cmd { ZONE_ABORT, Loading Loading @@ -734,6 +735,7 @@ void WinEDA_PcbFrame::Edit_Zone_Params( wxDC* DC, ZONE_CONTAINER* zone_container for( unsigned ii = 0; ii < m_Pcb->m_ZoneDescriptorList.size(); ii++ ) { ZONE_CONTAINER* edge_zone = m_Pcb->m_ZoneDescriptorList[ii]; edge_zone->m_Flags = 0; edge_zone->Draw( DrawPanel, DC, wxPoint( 0, 0 ), GR_OR ); } Loading