* fix several linter warnings
* remove code that cannot be executed: inside the constructor it cannot ever happen that getObject()
returns a valid object
* in ViewProviderGeometryObject::handleChangedPropertyName call the method of the direct base class
as otherwise this may break the mechanism in the future
* Shape is a property of an extension module -> move its handling to ViewProviderPartExt
The explicit activation of the MaterialWorkbench breaks the toolbars layout for every start. When fixing it manually it will be broken
again after the next start.
Because the core doesn't depend on the Material module it's a no-go to add an explicit runtime dependency to the corresponding workbench.
Since the Part module depends on the Materials module and the PartGui on MatGui the correct way is to let Part an PartGui load their
dependencies.
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.
* FEM: remove calculix from solvers
* FEM: remove calculix from joint with ccxtools if branches
* FEM: remove calculix from its if
* FEM: fix cxx typo in translations
* FEM: fix cxx typo in classes name
* FEM: fix ccx typo in shortcuts
* FEM: convert FEM_*CcxTools to CamelCase
* FEM: remove tests related to calculix
* FEM: remove test_solver_calculix.py from Fem/CMakeLists.txt
* FEM: convert all 'CalculiXccxTools' to 'CalculiXCcxTools'
* FEM: revert changes in all *_*.ts files
* FEM: convert 'SolverCcxtools' to 'SolverCcxTools'
* FEM: convert remaining 'Ccxtools' to 'CcxTools'
This fixes a regression of PR #11266 that dropped the case where neither the option 'Ignore project unit system and use the default' is set
nor an active document exists. In this case nothing happens even if the user changed the unit system.
* fix hard crash in MainWindow::_updateActions() if no MDI view exists
* in MDIView::buildWindowTitle() use the label of the document because this changes when saving it while the name is immutable
* fix const correctness in MDIView::buildWindowTitle()
* do not set the modified flag of the main window in MDIView::buildWindowTitle() but in the calling instance
* move setting the main window title to Application::viewActivated to reduce code duplication
* fix missing application name if FreeCADGui is loaded as Python module
* Fix various typos throughout the codebase
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>