ispyisail
799ff5573f
Revert the isFull() change: max_slaves counts slots, not contacts
...
The earlier commit changed MasterElement::isFull() to compare the
contacts in use against max_slaves. That was wrong, and this restores
the original comparison against the number of linked elements.
max_slaves is a number of slots, not of contacts:
- it sizes the contact group table in the element editor, one row per
slot (ElementPropertiesEditorWidget::populateSlaveGroupsTable)
- a group must match the slave's own contact count before it can be
chosen, so a 4 pole slave needs a group declaring 4 and occupies
that single group (ContactGroupSelectionDialog)
- each slave stores exactly one group index
(Element::setGroupIndexForElement)
So a coil declaring 4 slots accepts 4 slaves, whatever their pole
count. Counting contacts made one 4 pole slave fill a 4 slot coil on
its own and refuse three further links that should have been allowed.
ContactUsage stays, and its per-type tally is still what the General
tab needs: how many contacts an auxiliary block must provide is a
different question from how many slots are occupied, and only the
former wants the pole multiplier. The header now says so.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com >
2026-09-09 11:45:36 +12:00
..
2026-08-29 11:02:59 +02:00
2026-09-07 10:05:27 +02:00
2026-09-05 15:48:28 +02:00
2026-01-16 15:24:35 +01:00
2026-01-26 18:47:43 +01:00
2026-09-08 08:35:00 +02:00
2026-08-27 07:27:25 +02:00
2026-08-14 10:02:39 +02:00
2026-08-17 10:25:44 +02:00
2026-08-06 23:05:05 +12:00
2026-07-11 21:47:04 +02:00
2026-08-22 13:34:29 +02:00
2026-07-31 09:52:32 +12:00
2026-09-08 08:20:33 +02:00
2026-08-11 11:48:58 +12:00
2025-05-22 21:33:32 +02:00
2026-09-09 11:45:36 +12:00
2026-01-16 15:24:35 +01:00
2026-09-07 10:44:30 +02:00
2026-01-16 15:24:35 +01:00
2026-08-22 13:34:29 +02:00
2026-08-10 21:19:56 +12:00
2026-01-16 15:24:35 +01:00
2026-08-17 16:46:49 +02:00
2026-08-23 18:25:23 +02:00
2026-09-09 09:52:06 +12:00
2026-09-05 15:48:28 +02:00
2026-08-13 15:45:15 +02:00
2026-01-16 15:24:35 +01:00
2026-08-09 09:11:40 +02:00
2026-08-09 09:11:40 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-07-30 18:32:54 +12:00
2026-08-13 08:50:24 +08:00
2026-08-12 10:33:37 -06:00
2026-08-12 10:33:45 -06:00
2026-08-03 13:19:51 +12:00
2026-01-16 15:24:35 +01:00
2026-08-13 16:20:30 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-08-13 15:45:15 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-08-08 00:32:31 +02:00
2026-01-16 15:24:35 +01:00
2026-09-09 11:45:36 +12:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-09-07 20:54:18 +12:00
2026-08-07 13:48:40 +02:00
2026-08-23 11:07:31 +02:00
2026-08-22 11:25:47 +02:00
2026-07-14 19:27:16 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-09-07 20:54:18 +12:00
2026-08-31 05:47:04 +12:00
2026-08-31 05:47:04 +12:00
2026-09-07 10:44:30 +02:00
2026-09-07 10:44:30 +02:00
2026-08-08 21:53:20 +12:00
2026-04-26 10:48:47 +02:00
2026-07-14 19:27:16 +02:00
2026-01-16 15:24:35 +01:00
2026-08-08 00:32:31 +02:00
2026-01-16 15:24:35 +01:00
2026-07-14 19:27:17 +02:00
2026-01-16 15:24:35 +01:00
2026-08-09 09:11:40 +02:00
2026-01-16 15:24:35 +01:00
2026-08-09 11:51:23 +02:00
2026-05-13 19:42:11 +02:00
2026-08-21 14:03:02 +02:00
2026-08-04 16:36:23 +12:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-09-07 10:44:30 +02:00
2026-01-16 15:24:35 +01:00
2026-08-08 08:09:45 +02:00
2026-08-06 21:37:40 +02:00
2026-08-09 19:25:56 +02:00
2026-08-06 21:37:40 +02:00
2026-09-03 15:05:22 +02:00
2026-04-19 10:44:52 +02:00
2026-08-04 10:32:25 +12:00
2026-08-04 10:32:25 +12:00
2026-07-17 10:25:49 +02:00
2026-06-20 22:31:06 +12:00
2026-08-13 15:45:15 +02:00
2026-08-11 11:33:28 +12:00
2026-01-16 15:24:35 +01:00
2026-08-24 18:24:30 +02:00
2026-08-14 08:58:36 +02:00
2026-08-28 19:55:29 +02:00
2026-08-12 12:29:56 +02:00
2026-09-07 10:44:30 +02:00
2026-01-16 15:24:35 +01:00
2026-09-05 00:22:35 +02:00
2026-08-06 23:04:27 +12:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-09-05 15:48:28 +02:00
2026-08-22 11:08:02 +02:00
2026-09-07 10:44:30 +02:00
2026-09-07 10:44:30 +02:00
2026-09-05 18:55:14 +02:00
2026-09-05 18:55:14 +02:00
2026-08-11 14:11:00 +02:00
2026-08-06 23:04:27 +12:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-08-25 06:59:02 +12:00
2026-08-12 12:29:56 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-08-16 07:16:33 +02:00
2026-01-16 15:24:35 +01:00
2026-07-31 08:10:34 +02:00
2026-07-17 10:25:49 +02:00
2026-08-08 00:32:31 +02:00
2026-01-16 15:24:35 +01:00
2026-07-17 21:01:26 +02:00
2026-07-17 21:01:26 +02:00
2026-08-09 01:34:22 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-07-17 10:29:13 +02:00
2026-07-17 10:29:13 +02:00
2026-08-12 12:29:56 +02:00
2026-08-01 01:35:51 +12:00
2020-09-07 22:03:40 +02:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-01-16 15:24:35 +01:00
2026-08-13 15:45:15 +02:00
2026-08-08 12:31:45 +02:00
2020-09-07 22:03:40 +02:00
2026-01-16 15:24:35 +01:00
2026-06-11 12:39:43 +12:00
2026-06-11 12:39:43 +12:00