Release 1.4.1: a Bonded checkbox in the terminal tables
tests / ubuntu-latest · py3.11 (push) Successful in 54s
tests / ubuntu-latest · py3.13 (push) Successful in 58s
tests / archlinux:latest (push) Successful in 41s
tests / debian:12 (push) Successful in 1m10s
tests / fedora:latest (push) Successful in 42m6s
tests / ubuntu:24.04 (push) Successful in 1m15s
tests / NixOS (FHS wrapper from docs/NIXOS.md) (push) Skipped
Build PCM package / build (push) Successful in 11s
tests / ubuntu-latest · py3.11 (push) Successful in 54s
tests / ubuntu-latest · py3.13 (push) Successful in 58s
tests / archlinux:latest (push) Successful in 41s
tests / debian:12 (push) Successful in 1m10s
tests / fedora:latest (push) Successful in 42m6s
tests / ubuntu:24.04 (push) Successful in 1m15s
tests / NixOS (FHS wrapper from docs/NIXOS.md) (push) Skipped
Build PCM package / build (push) Successful in 11s
The config's per-terminal bonded key becomes editable in the dialog (previously file-only, shown as a text suffix): checked, the terminal's contacts short into one internally joined lug - the total value stays prescribed, the per-contact split is a solve outcome. Same-name rectangle groups seed it checked as before; unchecking one falls back to the per-cell area share, and checking a single-contact terminal gives it an equipotential-lug contact instead of uniform injection. Save config... writes the flag back (removed when unchecked - false is the schema default). With this, every non-structural terminal option (active, values, v_oc, contact layer, bonded, comment) is table-editable. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -237,9 +237,10 @@ def main() -> None:
|
||||
def marker_desc(mt):
|
||||
if len(mt.electrodes) == 1:
|
||||
return rect_desc(mt.electrodes[0])
|
||||
# same-named rectangles grouped into one bonded lug
|
||||
# same-named rectangles grouped into one terminal (the
|
||||
# Bonded checkbox shows/controls the lug behavior)
|
||||
return (f"{len(mt.electrodes)}× "
|
||||
f"{rect_desc(mt.electrodes[0])} … — bonded")
|
||||
f"{rect_desc(mt.electrodes[0])} …")
|
||||
|
||||
def live_row(mt, hint, tn):
|
||||
return dialog.PdnTerminalRow(
|
||||
@@ -253,8 +254,7 @@ def main() -> None:
|
||||
n_cfg = len(terminals)
|
||||
rows = [dialog.PdnTerminalRow(
|
||||
name=t.label, role=t.role,
|
||||
resolved=(group_label(t.electrodes)
|
||||
+ (" — bonded" if t.bonded else "")),
|
||||
resolved=group_label(t.electrodes),
|
||||
component=hint,
|
||||
i_draw_a=(t.i_draw_a if t.role == "load"
|
||||
else None),
|
||||
@@ -418,7 +418,7 @@ def main() -> None:
|
||||
if row.i_draw_a is not None else 0.0),
|
||||
r_out_ohm=(row.r_out_ohm
|
||||
if row.r_out_ohm is not None else 0.0),
|
||||
v_oc=row.v_oc, bonded=mt.bonded,
|
||||
v_oc=row.v_oc, bonded=row.bonded,
|
||||
component=row.component, comment=row.comment)
|
||||
if pdn_cfg:
|
||||
cfg_rows = selection.pdn_rows[:len(terminals)]
|
||||
@@ -448,6 +448,7 @@ def main() -> None:
|
||||
else:
|
||||
t.r_out_ohm = row.r_out_ohm
|
||||
t.v_oc = row.v_oc
|
||||
t.bonded = row.bonded
|
||||
t.component = row.component
|
||||
t.comment = row.comment
|
||||
terminals = (
|
||||
|
||||
Reference in New Issue
Block a user