From 5ad40612fbb99d19d3602d86d94777658c23c5ed Mon Sep 17 00:00:00 2001 From: DesertSpringsCivil Date: Mon, 2 Feb 2026 10:17:44 -0700 Subject: [PATCH] Remove Import CSV button and PI Details panel from alignment UI Simplifies the Horizontal Alignment panel by removing the Import Alignment CSV button and the PI Details submenu that displayed when selecting rows in the PI Editor list. Co-Authored-By: Claude Opus 4.5 --- src/bonsai/bonsai/bim/module/alignment/ui.py | 57 -------------------- 1 file changed, 57 deletions(-) diff --git a/src/bonsai/bonsai/bim/module/alignment/ui.py b/src/bonsai/bonsai/bim/module/alignment/ui.py index c9d4078d5b..da901bba10 100644 --- a/src/bonsai/bonsai/bim/module/alignment/ui.py +++ b/src/bonsai/bonsai/bim/module/alignment/ui.py @@ -205,7 +205,6 @@ class SAIKEI_PT_alignment_creation(Panel): col = layout.column(align=True) col.operator("saikei.create_alignment", icon="ADD") col.operator("saikei.create_alignment_by_pi", icon="CURVE_DATA") - col.operator("saikei.import_alignment_csv", icon="IMPORT") # ============================================================================= @@ -260,62 +259,6 @@ class SAIKEI_PT_pi_editor(Panel): col.separator() col.operator("saikei.pick_pi_from_viewport", icon="EYEDROPPER", text="") - # Active item details - show details based on selected row - if props.display_rows and 0 <= props.active_display_row_index < len(props.display_rows): - active_row = props.display_rows[props.active_display_row_index] - - if active_row.row_type == "POINT" and active_row.pi_index < len(props.pis): - pi = props.pis[active_row.pi_index] - - box = layout.box() - box.label(text=f"PI {active_row.pi_index + 1} Details:", icon="PROPERTIES") - - row = box.row() - row.prop(pi, "pi_type", text="Type") - - row = box.row(align=True) - row.prop(pi, "x", text="X") - row.prop(pi, "y", text="Y") - - # Show radius for interior points (can add curve) - if pi.pi_type != "ENDPOINT": - row = box.row() - row.prop(pi, "radius", text="Radius") - - # Display computed values - row = box.row() - row.label(text=f"Station: {pi.station:.2f}") - row.label(text=f"Length: {pi.length_to_next:.2f}") - - elif active_row.row_type == "SEGMENT": - if active_row.display_type == "Curve": - # Curve segment - show curve details with editable radius - pi = props.pis[active_row.pi_index] if active_row.pi_index < len(props.pis) else None - - box = layout.box() - box.label(text=f"Curve {active_row.segment_number} Details:", icon="SPHERECURVE") - - row = box.row() - row.label(text=f"PI Location: ({active_row.x:.2f}, {active_row.y:.2f})") - - row = box.row() - row.label(text=f"Arc Length: {active_row.arc_length:.2f}") - - # Editable radius - if pi: - row = box.row() - row.prop(pi, "radius", text="Radius") - else: - row = box.row() - row.label(text=f"Radius: {active_row.radius:.2f}") - else: - # Tangent segment - box = layout.box() - box.label(text=f"Tangent {active_row.segment_number} Details:", icon="IPO_LINEAR") - - row = box.row() - row.label(text=f"Length: {active_row.length:.2f}") - # Bottom actions layout.separator() row = layout.row(align=True)