Skip to content

Commit

Permalink
Gui: [skip ci] add method to ignore to merge icon of an extension tha…
Browse files Browse the repository at this point in the history
…t is e.g. used for Part primitives
  • Loading branch information
wwmayer committed Nov 21, 2020
1 parent 20649ec commit f9104f5
Show file tree
Hide file tree
Showing 3 changed files with 10 additions and 1 deletion.
3 changes: 2 additions & 1 deletion src/Gui/ViewProvider.cpp
Expand Up @@ -312,7 +312,8 @@ QIcon ViewProvider::mergeOverlayIcons (const QIcon & orig) const
QIcon overlayedIcon = orig;

for (Gui::ViewProviderExtension* ext : vector) {
overlayedIcon = ext->extensionMergeOverlayIcons(overlayedIcon);
if (!ext->ignoreOverlayIcon())
overlayedIcon = ext->extensionMergeOverlayIcons(overlayedIcon);
}

return overlayedIcon;
Expand Down
7 changes: 7 additions & 0 deletions src/Gui/ViewProviderExtension.h
Expand Up @@ -94,6 +94,12 @@ class GuiExport ViewProviderExtension : public App::Extension
//update data of extended opject
virtual void extensionUpdateData(const App::Property*);

void setIgnoreOverlayIcon(bool on) {
m_ignoreOverlayIcon = on;
}
bool ignoreOverlayIcon() const {
return m_ignoreOverlayIcon;
}
virtual QIcon extensionMergeOverlayIcons(const QIcon & orig) const {return orig;}

virtual void extensionStartRestoring() {}
Expand All @@ -103,6 +109,7 @@ class GuiExport ViewProviderExtension : public App::Extension
virtual bool extensionGetDetailPath(const char *, SoFullPath *, SoDetail *&) const {return false;}

private:
bool m_ignoreOverlayIcon = false;
//Gui::ViewProviderDocumentObject* m_viewBase = nullptr;
};

Expand Down
1 change: 1 addition & 0 deletions src/Mod/Part/Gui/ViewProviderPrimitive.cpp
Expand Up @@ -52,6 +52,7 @@ PROPERTY_SOURCE(PartGui::ViewProviderPrimitive, PartGui::ViewProviderPart)
ViewProviderPrimitive::ViewProviderPrimitive()
{
extension.initExtension(this);
extension.setIgnoreOverlayIcon(true);
}

ViewProviderPrimitive::~ViewProviderPrimitive()
Expand Down

0 comments on commit f9104f5

Please sign in to comment.