diff --git a/src/Mod/Fem/Gui/DlgSettingsFem.ui b/src/Mod/Fem/Gui/DlgSettingsFem.ui index e626a7647e..faf303e618 100644 --- a/src/Mod/Fem/Gui/DlgSettingsFem.ui +++ b/src/Mod/Fem/Gui/DlgSettingsFem.ui @@ -173,6 +173,22 @@ + + + + Use materials from .FreeCAD/Materials directory + + + true + + + UseMaterialsFromConfigDir + + + Mod/Fem + + + diff --git a/src/Mod/Fem/Gui/DlgSettingsFemImp.cpp b/src/Mod/Fem/Gui/DlgSettingsFemImp.cpp index a2c3153310..b749251626 100644 --- a/src/Mod/Fem/Gui/DlgSettingsFemImp.cpp +++ b/src/Mod/Fem/Gui/DlgSettingsFemImp.cpp @@ -47,6 +47,7 @@ void DlgSettingsFemImp::saveSettings() fc_ext_editor->onSave(); fc_ccx_binary->onSave(); cb_use_built_in_materials->onSave(); + cb_use_mat_from_config_dir->onSave(); fc_custom_mat_dir->onSave(); } @@ -56,6 +57,7 @@ void DlgSettingsFemImp::loadSettings() fc_ext_editor->onRestore(); fc_ccx_binary->onRestore(); cb_use_built_in_materials->onRestore(); + cb_use_mat_from_config_dir->onRestore(); fc_custom_mat_dir->onRestore(); } diff --git a/src/Mod/Fem/MechanicalMaterial.py b/src/Mod/Fem/MechanicalMaterial.py index 1d34576f13..a714c9f12a 100644 --- a/src/Mod/Fem/MechanicalMaterial.py +++ b/src/Mod/Fem/MechanicalMaterial.py @@ -252,8 +252,10 @@ class _MechanicalMaterialTaskPanel: system_mat_dir = FreeCAD.getResourceDir() + "/Mod/Material/StandardMaterial" self.add_mat_dir(system_mat_dir, ":/icons/freecad.svg") - user_mat_dirname = FreeCAD.getUserAppDataDir() + "Materials" - self.add_mat_dir(user_mat_dirname, ":/icons/preferences-general.svg") + use_mat_from_config_dir = self.fem_preferences.GetBool("UseMaterialsFromConfigDir") + if use_mat_from_config_dir: + user_mat_dirname = FreeCAD.getUserAppDataDir() + "Materials" + self.add_mat_dir(user_mat_dirname, ":/icons/preferences-general.svg") self.fem_preferences = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Mod/Fem") custom_mat_dir = self.fem_preferences.GetString("CustomMaterialsDir","")