57 { wxID_CANCEL,
_(
"Close" ) } } );
98 msg =
_(
"No footprint loaded." );
104 int aErrorCode,
const wxString& aMsg,
const VECTOR2I& aPt )
108 if( !aMsg.IsEmpty() )
109 drcItem->SetErrorDetail( aMsg );
111 drcItem->SetItems( aItemA, aItemB, aItemC );
114 board->
Add( marker );
115 m_frame->GetCanvas()->GetView()->Add( marker );
122 std::swap( aItemA, aItemB );
137 [&](
const wxString& aMsg )
143 [&](
const PAD* aPad,
int aErrorCode,
const wxString& aMsg )
145 errorHandler( aPad,
nullptr,
nullptr, aErrorCode, aMsg, aPad->
GetPosition() );
149 [&](
const PAD* aPadA,
const PAD* aPadB,
int aErrorCode,
const VECTOR2I& aPosition )
151 errorHandler( aPadA, aPadB,
nullptr, aErrorCode, wxEmptyString, aPosition );
157 [&](
const wxString& aMsg )
159 errorHandler( footprint,
nullptr,
nullptr,
DRCE_FOOTPRINT, aMsg, { 0, 0 } );
228 LSET violationLayers;
229 std::shared_ptr<RC_ITEM> rc_item = node->
m_RcItem;
259 if( a || b || c || d )
275 if( violationLayers.count() )
276 principalLayer = violationLayers.
Seq().front();
277 else if( principalLayer >= 0 )
278 violationLayers.
set( principalLayer );
283 m_frame->GetCanvas()->Refresh();
287 m_frame->GetAppearancePanel()->SetLayerVisible( principalLayer,
true );
288 m_frame->GetCanvas()->Refresh();
292 m_frame->SetActiveLayer( principalLayer );
332 if( aEvent.GetEventObject() ==
m_showAll )
347 SetReturnCode( wxID_CANCEL );
357 wxCommandEvent
dummy;
366 m_frame->GetCanvas()->Refresh();
400 m_frame->GetBoard()->DeleteMARKERs(
true,
true );
static TOOL_ACTION selectionClear
Clear the current selection.
BASE_SET & set(size_t pos)
A base class for any item which can be embedded within the BOARD container class, and therefore insta...
virtual LSET GetLayerSet() const
Return a std::bitset of all layers on which the item physically resides.
Information pertinent to a Pcbnew printed circuit board.
void Add(BOARD_ITEM *aItem, ADD_MODE aMode=ADD_MODE::INSERT, bool aSkipConnectivity=false) override
Removes an item from the container.
const LSET & GetVisibleLayers() const
A proxy function that calls the correspondent function in m_BoardSettings.
FOOTPRINT * GetFirstFootprint() const
Get the first footprint on the board or nullptr.
BOARD_ITEM * ResolveItem(const KIID &aID, bool aAllowNullptrReturn=false) const
bool Show(bool show) override
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...
static std::shared_ptr< DRC_ITEM > Create(int aErrorCode)
Constructs a DRC_ITEM for the given error code.
EDA_ITEM_FLAGS GetFlags() const
LSET is a set of PCB_LAYER_IDs.
LSEQ Seq(const LSEQ &aSequence) const
Return an LSEQ from the union of this LSET and a desired sequence.
static const LSET & AllLayersMask()
VECTOR2I GetPosition() const override
static RC_TREE_NODE * ToNode(wxDataViewItem aItem)
static KIID ToUUID(wxDataViewItem aItem)
std::shared_ptr< RC_ITEM > m_RcItem
int OutlineCount() const
Return the number of outlines in the set.
const std::function< void(const wxString &msg, BOARD_ITEM *itemA, BOARD_ITEM *itemB, const VECTOR2I &pt)> OUTLINE_ERROR_HANDLER
@ DRCE_SILK_MASK_CLEARANCE
@ DRCE_MALFORMED_COURTYARD
@ DRCE_FOOTPRINT_TYPE_MISMATCH
#define MALFORMED_F_COURTYARD
#define MALFORMED_B_COURTYARD
PCB_LAYER_ID
A quick note on layer IDs:
std::vector< FAB_LAYER_COLOR > dummy
VECTOR2< int32_t > VECTOR2I