Files
2026-07-12 14:34:52 +04:00

35 lines
853 B
C++

#ifndef MOVIES_MODEL_H
#define MOVIES_MODEL_H
#include "base_sql_table_model.h"
class MoviesModel : public BaseSqlTableModel {
Q_OBJECT
public:
// Enum for columns
enum MoviesColumns { Id, Title, GenreId, Duration };
public:
explicit MoviesModel(QObject *parent, const QSqlDatabase &database);
// Initialize the model
void initialize();
// Overlooking class BaseSqlTableModel methods
QVariant headerData(int section, Qt::Orientation orientation,
int role = Qt::DisplayRole) const override;
inline bool isCompleteDatabaseFiltering() const final { return true; };
protected:
QString createMultiColumnFilter(const QString &filter) const final;
private:
bool buildGenreIdFilterCondition(const QString &inFilter,
QString &outFilter) const;
};
#endif // MOVIES_MODEL_H