← Back to team overview

kicad-developers team mailing list archive

[PATCH] Via properties: apply microvia settings to microvias

 

---
 pcbnew/dialogs/dialog_track_via_properties.cpp | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

diff --git a/pcbnew/dialogs/dialog_track_via_properties.cpp b/pcbnew/dialogs/dialog_track_via_properties.cpp
index 32297c9..8bd3918 100644
--- a/pcbnew/dialogs/dialog_track_via_properties.cpp
+++ b/pcbnew/dialogs/dialog_track_via_properties.cpp
@@ -289,8 +289,23 @@ bool DIALOG_TRACK_VIA_PROPERTIES::Apply()
 
                 if( m_viaNetclass->IsChecked() )
                 {
-                    v->SetWidth( v->GetNetClass()->GetViaDiameter() );
-                    v->SetDrill( v->GetNetClass()->GetViaDrill() );
+                    switch( v->GetViaType() )
+                    {
+                    default:
+                        wxFAIL_MSG("Unhandled via type");
+                        // fall through
+
+                    case VIA_THROUGH:
+                    case VIA_BLIND_BURIED:
+                        v->SetWidth( v->GetNetClass()->GetViaDiameter() );
+                        v->SetDrill( v->GetNetClass()->GetViaDrill() );
+                        break;
+
+                    case VIA_MICROVIA:
+                        v->SetWidth( v->GetNetClass()->GetuViaDiameter() );
+                        v->SetDrill( v->GetNetClass()->GetuViaDrill() );
+                        break;
+                    }
                 }
                 else
                 {

Follow ups