2017-08-26 11:44:40 +02:00
|
|
|
#include "ServerWindow.h"
|
2017-02-12 08:13:38 +01:00
|
|
|
#include "ui_ServerWindow.h"
|
2017-02-12 14:03:42 +01:00
|
|
|
#include "OpenDatabase.h"
|
2017-02-13 19:51:19 +01:00
|
|
|
#include "DatabasesTableModel.h"
|
2017-02-18 12:05:48 +01:00
|
|
|
#include "RolesTableModel.h"
|
2017-12-10 10:35:46 +01:00
|
|
|
#include "PgDatabaseCatalog.h"
|
2017-02-12 08:13:38 +01:00
|
|
|
|
2017-02-12 14:03:42 +01:00
|
|
|
ServerWindow::ServerWindow(MasterController *master, QWidget *parent)
|
|
|
|
|
: ASyncWindow(parent)
|
|
|
|
|
, ui(new Ui::ServerWindow)
|
2017-08-22 12:45:45 +02:00
|
|
|
, m_masterController(master)
|
2017-02-12 08:13:38 +01:00
|
|
|
{
|
|
|
|
|
ui->setupUi(this);
|
2017-02-13 19:51:19 +01:00
|
|
|
|
|
|
|
|
m_databasesModel = new DatabasesTableModel(this);
|
2017-02-18 12:05:48 +01:00
|
|
|
ui->databasesTableView->setModel(m_databasesModel);
|
|
|
|
|
|
|
|
|
|
m_rolesModel = new RolesTableModel(this);
|
|
|
|
|
ui->rolesTableView->setModel(m_rolesModel);
|
2017-02-12 08:13:38 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
ServerWindow::~ServerWindow()
|
|
|
|
|
{
|
|
|
|
|
delete ui;
|
|
|
|
|
}
|
2017-02-12 14:03:42 +01:00
|
|
|
|
|
|
|
|
void ServerWindow::setConfig(const ConnectionConfig &config)
|
|
|
|
|
{
|
|
|
|
|
m_config = config;
|
|
|
|
|
auto res = OpenDatabase::createOpenDatabase(config);
|
|
|
|
|
if (res.valid()) {
|
|
|
|
|
m_database = res.get();
|
2018-11-25 09:05:01 +01:00
|
|
|
auto cat = m_database->catalog();
|
2017-02-13 19:51:19 +01:00
|
|
|
if (cat) {
|
2017-02-19 17:41:05 +01:00
|
|
|
m_databasesModel->setDatabaseList(cat);
|
2017-02-18 12:05:48 +01:00
|
|
|
m_rolesModel->setRoleList(cat->authIds());
|
2017-02-13 19:51:19 +01:00
|
|
|
}
|
2017-02-12 14:03:42 +01:00
|
|
|
}
|
|
|
|
|
QString title = "pglab - ";
|
|
|
|
|
title += m_config.name().c_str();
|
|
|
|
|
setWindowTitle(title);
|
|
|
|
|
// newSqlPage();
|
|
|
|
|
}
|