- Remove currently present magic numbers
- Hard type enums, so magic numbers can no longer be introduced. We don't want people to introduce magic numbers.
Every basic data type is stored in Base module, color is standing out as
one that does not. Moving it to Base opens possibilities to integrate it
better with the rest of FreeCAD.
* [TD]allow DrawViewAnno to be attached to another view
* [TD]allow image and spreadsheet attach to view
* [TD]ensure correct parent in scene
* [TD]refactor command helpers to separate file
- gathering the helpers in one place
- helper redundancy to be address in another change
* [TD]create symbol, spreadsheet, image with parent
* [TD]fix claimChildren for some views
- also includes many lint fixes
- separate validation, geometry and reference handling into
individual files
- improve 3d reference geometry handling
- eliminate duplicate dim creation code
- add Dimension reference repair dialog
- Refactor formatting out of DrawViewDimension
- move dimension repaint control to ViewProvider
* reimplement ViewProviderDimension::setupContextMenu() to show menu item to start editing it
* fix TaskDimension::accept() and TaskDimension::reject()
also fix issue that tolerance could be set despite theoretically exact is true under some circumstances
also some wording improvements
also a minor fix to use 0.0 instead of DBL_MIN
- the setting "Standard and Style" only affects new dimensions, thus it must be italic
- fix bug that the Property 'LockPosition' appears for dimensions -> this is an option for views and thus must be hidden for dimensions
- since tolerances are in the vast majority fractions of a millimeter/inch, set its stepsize to 0.1
(I hope I did it right in handleChangedPropertyType.)
- fix inconsistent newlines in TaskBalloon.h
- improve wording for a heading
At the moment one has to specify the LineGroup as string. But one doesn't know what groups exist. So one has to check the Wiki, learn there where the groups are defined and then open the definition file with a text editor.
This PR simplifies this by reading the existing groups out of the definition file and fill the combobox accordingly.
It also give the user info what the selected LineGroup defines via the tooltip.
A nice side effect is that no typos can occur since you don't have to enter the LineGroup name as text.