+ add class ViewProviderPrimitive to avoid to re-implement setEdit/unsetEdit methods for each sub-class separately
+ avoid using global variables
+ when editing a feature directly pass it to the dialogs
+ when editing a feature then do not use active document as this could point to the wrong object
+ fix undo/redo message
+ re-add '3D View' button to location dialog
fixes https://tracker.freecadweb.org/view.php?id=3857
Currently primitives of the Part WB can only be created suing a dialog. Editing is not possible that way.
This PR makes the first step in achieving this:
- Helices can now be edited using the same dialog ans when created
- New location dialog. The Gui::LocationWidget used there is not aware of the rotation angle and it treats the rotation axis as direction. To fix this, I set changed the dialog so that one can define every parameter as in the PartDesign attacher dialog (Placement, rotation axis and rotation angle separately). Another reason for this change was that one could not use the location dialog, fill it with the placement properties of the object, and close the dialog without any change. Because of the missing angle info the objects was then always rotated despite nothing was changed.
If this PR goes in, I will extend it for the other primitives.
Todo for the future: allow a preview of the changes made in the dialog. (I could not find out how this is done.)
The path to the icons is added to `AppPartGui.cpp`
using `Gui::BitmapFactory().addPath()`, so the icons are found
automatically in their new directories.