52 { wxID_APPLY,
_(
"Restore All Layers" ) },
53 { wxID_CANCEL,
_(
"Cancel" ) } } );
80 EndModal( wxID_APPLY );
93 auto viaHasPotentiallyUnusedLayers =
97 return m_frame->GetBoard()->GetCopperLayerCount() > 2;
102 if( startLayer < 0 || endLayer < 0 )
103 return m_frame->GetBoard()->GetCopperLayerCount() > 2;
105 return m_frame->GetBoard()->LayerDepth( startLayer, endLayer ) > 1;
108 auto padHasPotentiallyUnusedLayers =
124 if( viaHasPotentiallyUnusedLayers(
via ) )
126 via->SetRemoveUnconnected( aRemoveLayers );
139 if( padHasPotentiallyUnusedLayers(
pad ) )
141 pad->SetRemoveUnconnected( aRemoveLayers );
153 if( padHasPotentiallyUnusedLayers(
pad ) )
155 pad->SetRemoveUnconnected( aRemoveLayers );
171 for(
PAD*
pad : footprint->Pads() )
173 if( padHasPotentiallyUnusedLayers(
pad ) )
175 pad->SetRemoveUnconnected( aRemoveLayers );
193 if( viaHasPotentiallyUnusedLayers(
via ) )
196 via->SetRemoveUnconnected( aRemoveLayers );
205 m_commit.Push(
_(
"Remove Unused Pads" ) );
wxBitmapBundle KiBitmapBundle(BITMAPS aBitmap, int aMinHeight)
@ pads_remove_unused_keep_bottom
Represent a set of changes (additions, deletions or modifications) of a data model (e....
void SetupStandardButtons(std::map< int, wxString > aLabels={})
void finishDialogSettings()
In all dialogs, we must call the same functions to fix minimal dlg size, the default position and per...
wxCheckBox * m_cbPreserveExternalLayers
wxCheckBox * m_cbSelectedOnly
DIALOG_UNUSED_PAD_LAYERS_BASE(wxWindow *parent, wxWindowID id=wxID_ANY, const wxString &title=_("Unused Pads"), const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxSize(-1,-1), long style=wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER)
void onApply(wxCommandEvent &event) override
void onOK(wxCommandEvent &event) override
const PCB_SELECTION & m_items
void updatePadsAndVias(bool aRemoveLayers)
Update layers of pads and vias aRemoveLayers = true to remove not connected layers false to set all l...
void syncImages(wxCommandEvent &aEvent) override
DIALOG_UNUSED_PAD_LAYERS(PCB_BASE_FRAME *aParent, const PCB_SELECTION &aItems, COMMIT &aCommit)
A base class for most all the KiCad significant classes used in schematics and boards.
Base PCB main window class for Pcbnew, Gerbview, and CvPcb footprint viewer.
PCB_LAYER_ID
A quick note on layer IDs:
@ PTH
Plated through hole pad.
@ PCB_VIA_T
class PCB_VIA, a via (like a track segment on a copper layer)
@ PCB_FOOTPRINT_T
class FOOTPRINT, a footprint
@ PCB_PAD_T
class PAD, a pad in a footprint