Merge pull request #19142 from hyarion/refactor/add-template-addobject
Add new addObject<T>() function
This commit is contained in:
@@ -123,8 +123,7 @@ private:
|
||||
Base::FileInfo file(EncodedName.c_str());
|
||||
// create new document and add Import feature
|
||||
App::Document* pcDoc = App::GetApplication().newDocument();
|
||||
FemMeshObject* pcFeature = static_cast<FemMeshObject*>(
|
||||
pcDoc->addObject("Fem::FemMeshObject", file.fileNamePure().c_str()));
|
||||
FemMeshObject* pcFeature = pcDoc->addObject<FemMeshObject>(file.fileNamePure().c_str());
|
||||
pcFeature->Label.setValue(file.fileNamePure().c_str());
|
||||
pcFeature->FemMesh.setValuePtr(mesh.release());
|
||||
pcFeature->purgeTouched();
|
||||
@@ -160,8 +159,7 @@ private:
|
||||
std::unique_ptr<FemMesh> mesh(new FemMesh);
|
||||
mesh->read(EncodedName.c_str());
|
||||
|
||||
FemMeshObject* pcFeature = static_cast<FemMeshObject*>(
|
||||
pcDoc->addObject("Fem::FemMeshObject", file.fileNamePure().c_str()));
|
||||
FemMeshObject* pcFeature = pcDoc->addObject<FemMeshObject>(file.fileNamePure().c_str());
|
||||
pcFeature->Label.setValue(file.fileNamePure().c_str());
|
||||
pcFeature->FemMesh.setValuePtr(mesh.release());
|
||||
pcFeature->purgeTouched();
|
||||
@@ -170,8 +168,7 @@ private:
|
||||
#ifdef FC_USE_VTK
|
||||
if (FemPostPipeline::canRead(file)) {
|
||||
|
||||
FemPostPipeline* pcFeature = static_cast<FemPostPipeline*>(
|
||||
pcDoc->addObject("Fem::FemPostPipeline", file.fileNamePure().c_str()));
|
||||
auto* pcFeature = pcDoc->addObject<FemPostPipeline>(file.fileNamePure().c_str());
|
||||
|
||||
pcFeature->Label.setValue(file.fileNamePure().c_str());
|
||||
pcFeature->read(file);
|
||||
@@ -321,8 +318,7 @@ private:
|
||||
}
|
||||
|
||||
FemMeshPy* pShape = static_cast<FemMeshPy*>(pcObj);
|
||||
Fem::FemMeshObject* pcFeature =
|
||||
static_cast<Fem::FemMeshObject*>(pcDoc->addObject("Fem::FemMeshObject", name));
|
||||
Fem::FemMeshObject* pcFeature = pcDoc->addObject<Fem::FemMeshObject>(name);
|
||||
// copy the data
|
||||
pcFeature->FemMesh.setValue(*(pShape->getFemMeshPtr()));
|
||||
pcDoc->recompute();
|
||||
|
||||
@@ -619,7 +619,7 @@ App::DocumentObject* FemVTKTools::readResult(const char* filename, App::Document
|
||||
}
|
||||
}
|
||||
|
||||
App::DocumentObject* mesh = pcDoc->addObject("Fem::FemMeshObject", "ResultMesh");
|
||||
auto* mesh = pcDoc->addObject<Fem::FemMeshObject>("ResultMesh");
|
||||
std::unique_ptr<FemMesh> fmesh(new FemMesh());
|
||||
importVTKMesh(dataset, fmesh.get());
|
||||
static_cast<PropertyFemMesh*>(mesh->getPropertyByName("FemMesh"))->setValuePtr(fmesh.release());
|
||||
|
||||
@@ -2755,7 +2755,7 @@ void CmdFemPostPipelineFromResult::activated(int)
|
||||
// create the pipeline object
|
||||
openCommand(QT_TRANSLATE_NOOP("Command", "Create pipeline from result"));
|
||||
if (foundAnalysis) {
|
||||
pcAnalysis->addObject("Fem::FemPostPipeline", FeatName.c_str());
|
||||
pcAnalysis->addObject<Fem::FemPostPipeline>(FeatName.c_str());
|
||||
}
|
||||
else {
|
||||
doCommand(Doc,
|
||||
|
||||
@@ -95,7 +95,7 @@ private:
|
||||
|
||||
class FemGuiExport ViewProviderFemPostFunctionProvider: public Gui::ViewProviderDocumentObject
|
||||
{
|
||||
PROPERTY_HEADER_WITH_OVERRIDE(FemGui::ViewProviderFemPostFunction);
|
||||
PROPERTY_HEADER_WITH_OVERRIDE(FemGui::ViewProviderFemPostFunctionProvider);
|
||||
|
||||
public:
|
||||
ViewProviderFemPostFunctionProvider();
|
||||
|
||||
@@ -31,7 +31,7 @@ namespace FemGui
|
||||
|
||||
class ViewProviderSetElements: public Gui::ViewProviderGeometryObject
|
||||
{
|
||||
PROPERTY_HEADER_WITH_OVERRIDE(RobotGui::ViewProviderSetElements);
|
||||
PROPERTY_HEADER_WITH_OVERRIDE(FemGui::ViewProviderSetElements);
|
||||
|
||||
public:
|
||||
bool doubleClicked() override;
|
||||
|
||||
@@ -31,7 +31,7 @@ namespace FemGui
|
||||
|
||||
class ViewProviderSetFaces: public Gui::ViewProviderGeometryObject
|
||||
{
|
||||
PROPERTY_HEADER_WITH_OVERRIDE(RobotGui::ViewProviderSetFaces);
|
||||
PROPERTY_HEADER_WITH_OVERRIDE(FemGui::ViewProviderSetFaces);
|
||||
|
||||
public:
|
||||
bool doubleClicked() override;
|
||||
|
||||
@@ -31,7 +31,7 @@ namespace FemGui
|
||||
|
||||
class ViewProviderSetGeometry: public Gui::ViewProviderGeometryObject
|
||||
{
|
||||
PROPERTY_HEADER_WITH_OVERRIDE(RobotGui::ViewProviderSetGeometry);
|
||||
PROPERTY_HEADER_WITH_OVERRIDE(FemGui::ViewProviderSetGeometry);
|
||||
|
||||
public:
|
||||
bool doubleClicked() override;
|
||||
|
||||
Reference in New Issue
Block a user