inherit FemAnalysis from DocumentObjectGroup and remove Member property

This commit is contained in:
wmayer
2017-10-11 22:04:07 +02:00
parent 8f8f890259
commit ce6809415b
35 changed files with 112 additions and 142 deletions

View File

@@ -52,7 +52,7 @@ using namespace FemGui;
/* TRANSLATOR FemGui::ViewProviderFemAnalysis */
PROPERTY_SOURCE(FemGui::ViewProviderFemAnalysis, Gui::ViewProviderDocumentObject)
PROPERTY_SOURCE(FemGui::ViewProviderFemAnalysis, Gui::ViewProviderDocumentObjectGroup)
ViewProviderFemAnalysis::ViewProviderFemAnalysis()
@@ -75,7 +75,7 @@ bool ViewProviderFemAnalysis::doubleClicked(void)
std::vector<App::DocumentObject*> ViewProviderFemAnalysis::claimChildren(void)const
{
return static_cast<Fem::FemAnalysis*>(getObject())->Member.getValues();
return Gui::ViewProviderDocumentObjectGroup::claimChildren();
}
bool ViewProviderFemAnalysis::canDelete(App::DocumentObject* obj) const
@@ -91,22 +91,12 @@ std::vector<std::string> ViewProviderFemAnalysis::getDisplayModes(void) const
void ViewProviderFemAnalysis::hide(void)
{
Gui::ViewProviderDocumentObject::hide();
std::vector<App::DocumentObject*> temp(static_cast<Fem::FemAnalysis*>
(getObject())->Member.getValues());
for (auto it : temp) {
Gui::Application::Instance->hideViewProvider(it);
}
Gui::ViewProviderDocumentObjectGroup::hide();
}
void ViewProviderFemAnalysis::show(void)
{
Gui::ViewProviderDocumentObject::show();
std::vector<App::DocumentObject*> temp(static_cast<Fem::FemAnalysis*>
(getObject())->Member.getValues());
for (auto it : temp) {
Gui::Application::Instance->showViewProvider(it);
}
Gui::ViewProviderDocumentObjectGroup::show();
}
void ViewProviderFemAnalysis::setupContextMenu(QMenu* menu, QObject* , const char* )
@@ -150,7 +140,7 @@ bool ViewProviderFemAnalysis::setEdit(int ModNum)
return false;
}
else {
return Gui::ViewProviderDocumentObject::setEdit(ModNum);
return Gui::ViewProviderDocumentObjectGroup::setEdit(ModNum);
}
}
@@ -161,7 +151,7 @@ void ViewProviderFemAnalysis::unsetEdit(int ModNum)
Gui::Control().closeDialog();
}
else {
Gui::ViewProviderDocumentObject::unsetEdit(ModNum);
Gui::ViewProviderDocumentObjectGroup::unsetEdit(ModNum);
}
}
@@ -214,15 +204,7 @@ bool ViewProviderFemAnalysis::canDragObject(App::DocumentObject* obj) const
void ViewProviderFemAnalysis::dragObject(App::DocumentObject* obj)
{
Fem::FemAnalysis* analyze = static_cast<Fem::FemAnalysis*>(getObject());
std::vector<App::DocumentObject*> fem = analyze->Member.getValues();
for (std::vector<App::DocumentObject*>::iterator it = fem.begin(); it != fem.end(); ++it) {
if (*it == obj) {
fem.erase(it);
analyze->Member.setValues(fem);
break;
}
}
ViewProviderDocumentObjectGroup::dragObject(obj);
}
bool ViewProviderFemAnalysis::canDropObjects() const
@@ -237,10 +219,7 @@ bool ViewProviderFemAnalysis::canDropObject(App::DocumentObject* obj) const
void ViewProviderFemAnalysis::dropObject(App::DocumentObject* obj)
{
Fem::FemAnalysis* analyze = static_cast<Fem::FemAnalysis*>(getObject());
std::vector<App::DocumentObject*> fem = analyze->Member.getValues();
fem.push_back(obj);
analyze->Member.setValues(fem);
ViewProviderDocumentObjectGroup::dropObject(obj);
}
// Python feature -----------------------------------------------------------------------