[TD]remove highlight on deletion of detail

This commit is contained in:
wandererfan
2020-03-25 18:22:10 -04:00
committed by WandererFan
parent 14e6b19e75
commit 13661ddf21
3 changed files with 21 additions and 7 deletions

View File

@@ -117,7 +117,6 @@ DrawViewDetail::DrawViewDetail()
//hide Properties not relevant to DVDetail
Direction.setStatus(App::Property::ReadOnly,true); //Should be same as BaseView
Rotation.setStatus(App::Property::ReadOnly,true); //same as BaseView
}
DrawViewDetail::~DrawViewDetail()
@@ -420,6 +419,17 @@ bool DrawViewDetail::debugDetail(void) const
return result;
}
void DrawViewDetail::unsetupObject()
{
// Base::Console().Message("DVD::unsetupObject()\n");
App::DocumentObject* baseObj = BaseView.getValue();
DrawView* base = dynamic_cast<DrawView*>(baseObj);
if (base != nullptr) {
base->requestPaint();
}
}
void DrawViewDetail::getParameters()
{

View File

@@ -50,7 +50,7 @@ namespace TechDraw
class TechDrawExport DrawViewDetail : public DrawViewPart
{
PROPERTY_HEADER(Part::DrawViewDetail);
PROPERTY_HEADER_WITH_OVERRIDE(Part::DrawViewDetail);
public:
/// Constructor
@@ -62,12 +62,14 @@ public:
App::PropertyFloat Radius;
App::PropertyString Reference;
virtual short mustExecute() const;
virtual App::DocumentObjectExecReturn *execute(void);
virtual void onChanged(const App::Property* prop);
virtual const char* getViewProviderName(void) const {
virtual short mustExecute() const override;
virtual App::DocumentObjectExecReturn *execute(void) override;
virtual void onChanged(const App::Property* prop) override;
virtual const char* getViewProviderName(void) const override {
return "TechDrawGui::ViewProviderViewPart";
}
virtual void unsetupObject() override;
void detailExec(TopoDS_Shape s,
DrawViewPart* baseView,

View File

@@ -934,7 +934,9 @@ std::vector<DrawViewDetail*> DrawViewPart::getDetailRefs(void) const
std::vector<App::DocumentObject*> inObjs = getInList();
for (auto& o:inObjs) {
if (o->getTypeId().isDerivedFrom(DrawViewDetail::getClassTypeId())) {
result.push_back(static_cast<TechDraw::DrawViewDetail*>(o));
if (!o->isRemoving()) {
result.push_back(static_cast<TechDraw::DrawViewDetail*>(o));
}
}
}
return result;