-// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE
+// Copyright (C) 2007-2023 CEA/DEN, EDF R&D, OPEN CASCADE
//
// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
*/
bool LightApp_Study::createDocument( const QString& theStr )
{
- setStudyName( QString( "Study%1" ).arg( LightApp_Application::studyId() ) );
-
// create myRoot
setRoot( new LightApp_RootObject( this ) );
{
myDriver->ClearDriverContents();
// create files for models from theFileName
- if( !openStudyData(theFileName))
+ if( !openStudyData(theFileName, 0)) // 0 means persistence file
return false;
setRoot( new LightApp_RootObject( this ) ); // create myRoot
bool LightApp_Study::loadDocument( const QString& theStudyName )
{
myDriver->ClearDriverContents();
- if( !openStudyData(theStudyName))
+ if( !openStudyData(theStudyName, 0)) // 0 means persistence file
return false;
setRoot( new LightApp_RootObject( this ) ); // create myRoot
listOfFiles.clear();
aModel->saveAs( theFileName, this, listOfFiles );
if ( !listOfFiles.isEmpty() )
- saveModuleData(aModel->module()->name(), listOfFiles);
+ saveModuleData(aModel->module()->name(), 0, // 0 means persistence file
+ listOfFiles);
// Remove files if necessary. File is removed if it was in the list of files before
// saving and it is not contained in the list after saving. This provides correct
std::set<std::string> aNewNames;
std::set<std::string> toRemove;
- int i, n;
+ size_t i, n;
for( i = 0, n = aNewList.size(); i < n; i++ )
aNewNames.insert( aNewList[ i ] );
for( i = 0, n = anOldList.size(); i < n; i++ )
myDriver->RemoveFiles( toRemoveList, isMultiFile );
}
- bool res = saveStudyData(theFileName);
+ bool res = saveStudyData(theFileName, 0); // 0 means persistence file
res = res && CAM_Study::saveDocumentAs( theFileName );
//SRN: BugID IPAL9377, removed usage of uninitialized variable <res>
if ( res )
listOfFiles.clear();
aModel->save( listOfFiles );
- saveModuleData(aModel->module()->name(), listOfFiles);
+ saveModuleData(aModel->module()->name(), 0, // 0 means persistence file
+ listOfFiles);
}
- bool res = saveStudyData(studyName());
+ bool res = saveStudyData(studyName(), 0); // 0 means persistence file
res = res && CAM_Study::saveDocument();
if (res)
emit saved( this );
/*!
Creates SComponent for module, necessary for SalomeApp study
*/
-void LightApp_Study::addComponent(const CAM_DataModel* dm)
+void LightApp_Study::addComponent(const CAM_DataModel* /*dm*/)
{
}
/*!
Saves list file for module 'theModuleName'
*/
-void LightApp_Study::saveModuleData(QString theModuleName, QStringList theListOfFiles)
+void LightApp_Study::saveModuleData(QString theModuleName, int type, QStringList theListOfFiles)
{
int aNb = theListOfFiles.count();
if ( aNb == 0 )
for ( QStringList::Iterator it = theListOfFiles.begin(); it != theListOfFiles.end(); ++it ) {
if ( (*it).isEmpty() )
continue;
- aListOfFiles[anIndex] = (*it).toLatin1().constData();
+ aListOfFiles[anIndex] = (*it).toUtf8().constData();
anIndex++;
}
- myDriver->SetListOfFiles(theModuleName.toLatin1().constData(), aListOfFiles);
+ SetListOfFiles(theModuleName.toLatin1().constData(), type, aListOfFiles);
}
/*!
Gets list of file for module 'theModuleNam'
*/
-void LightApp_Study::openModuleData(QString theModuleName, QStringList& theListOfFiles)
+void LightApp_Study::openModuleData(QString theModuleName, int /*type*/, QStringList& theListOfFiles)
{
std::vector<std::string> aListOfFiles = myDriver->GetListOfFiles(theModuleName.toLatin1().constData());
- int i, aLength = aListOfFiles.size() - 1;
+ int i, aLength = (int)aListOfFiles.size() - 1; //!< TODO: conversion size_t to int
if (aLength < 0)
return;
/*!
Saves data from study
*/
-bool LightApp_Study::saveStudyData( const QString& theFileName )
+bool LightApp_Study::saveStudyData( const QString& theFileName, int /*type*/ )
{
ModelList list; dataModels( list );
SUIT_ResourceMgr* resMgr = application()->resourceMgr();
return false;
bool isMultiFile = resMgr->booleanValue( "Study", "multi_file", false );
- bool aRes = myDriver->SaveDatasInFile(theFileName.toLatin1(), isMultiFile);
+ bool aRes = myDriver->SaveDatasInFile(theFileName.toUtf8(), isMultiFile);
return aRes;
}
/*!
Opens data for study
*/
-bool LightApp_Study::openStudyData( const QString& theFileName )
+bool LightApp_Study::openStudyData( const QString& theFileName, int /*type*/ )
{
SUIT_ResourceMgr* resMgr = application()->resourceMgr();
if( !resMgr )
return false;
bool isMultiFile = resMgr->booleanValue( "Study", "multi_file", false );
- bool aRes = myDriver->ReadDatasFromFile(theFileName.toLatin1(), isMultiFile);
+ bool aRes = myDriver->ReadDatasFromFile(theFileName.toUtf8(), isMultiFile);
return aRes;
}
return false;
QStringList listOfFiles;
- openModuleData(dm->module()->name(), listOfFiles);
+ openModuleData(dm->module()->name(), 0, // 0 means persistence file
+ listOfFiles);
if (dm && dm->open(studyName, this, listOfFiles)) {
// Something has been read -> create data model tree
LightApp_DataModel* aDM = dynamic_cast<LightApp_DataModel*>( dm );
\return list of files necessary for module
\param theModuleName - name of module
*/
-std::vector<std::string> LightApp_Study::GetListOfFiles(const char* theModuleName) const
+std::vector<std::string> LightApp_Study::GetListOfFiles(const char* theModuleName, int /*type*/) const
{
- std::vector<std::string> aListOfFiles;
- aListOfFiles = myDriver->GetListOfFiles(theModuleName);
- return aListOfFiles;
+ return myDriver->GetListOfFiles(theModuleName);
}
/*!
\param theModuleName - name of module
\param theListOfFiles - list of files
*/
-void LightApp_Study::SetListOfFiles (const char* theModuleName, const std::vector<std::string> theListOfFiles)
+void LightApp_Study::SetListOfFiles (const char* theModuleName, int /*type*/, const std::vector<std::string> theListOfFiles)
{
myDriver->SetListOfFiles(theModuleName, theListOfFiles);
}
/*!
Removes temporary files
*/
-void LightApp_Study::RemoveTemporaryFiles (const char* theModuleName, const bool isMultiFile) const
+void LightApp_Study::RemoveTemporaryFiles (const char* theModuleName, bool isMultiFile, bool /*force*/)
{
if (isMultiFile)
return;