2 // Copyright 2010 Mikko Keinänen
4 // This file is part of EmuFront.
7 // EmuFront is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
12 // EmuFront is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU General Public License for more details.
17 // You should have received a copy of the GNU General Public License
18 // along with EmuFront. If not, see <http://www.gnu.org/licenses/>.
20 #include "dbmediaimagecontainer.h"
22 DbMediaImageContainer::DbMediaImageContainer(QObject *parent)
23 : DbQueryModelManager(parent)
28 bool DbMediaImageContainer::updateDataObjectToModel(const EmuFrontObject *efo)
33 bool DbMediaImageContainer::insertDataObjectToModel(const EmuFrontObject *efo)
38 bool DbMediaImageContainer::deleteDataObjectFromModel(QModelIndex *i)
43 int DbMediaImageContainer::countDataObjectRefs(int id) const
48 QString DbMediaImageContainer::constructSelect(QString whereClause) const
53 QString DbMediaImageContainer::constructSelectById(int id) const
58 EmuFrontObject* DbMediaImageContainer::recordToDataObject(const QSqlRecord *)
63 QSqlQueryModel* DbMediaImageContainer::getData()
68 int DbMediaImageContainer::getMediaImageContainer(QString checksum) const
73 void DbMediaImageContainer::storeContainers(QList<MediaImageContainer *> lst)
75 foreach(MediaImageContainer *mic, lst)
77 QList<MediaImage*> images = mic->getMediaImages();
78 if (getMediaImageContainer(mic->getCheckSum()) >= 0)
80 // this is a new media image container, lets build a list
81 // of media image id's for this container
82 QList<int> ids = dbMediaImage->storeMediaImages(images);
86 // store media image to id
88 // get last insert id of stored media image
90 // link all the ids in ids-list to media image id