diff --git a/src/Mod/Part/Gui/ViewProviderBoolean.cpp b/src/Mod/Part/Gui/ViewProviderBoolean.cpp index 22a9c8a4e..d73afe296 100644 --- a/src/Mod/Part/Gui/ViewProviderBoolean.cpp +++ b/src/Mod/Part/Gui/ViewProviderBoolean.cpp @@ -124,10 +124,20 @@ void ViewProviderBoolean::updateData(const App::Property* prop) applyColor(hist[0], colBase, colBool); setColor = true; } + else if (!colBase.empty() && colBase[0] != this->ShapeColor.getValue()) { + colBase.resize(baseMap.Extent(), colBase[0]); + applyColor(hist[0], colBase, colBool); + setColor = true; + } if (colTool.size() == toolMap.Extent()) { applyColor(hist[1], colTool, colBool); setColor = true; } + else if (!colTool.empty() && colTool[0] != this->ShapeColor.getValue()) { + colTool.resize(toolMap.Extent(), colTool[0]); + applyColor(hist[1], colTool, colBool); + setColor = true; + } if (setColor) this->DiffuseColor.setValues(colBool); } @@ -187,6 +197,11 @@ void ViewProviderMultiFuse::updateData(const App::Property* prop) applyColor(hist[index], colBase, colBool); setColor = true; } + else if (!colBase.empty() && colBase[0] != this->ShapeColor.getValue()) { + colBase.resize(baseMap.Extent(), colBase[0]); + applyColor(hist[index], colBase, colBool); + setColor = true; + } } if (setColor) @@ -248,6 +263,11 @@ void ViewProviderMultiCommon::updateData(const App::Property* prop) applyColor(hist[index], colBase, colBool); setColor = true; } + else if (!colBase.empty() && colBase[0] != this->ShapeColor.getValue()) { + colBase.resize(baseMap.Extent(), colBase[0]); + applyColor(hist[index], colBase, colBool); + setColor = true; + } } if (setColor)