X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=src%2Fmodels%2Femufrontquerymodel.h;h=216615c14aaff19dfa486e86e8eb3f081a1a63dc;hb=HEAD;hp=ca64d270bc0500ccbddb5f10a471512e207625fb;hpb=6643f19481801ff05ae13768934d2093235886a7;p=emufront
diff --git a/src/models/emufrontquerymodel.h b/src/models/emufrontquerymodel.h
index ca64d27..216615c 100644
--- a/src/models/emufrontquerymodel.h
+++ b/src/models/emufrontquerymodel.h
@@ -17,27 +17,42 @@
**
** You should have received a copy of the GNU General Public License
** along with EmuFront. If not, see .
-*/#ifndef EMUFRONTQUERYMODEL_H
+*/
+
+#ifndef EMUFRONTQUERYMODEL_H
#define EMUFRONTQUERYMODEL_H
#include
class EmuFrontObject;
+class Platform;
+class MediaType;
class EmuFrontQueryModel : public QSqlQueryModel
{
Q_OBJECT
+
public:
EmuFrontQueryModel(QObject *parent = 0);
- EmuFrontObject* getObject(int id) const;
-
-signals:
-
-public slots:
+ EmuFrontObject* getDataObject(int id);
+ EmuFrontObject* getDataObject(const QModelIndex &index);
+ EmuFrontObject* getObject(int row);
+ static int getCurrentTimeStamp();
protected:
QString tableName;
QList editableColumns;
+ void filterDataObjects(QList filter);
+ QString constructWhereByFilters(QList filters);
+ EmuFrontObject* getDataObject(QString filter);
+ virtual void filterById(int id);
+ void clearFilters();
+ virtual EmuFrontObject* recordToDataObject(const QSqlRecord* ) = 0;
+ virtual QString constructFilterById(int id) const = 0;
+ virtual QString constructSelect(QString whereClause = "") const = 0;
+
+private:
+ EmuFrontObject* getFilteredDataObject();
};
#endif // EMUFRONTQUERYMODEL_H