2021-04-10 14:27:04 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include <QSplitter>
|
|
|
|
|
#include <QWidget>
|
|
|
|
|
|
|
|
|
|
#include "PgLabTableViewHelper.h"
|
2021-12-30 18:54:26 +01:00
|
|
|
#include "DatabasesTableModel.h"
|
2021-04-10 14:27:04 +02:00
|
|
|
|
2022-01-20 20:13:56 +01:00
|
|
|
class PgDatabase;
|
2021-04-10 14:27:04 +02:00
|
|
|
class PgDatabaseCatalog;
|
|
|
|
|
class PgLabTableView;
|
|
|
|
|
class QSortFilterProxyModel;
|
2022-01-20 20:13:56 +01:00
|
|
|
class SqlCodePreview;
|
2021-04-10 14:27:04 +02:00
|
|
|
|
|
|
|
|
class DatabasesPage: public QSplitter {
|
|
|
|
|
public:
|
2022-01-19 19:10:05 +01:00
|
|
|
explicit DatabasesPage(std::shared_ptr<OpenDatabase> opendatabase, QWidget * parent = nullptr);
|
2021-04-10 14:27:04 +02:00
|
|
|
|
|
|
|
|
void setCatalog(std::shared_ptr<PgDatabaseCatalog> cat);
|
|
|
|
|
|
|
|
|
|
void retranslateUi(bool all = true);
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
PgLabTableViewHelper<DatabasesTableModel> m_databasesTableView;
|
2022-01-20 20:13:56 +01:00
|
|
|
// QTabWidget *m_detailsTabs = nullptr;
|
|
|
|
|
SqlCodePreview *m_tableSql = nullptr;
|
2021-04-10 14:27:04 +02:00
|
|
|
|
|
|
|
|
std::shared_ptr<PgDatabaseCatalog> m_catalog;
|
|
|
|
|
|
2022-01-20 20:13:56 +01:00
|
|
|
void updateDatabaseDetails(const PgDatabase &db);
|
|
|
|
|
void updateSqlTab(const PgDatabase &db);
|
|
|
|
|
|
|
|
|
|
private slots:
|
|
|
|
|
|
|
|
|
|
void databaseSelectionChanged(const QModelIndex ¤t, const QModelIndex &previous);
|
2021-04-10 14:27:04 +02:00
|
|
|
};
|
|
|
|
|
|