diff --git a/wiresheet.py b/wiresheet.py index c2b7676..aa1aa17 100644 --- a/wiresheet.py +++ b/wiresheet.py @@ -575,13 +575,13 @@ def draw_knob(x, y, on_sheet, off_sheet, extra_tags=()): outline="white", width=1, tags=tags) if on_sheet: - # A small white centre is what marks the far end as being on this sheet. It - # keeps its colour through selection, so the middle never fills in -- and on a - # half-and-half knob it sits in the wire-coloured half it belongs to. - cx = x - KNOB_RADIUS / 2 if off_sheet else x + # A small white centre is what marks the far end as being on this sheet. It keeps + # its colour through selection, so the middle never fills in. It stays centred + # even on a half-and-half knob: pushed into the wire-coloured half it would fill + # that half almost completely and leave no colour to read. canvas.create_oval( - cx - KNOB_CORE_RADIUS, y - KNOB_CORE_RADIUS, - cx + KNOB_CORE_RADIUS, y + KNOB_CORE_RADIUS, + x - KNOB_CORE_RADIUS, y - KNOB_CORE_RADIUS, + x + KNOB_CORE_RADIUS, y + KNOB_CORE_RADIUS, fill="white", outline="", tags=tags + ("link_knob_core",) )