pgLab/pglab/PgLabTableViewHelper.h
eelke f0e5488ce0 List of databases and roles moved to a "Server tab" within the database window.
Opened by selecting "Inspect Server" from the menu.
2021-04-10 14:27:04 +02:00

40 lines
907 B
C++

#pragma once
#include <QTableWidget>
#include <QSortFilterProxyModel>
#include "PgLabTableView.h"
template <typename TableModel>
class PgLabTableViewHelper {
public:
PgLabTableViewHelper(QWidget * parent)
{
m_tableView = new PgLabTableView(parent);
m_dataModel = new TableModel(parent);
m_sortFilter = new QSortFilterProxyModel(parent);
m_sortFilter->setSourceModel(m_dataModel);
m_tableView->setModel(m_dataModel);
m_tableView->setSortingEnabled(true);
}
PgLabTableView *tableView() const
{
return m_tableView;
}
TableModel *dataModel() const
{
return m_dataModel;
}
QSortFilterProxyModel *sortFilter() const
{
return m_sortFilter;
}
private:
PgLabTableView *m_tableView = nullptr;
TableModel *m_dataModel = nullptr;
QSortFilterProxyModel *m_sortFilter = nullptr;
};