#include "ServerWindow.h" #include "ui_ServerWindow.h" #include "OpenDatabase.h" #include "DatabasesTableModel.h" #include "RolesTableModel.h" #include "PgsqlDatabaseCatalogue.h" ServerWindow::ServerWindow(MasterController *master, QWidget *parent) : ASyncWindow(parent) , ui(new Ui::ServerWindow) , m_masterController(master) { ui->setupUi(this); m_databasesModel = new DatabasesTableModel(this); ui->databasesTableView->setModel(m_databasesModel); m_rolesModel = new RolesTableModel(this); ui->rolesTableView->setModel(m_rolesModel); } ServerWindow::~ServerWindow() { delete ui; } void ServerWindow::setConfig(const ConnectionConfig &config) { m_config = config; auto res = OpenDatabase::createOpenDatabase(config); if (res.valid()) { m_database = res.get(); auto cat = m_database->catalogue(); if (cat) { m_databasesModel->setDatabaseList(cat); m_rolesModel->setRoleList(cat->authIds()); } } QString title = "pglab - "; title += m_config.name().c_str(); setWindowTitle(title); // newSqlPage(); }