Merge pull request #19142 from hyarion/refactor/add-template-addobject

Add new addObject<T>() function
This commit is contained in:
Chris Hennes
2025-02-11 09:42:47 -06:00
committed by GitHub
95 changed files with 335 additions and 340 deletions

View File

@@ -69,8 +69,8 @@ private:
{
try {
Base::FileInfo file(Name);
Spreadsheet::Sheet* pcSheet = static_cast<Spreadsheet::Sheet*>(
pcDoc->addObject("Spreadsheet::Sheet", file.fileNamePure().c_str()));
auto filename = file.fileNamePure().c_str();
auto* pcSheet = pcDoc->addObject<Spreadsheet::Sheet>(filename);
pcSheet->importFromFile(Name, '\t', '"', '\\');
pcSheet->execute();

View File

@@ -200,9 +200,8 @@ void CmdSpreadsheetImport::activated(int iMsg)
&selectedFilter);
if (!fileName.isEmpty()) {
std::string FeatName = getUniqueObjectName("Spreadsheet");
Sheet* sheet = freecad_dynamic_cast<Sheet>(
App::GetApplication().getActiveDocument()->addObject("Spreadsheet::Sheet",
FeatName.c_str()));
auto* doc = App::GetApplication().getActiveDocument();
Sheet* sheet = doc->addObject<Spreadsheet::Sheet>(FeatName.c_str());
if (sheet) {
char delim, quote, escape;
std::string errMsg = "Import";