/* This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. */ #ifndef DBANALYZER_H #define DBANALYZER_H #include #include #include "smtreeview.h" class QStandardItemModel; class DbEmptyDialog : public QDialog { Q_OBJECT public: DbEmptyDialog(const QString &caption, QWidget *parent = 0, Qt::WindowFlags f = 0); QStandardItemModel *model() { return mModel; } QSqlDatabase db() { return mDb; } QItemSelectionModel *selectionModel() { return mView->selectionModel(); } public slots: virtual void populate() = 0; virtual void deleteItem() = 0; private: SmTreeView *mView; QStandardItemModel *mModel; QSqlDatabase mDb; }; class EmptyActorsDialog : public DbEmptyDialog { Q_OBJECT public: explicit EmptyActorsDialog(const QString &caption, QWidget *parent = 0, Qt::WindowFlags f = 0); public slots: virtual void populate(); virtual void deleteItem(); }; class EmptyGenresDialog : public DbEmptyDialog{ Q_OBJECT public: explicit EmptyGenresDialog(const QString &caption, QWidget *parent = 0, Qt::WindowFlags f = 0); public slots: virtual void populate(); virtual void deleteItem(); }; class EmptySeriesDialog : public DbEmptyDialog{ Q_OBJECT public: explicit EmptySeriesDialog(const QString &caption, QWidget *parent, Qt::WindowFlags f = 0); public slots: virtual void populate(); virtual void deleteItem(); }; class EmptyPartsDialog : public DbEmptyDialog{ Q_OBJECT public: explicit EmptyPartsDialog(const QString &caption, QWidget *parent, Qt::WindowFlags f = 0); public slots: virtual void populate(); virtual void deleteItem(); }; #endif // DBANALYZER_H