From 91d154cd28c0f9b5bb08acc93c3b964808d3a058 Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 22 Jan 2023 21:45:06 +0300 Subject: [PATCH] Add DRC suggestions for Shape --- pcbnew/dialogs/panel_setup_rules.cpp | 10 ++++++++++ pcbnew/dialogs/panel_setup_rules.h | 1 + 2 files changed, 11 insertions(+) diff --git a/pcbnew/dialogs/panel_setup_rules.cpp b/pcbnew/dialogs/panel_setup_rules.cpp index 009386a8a1..b3dbaab544 100644 --- a/pcbnew/dialogs/panel_setup_rules.cpp +++ b/pcbnew/dialogs/panel_setup_rules.cpp @@ -61,6 +61,7 @@ PANEL_SETUP_RULES::PANEL_SETUP_RULES( PAGED_DIALOG* aParent, PCB_EDIT_FRAME* aFr m_padTypeRegex.Compile( "^Pad_Type\\s*[!=]=\\s*$", wxRE_ADVANCED ); m_pinTypeRegex.Compile( "^Pin_Type\\s*[!=]=\\s*$", wxRE_ADVANCED ); m_fabPropRegex.Compile( "^Fabrication_Property\\s*[!=]=\\s*$", wxRE_ADVANCED ); + m_shapeRegex.Compile( "^Shape\\s*[!=]=\\s*$", wxRE_ADVANCED ); m_compileButton->SetBitmap( KiBitmap( BITMAPS::drc ) ); @@ -528,6 +529,15 @@ void PANEL_SETUP_RULES::onScintillaCharAdded( wxStyledTextEvent &aEvent ) "Heatsink pad|" "Castellated pad" ); } + else if( m_shapeRegex.Matches( last ) ) + { + tokens = wxT( "Segment|" + "Rectangle|" + "Arc|" + "Circle|" + "Polygon|" + "Bezier" ); + } } } diff --git a/pcbnew/dialogs/panel_setup_rules.h b/pcbnew/dialogs/panel_setup_rules.h index 0260515e2d..a94200dbb8 100644 --- a/pcbnew/dialogs/panel_setup_rules.h +++ b/pcbnew/dialogs/panel_setup_rules.h @@ -64,6 +64,7 @@ private: wxRegEx m_padTypeRegex; wxRegEx m_pinTypeRegex; wxRegEx m_fabPropRegex; + wxRegEx m_shapeRegex; HTML_MESSAGE_BOX* m_helpWindow; };