pgLab/pglab/serverinspector/DatabasesPage.h

38 lines
940 B
C
Raw Normal View History

#pragma once
#include <QSplitter>
#include <QWidget>
2022-04-09 07:10:29 +02:00
#include "util/PgLabTableViewHelper.h"
#include "catalog/models/DatabasesTableModel.h"
class PgDatabase;
class PgDatabaseCatalog;
class PgLabTableView;
class QSortFilterProxyModel;
class SqlCodePreview;
class DatabasesPage: public QSplitter {
public:
explicit DatabasesPage(std::shared_ptr<OpenDatabase> opendatabase, QWidget * parent = nullptr);
void setCatalog(std::shared_ptr<PgDatabaseCatalog> cat);
void retranslateUi(bool all = true);
private:
PgLabTableViewHelper<DatabasesTableModel> m_databasesTableView;
// QTabWidget *m_detailsTabs = nullptr;
SqlCodePreview *m_tableSql = nullptr;
std::shared_ptr<PgDatabaseCatalog> m_catalog;
void updateDatabaseDetails(const PgDatabase &db);
void updateSqlTab(const PgDatabase &db);
private slots:
void databaseSelectionChanged(const QModelIndex &current, const QModelIndex &previous);
};