* if determining the normal raises an exception then fall back to a default value
* when handling a Base::Exception then call its ReportException() function to get as much information as possible
- bring back intended behavior as in FC 0.19:
- if 2 lengths, then midplane is invisible
- if reversed checked, then no symmetric and if symmetric then no reverse
- unify the code for Pad and Pocket (reversed is always visible)
- fix a typo in a bool name
all done by MSVC
I do this since on one hand the readability is in this case really improved and because whenever I made a change, MSVC tries to fix the style and then the diffs are unnecessarily large. Also the MSVC style is almost what we use as the "standard" coding style.
===================================================
Bug:
Subscription/Unsubscription of outside of edit mode parameters was missing.
So changing the edge color from settings required to restart FreeCAD.
Fix:
Subscribe/Unsubscribe from the relevant parameter group
Use the previously added superclass `TaskConstraintOnBoundary` for more
constraints where it's usable.
Currently done:
TaskFemConstraintDisplacement
TaskFemConstraintForce
TaskFemConstraintSpring
TaskFemConstraintFluidBoundary
TaskFemConstraintHeatflux
TaskFemConstraintFixed
TaskFemConstraintTemperature
TaskFemConstraintPressure
Too different:
TaskFemConstraintTransform (single selection)
TaskFemConstraintContact (single selection, two fields)
TaskFemConstraintPlaneRotation (single selection)
(Other constraint tasks, which do not use `addToSelection`)
With this, add/remove buttons for displacement constraint will put the user in a
selection mode if pressed when nothing is selected.
Superclass `TaskFemConstraintOnBoundary` Allows code reuse for other
constraints. We do not need this in `TaskFemConstraints` because it is only used
in a subset of constraints, particularly that applies on only some of the
boundary entities.
TODO: Confirm Undo/Redo works appropriately.
TODO: Optimize `onSelectionChanged()`.