PartDesign: Change preview parameter to opacity from transparency
This commit is contained in:
@@ -33,10 +33,10 @@ namespace PartDesignGui::StyleParameters {
|
||||
DEFINE_STYLE_PARAMETER(PreviewDressUpColor, Base::Color(1.0F, 0.0F, 1.0F));
|
||||
|
||||
DEFINE_STYLE_PARAMETER(PreviewErrorColor, Base::Color(1.0F, 0.0F, 0.0F));
|
||||
DEFINE_STYLE_PARAMETER(PreviewErrorTransparency, Gui::StyleParameters::Numeric(0.95));
|
||||
DEFINE_STYLE_PARAMETER(PreviewErrorOpacity, Gui::StyleParameters::Numeric(0.05));
|
||||
|
||||
DEFINE_STYLE_PARAMETER(PreviewToolTransparency, Gui::StyleParameters::Numeric(0.95));
|
||||
DEFINE_STYLE_PARAMETER(PreviewShapeTransparency, Gui::StyleParameters::Numeric(0.8));
|
||||
DEFINE_STYLE_PARAMETER(PreviewToolOpacity, Gui::StyleParameters::Numeric(0.05));
|
||||
DEFINE_STYLE_PARAMETER(PreviewShapeOpacity, Gui::StyleParameters::Numeric(0.2));
|
||||
|
||||
DEFINE_STYLE_PARAMETER(PreviewLineWidth, Gui::StyleParameters::Numeric(2));
|
||||
}
|
||||
|
||||
@@ -221,10 +221,13 @@ void ViewProvider::attachPreview()
|
||||
|
||||
auto* styleParameterManager = Base::provideService<Gui::StyleParameters::ParameterManager>();
|
||||
|
||||
pcPreviewShape->lineWidth = styleParameterManager->resolve(StyleParameters::PreviewLineWidth).value;
|
||||
const double opacity = styleParameterManager->resolve(StyleParameters::PreviewToolOpacity).value;
|
||||
const double lineWidth = styleParameterManager->resolve(StyleParameters::PreviewLineWidth).value;
|
||||
|
||||
pcPreviewShape->lineWidth = static_cast<float>(lineWidth);
|
||||
|
||||
pcToolPreview = new PartGui::SoPreviewShape;
|
||||
pcToolPreview->transparency = styleParameterManager->resolve(StyleParameters::PreviewToolTransparency).value;
|
||||
pcToolPreview->transparency = 1.0F - static_cast<float>(opacity);
|
||||
pcToolPreview->color.connectFrom(&pcPreviewShape->color);
|
||||
|
||||
pcPreviewRoot->addChild(pcToolPreview);
|
||||
|
||||
@@ -153,7 +153,9 @@ void ViewProviderBoolean::attachPreview()
|
||||
void ViewProviderBoolean::updatePreview()
|
||||
{
|
||||
const auto* styleParameterManager = Base::provideService<Gui::StyleParameters::ParameterManager>();
|
||||
const float toolTransparency = static_cast<float>(styleParameterManager->resolve(StyleParameters::PreviewToolTransparency).value);
|
||||
|
||||
const double toolOpacity = styleParameterManager->resolve(StyleParameters::PreviewToolOpacity).value;
|
||||
const double toolTransparency = 1.0 - toolOpacity;
|
||||
|
||||
auto boolean = getObject<PartDesign::Boolean>();
|
||||
|
||||
@@ -173,7 +175,7 @@ void ViewProviderBoolean::updatePreview()
|
||||
auto pcToolPreview = new PartGui::SoPreviewShape;
|
||||
updatePreviewShape(toolShape, pcToolPreview);
|
||||
|
||||
pcToolPreview->transparency.setValue(toolTransparency);
|
||||
pcToolPreview->transparency.setValue(static_cast<float>(toolTransparency));
|
||||
pcToolPreview->color.connectFrom(&pcPreviewShape->color);
|
||||
pcToolPreview->lineWidth.connectFrom(&pcPreviewShape->lineWidth);
|
||||
|
||||
@@ -194,7 +196,7 @@ void ViewProviderBoolean::updatePreview()
|
||||
auto pcBaseShapePreview = new PartGui::SoPreviewShape;
|
||||
updatePreviewShape(baseFeature->Shape.getShape(), pcBaseShapePreview);
|
||||
|
||||
pcBaseShapePreview->transparency.setValue(toolTransparency);
|
||||
pcBaseShapePreview->transparency.setValue(static_cast<float>(toolTransparency));
|
||||
pcBaseShapePreview->color.setValue(baseFeatureViewProvider->ShapeAppearance.getDiffuseColor().asValue<SbColor>());
|
||||
pcBaseShapePreview->lineWidth.connectFrom(&pcPreviewShape->lineWidth);
|
||||
|
||||
|
||||
@@ -140,12 +140,14 @@ void ViewProviderDressUp::setErrorState(bool error)
|
||||
{
|
||||
auto* styleParameterManager = Base::provideService<Gui::StyleParameters::ParameterManager>();
|
||||
|
||||
pcPreviewShape->transparency = styleParameterManager
|
||||
->resolve(error ? StyleParameters::PreviewErrorTransparency
|
||||
: StyleParameters::PreviewShapeTransparency)
|
||||
.value;
|
||||
const float opacity =
|
||||
static_cast<float>(styleParameterManager
|
||||
->resolve(error ? StyleParameters::PreviewErrorOpacity
|
||||
: StyleParameters::PreviewShapeOpacity)
|
||||
.value);
|
||||
|
||||
pcPreviewShape->transparency = 1.0F - opacity;
|
||||
pcPreviewShape->color = error
|
||||
? styleParameterManager->resolve(StyleParameters::PreviewErrorColor).asValue<SbColor>()
|
||||
: PreviewColor.getValue().asValue<SbColor>();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user