Bind the per-row ⋮ context menu to the Combat-tab Body Structure tree,
offering Edit and Delete on each body-part header and each
body-location row. Edit opens the relevant config editor (#721 / #722);
Delete removes the entry after confirmation, with the part-delete guard
(#720). The add / drag-sort affordances are wired on the sheet.
Part headers carry data-part-shortcode; location rows carry
data-part-shortcodeanddata-location-shortcode, so a single handler
resolves the right entry from the clicked element's dataset.
Bind the per-row
⋮context menu to the Combat-tab Body Structure tree, offering Edit and Delete on each body-part header and each body-location row. Edit opens the relevant config editor (#721 / #722); Delete removes the entry after confirmation, with the part-delete guard (#720). The add / drag-sort affordances are wired on the sheet.Part headers carry
data-part-shortcode; location rows carrydata-part-shortcodeanddata-location-shortcode, so a single handler resolves the right entry from the clicked element's dataset.