Uses new material system for appearance
Each feature object now has a property called ShapeMaterial that
describes its physical properties. If it has a shape, it has a
material.
The ShapeColor attribute is replaced by a ShapeAppearance attribute.
This is a material list that describes all appearance properties, not
just diffuse color. As a list in can be used for all elements of a
shape, such as edges and faces.
A new widget is provided to allow the user to select materials in a
consistent fashion. It can also launch the material editor with its
more advanced capabilities.
* On lines where the variable type is obvious from inspection, avoid repeating the type using auto.
* When possible use a ranged for loop instead of begin() and end() iterators
I'm still finding typos in the source code. I propose that you keep this PR open prior ro relaese and then merge so that if I find other typos in the meantime they will be part this release.
The new selection model is not usable for the OriginFeature's view
provider due to from one side it doesn't really have any subfeatures, so
it won't be really needed, and on the other side we will have to use
SoFCSelection because in that case it isn't possible to implement
highlighting in any sane way (unless we will reimplement drawing ourselfs).
- Share the code of Gui::ViewProviderPlanes and Gui::ViewProviderLine
in Gui::ViewProviderOriginFeature
- Add support for coloring and transparencing the OriginFeatures by
ViewProviderGeometryObject means.