#ifndef DATABASEVIEW_H #define DATABASEVIEW_H #include #include #include #include #include #include "database.h" class SelectColumnsDialog : public QDialog { Q_OBJECT QListWidget *m_listWidget; public: SelectColumnsDialog(QWidget *parent = nullptr); void setColumns(QStringList columns); QStringList selectedColumns(); }; class DataBaseView : public QWidget { Q_OBJECT Database *m_database; QTableView *m_tableView; QSqlQueryModel *m_model; public: explicit DataBaseView(Database *database, QWidget *parent = nullptr); ~DataBaseView(); public slots: void selectColumns(); void loadDatabase(); void itemActivated(const QModelIndex &index); protected: void prepareQuery(const QStringList &columns); signals: void loadFile(QString file); }; #endif // DATABASEVIEW_H