After the implementation of all the points to modify the entities in LibreCAD 3, I noticed few problems when adding new entities to current selection.
Some of them were not selected but stay in blue (have the selected property set to true but were not in the selection entity container), and there was no way to deselect an entity by "goung back" with the selection area after it was selected.

What was done today:
Improve selection in append to current selection mode :

  • entities are removed from selection when re-selected
  • remove entities that aren't anymore in the selection area

To do this I had to create a temporary selection which contains the new selection and a function called on mouse release which add the new selection to the current.

Creation of unit tests

Demo of drag points of implemented entities
drag points of entities

Differences with LibreCAD 2 in the selection

  • You can modify an entity by dragging his points without having to select it (except for the ones which didn't have intersection implemented)
  • Current selection is cleared by default when doing a new selection

A pull request was sent, you can see it here