Refactoring the project, new folders for view and model classes. Added
[emufront] / src / db / dbmediaimagecontainer.h
index fa6488e..fcccaa5 100644 (file)
 #ifndef DBMEDIAIMAGECONTAINER_H
 #define DBMEDIAIMAGECONTAINER_H
 
-//#include "dbquerymodelmanager.h"
 #include "dbmediaimage.h"
 #include "dbfile.h"
-#include "../dataobjects/mediaimagecontainer.h"
-#include "../dataobjects/filepathobject.h"
+#include "mediaimagecontainer.h"
+#include "filepathobject.h"
 
 class DbMediaImageContainer;
 class DbMediaImage;
@@ -36,11 +35,11 @@ class DbMediaImageContainer : public DbFile // DbQueryModelManager
 public:
     DbMediaImageContainer(QObject *parent);
     virtual bool updateDataObjectToModel(const EmuFrontObject *);
-    virtual int insertDataObjectToModel(const EmuFrontObject *);
     virtual bool deleteDataObjectFromModel(QModelIndex *);
     void storeContainers(QList<MediaImageContainer*>, FilePathObject*);
     int getMediaImageContainer(QString checksum) const;
     void filter(int mediaTypeId, int platformId);
+    bool removeFromFilePath(int filePathId) const;
    enum {
         MIC_FileId = 0,
         MIC_FileName,
@@ -55,20 +54,23 @@ public:
         MIC_MediaTypeName
    };
 
-
 protected:
     virtual QString constructSelect(QString whereClause = "") const;
     virtual QString constructSelectById(int id) const;
     virtual QString constructFilterById(int id) const;
     virtual EmuFrontObject* recordToDataObject(const QSqlRecord *);
+    EmuFrontObject* getMediaImageContainerByChecksum(QString checksum);
 private:
     virtual QSqlQueryModel* getData();
-    void linkMediaImagesWithContainer(int, QList<int>);
+    int storeMediaImageContainer(EmuFrontObject *efo);
+    void linkMediaImagesWithContainer(int, QList<EmuFrontObject*>);
+    bool linkMediaImageContainerToPath(const MediaImageContainer*) const;
+    bool linkMediaImageToMediaImageContainer(const MediaImage*, int micId) const;
+    QString getMediaImageContainerName(int filePathId, int micId) const;
     DbMediaImage *dbMediaImage;
     DbFilePath *dbFilePath;
     virtual QString getCountRefsSelect(int) const;
-    // DbSetup *dbSetup;
-    // DbFile *dbFile;
- };
+    virtual QString getDeleteObjectSql() const;
+};
 
 #endif // DBMEDIAIMAGECONTAINER_H