bool returned on loadObjects()

git-svn-id: http://find-object.googlecode.com/svn/trunk/find_object@41 620bd6b2-0a58-f614-fd9a-1bd335dccda9
This commit is contained in:
matlabbe 2011-11-23 21:52:17 +00:00
parent b1b769ec78
commit 26cf597da3
2 changed files with 26 additions and 22 deletions

View File

@ -89,35 +89,39 @@ void MainWindow::closeEvent(QCloseEvent * event)
QMainWindow::closeEvent(event); QMainWindow::closeEvent(event);
} }
void MainWindow::loadObjects(const QString & fileName) bool MainWindow::loadObjects(const QString & fileName)
{ {
QFile file(fileName); QFile file(fileName);
file.open(QIODevice::ReadOnly); if(file.open(QIODevice::ReadOnly))
QDataStream in(&file);
while(!in.atEnd())
{ {
ObjWidget * obj = new ObjWidget(); QDataStream in(&file);
obj->load(in); while(!in.atEnd())
bool alreadyLoaded = false;
for(int i=0; i<objects_.size(); ++i)
{ {
if(objects_.at(i)->id() == obj->id()) ObjWidget * obj = new ObjWidget();
obj->load(in);
bool alreadyLoaded = false;
for(int i=0; i<objects_.size(); ++i)
{ {
alreadyLoaded = true; if(objects_.at(i)->id() == obj->id())
break; {
alreadyLoaded = true;
break;
}
}
if(!alreadyLoaded)
{
objects_.append(obj);
showObject(obj);
}
else
{
delete obj;
} }
} }
if(!alreadyLoaded) file.close();
{ return true;
objects_.append(obj);
showObject(obj);
}
else
{
delete obj;
}
} }
file.close(); return false;
} }
void MainWindow::saveObjects(const QString & fileName) void MainWindow::saveObjects(const QString & fileName)

View File

@ -26,7 +26,7 @@ public:
MainWindow(Camera * camera = 0, QWidget * parent = 0); MainWindow(Camera * camera = 0, QWidget * parent = 0);
virtual ~MainWindow(); virtual ~MainWindow();
void loadObjects(const QString & fileName); bool loadObjects(const QString & fileName);
void saveObjects(const QString & fileName); void saveObjects(const QString & fileName);
protected: protected: