Make closing of tabs work again.
This commit is contained in:
parent
6fdf631fac
commit
8c13bdc2ef
2 changed files with 25 additions and 6 deletions
|
|
@ -30,6 +30,7 @@ DatabaseWindow::DatabaseWindow(MasterController *master, QWidget *parent)
|
||||||
this, &DatabaseWindow::catalogLoaded);
|
this, &DatabaseWindow::catalogLoaded);
|
||||||
|
|
||||||
m_tabWidget = new QTabWidget(this);
|
m_tabWidget = new QTabWidget(this);
|
||||||
|
m_tabWidget->setObjectName("m_tabWidget");
|
||||||
setCentralWidget(m_tabWidget);
|
setCentralWidget(m_tabWidget);
|
||||||
|
|
||||||
createActions();
|
createActions();
|
||||||
|
|
@ -306,6 +307,18 @@ void DatabaseWindow::createCatalogInspector(QString caption, NamespaceFilter fil
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DatabaseWindow::closeTab(int index)
|
||||||
|
{
|
||||||
|
QWidget *widget = m_tabWidget->widget(index);
|
||||||
|
|
||||||
|
auto qt = dynamic_cast<QueryTool*>(widget);
|
||||||
|
if (qt && qt->canClose()) {
|
||||||
|
m_tabWidget->removeTab(index);
|
||||||
|
}
|
||||||
|
else if (index >= 0) {
|
||||||
|
m_tabWidget->removeTab(index);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void DatabaseWindow::catalogLoaded()
|
void DatabaseWindow::catalogLoaded()
|
||||||
{
|
{
|
||||||
|
|
@ -356,6 +369,11 @@ void DatabaseWindow::on_actionCancelQuery_triggered()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DatabaseWindow::on_actionClose_triggered()
|
||||||
|
{
|
||||||
|
m_tabWidget->tabCloseRequested(m_tabWidget->currentIndex());
|
||||||
|
}
|
||||||
|
|
||||||
void DatabaseWindow::on_actionCopy_triggered()
|
void DatabaseWindow::on_actionCopy_triggered()
|
||||||
{
|
{
|
||||||
QWidget *w = QApplication::focusWidget();
|
QWidget *w = QApplication::focusWidget();
|
||||||
|
|
@ -429,11 +447,6 @@ void DatabaseWindow::on_actionGenerateCode_triggered()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void DatabaseWindow::on_actionClose_triggered()
|
|
||||||
{
|
|
||||||
m_tabWidget->tabCloseRequested(m_tabWidget->currentIndex());
|
|
||||||
}
|
|
||||||
|
|
||||||
void DatabaseWindow::on_actionInspectInformationSchema_triggered()
|
void DatabaseWindow::on_actionInspectInformationSchema_triggered()
|
||||||
{
|
{
|
||||||
createCatalogInspector("information_schema", NamespaceFilter::InformationSchema);
|
createCatalogInspector("information_schema", NamespaceFilter::InformationSchema);
|
||||||
|
|
@ -501,7 +514,10 @@ void DatabaseWindow::on_actionShowConnectionManager_triggered()
|
||||||
m_masterController->showConnectionManager();
|
m_masterController->showConnectionManager();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void DatabaseWindow::on_m_tabWidget_tabCloseRequested(int index)
|
||||||
|
{
|
||||||
|
closeTab(index);
|
||||||
|
}
|
||||||
|
|
||||||
void DatabaseWindow::setTitleForWidget(QWidget *widget, QString title, QString hint)
|
void DatabaseWindow::setTitleForWidget(QWidget *widget, QString title, QString hint)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -113,7 +113,9 @@ private:
|
||||||
void initMenus();
|
void initMenus();
|
||||||
|
|
||||||
QAction* seperator();
|
QAction* seperator();
|
||||||
|
|
||||||
void createCatalogInspector(QString caption, NamespaceFilter filter);
|
void createCatalogInspector(QString caption, NamespaceFilter filter);
|
||||||
|
void closeTab(int index);
|
||||||
private slots:
|
private slots:
|
||||||
void catalogLoaded();
|
void catalogLoaded();
|
||||||
void tableSelected(Oid tableoid);
|
void tableSelected(Oid tableoid);
|
||||||
|
|
@ -140,6 +142,7 @@ private slots:
|
||||||
void on_actionSaveSqlAs_triggered();
|
void on_actionSaveSqlAs_triggered();
|
||||||
void on_actionSaveCopyOfSqlAs_triggered();
|
void on_actionSaveCopyOfSqlAs_triggered();
|
||||||
void on_actionShowConnectionManager_triggered();
|
void on_actionShowConnectionManager_triggered();
|
||||||
|
void on_m_tabWidget_tabCloseRequested(int index);
|
||||||
|
|
||||||
// IDatabaseWindow interface
|
// IDatabaseWindow interface
|
||||||
public:
|
public:
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue