修改切换连接时‘属性选择器’的内部数据未同步切换问题

This commit is contained in:
duanshengchao 2025-05-19 16:12:08 +08:00
parent 719fd134b1
commit 399ee6340d
4 changed files with 12 additions and 5 deletions

View File

@ -42,7 +42,7 @@ signals:
void actionTrigger_addGroup(int); void actionTrigger_addGroup(int);
void openAttributeInfo(const QString&, ModelAttributeGroup&); void openAttributeInfo(const QString&, ModelAttributeGroup&);
void closeAttributeInfo(ModelAttributeGroup&); void closeAttributeInfo(ModelAttributeGroup&);
void closeAllAttributeInfo(); void disconnect();
private slots: private slots:
void itemDoubleClick(const QModelIndex&); void itemDoubleClick(const QModelIndex&);

View File

@ -68,7 +68,7 @@ private slots:
//void onSIG_addAttributes(); //void onSIG_addAttributes();
void onSIG_openAttributeInfo(const QString&, ModelAttributeGroup&); void onSIG_openAttributeInfo(const QString&, ModelAttributeGroup&);
void onSIG_closeAttributeInfo(ModelAttributeGroup&); void onSIG_closeAttributeInfo(ModelAttributeGroup&);
void onSIG_closeAllAttributeInfo(); void onSIG_disconnect();
void onSIG_openAttributeSelector(); void onSIG_openAttributeSelector();
}; };

View File

@ -91,7 +91,7 @@ void DBStructureView::disconnectToDB(const QString& connName)
if(index.isValid()) if(index.isValid())
collapse(index); collapse(index);
emit closeAllAttributeInfo(); emit disconnect();
} }
} }

View File

@ -86,7 +86,7 @@ void MainWindow::initialize()
connect(m_pDBStrutureView, &DBStructureView::actionTrigger_addGroup, this, &MainWindow::onActionTrigger_addGroup); connect(m_pDBStrutureView, &DBStructureView::actionTrigger_addGroup, this, &MainWindow::onActionTrigger_addGroup);
connect(m_pDBStrutureView, &DBStructureView::openAttributeInfo, this, &MainWindow::onSIG_openAttributeInfo); connect(m_pDBStrutureView, &DBStructureView::openAttributeInfo, this, &MainWindow::onSIG_openAttributeInfo);
connect(m_pDBStrutureView, &DBStructureView::closeAttributeInfo, this, &MainWindow::onSIG_closeAttributeInfo); connect(m_pDBStrutureView, &DBStructureView::closeAttributeInfo, this, &MainWindow::onSIG_closeAttributeInfo);
connect(m_pDBStrutureView, &DBStructureView::closeAllAttributeInfo, this, &MainWindow::onSIG_closeAllAttributeInfo); connect(m_pDBStrutureView, &DBStructureView::disconnect, this, &MainWindow::onSIG_disconnect);
ui->layoutDBStructure->addWidget(m_pDBStrutureView); ui->layoutDBStructure->addWidget(m_pDBStrutureView);
m_pDBStrutureModel = new DBStructureModel(this); m_pDBStrutureModel = new DBStructureModel(this);
m_pDBStrutureModel->setMainWindow(this); m_pDBStrutureModel->setMainWindow(this);
@ -321,10 +321,17 @@ void MainWindow::onSIG_closeAttributeInfo(ModelAttributeGroup& attributeGroup)
m_dbBrowser->closeTab_attribute(attributeGroup); m_dbBrowser->closeTab_attribute(attributeGroup);
} }
void MainWindow::onSIG_closeAllAttributeInfo() void MainWindow::onSIG_disconnect()
{ {
if(m_dbBrowser) if(m_dbBrowser)
m_dbBrowser->closeAllTab_attribute(); m_dbBrowser->closeAllTab_attribute();
if(m_pAttributeSelector)
{
m_pAttributeSelector->setParent(nullptr);
delete m_pAttributeSelector;
m_pAttributeSelector = nullptr;
}
} }
void MainWindow::onSIG_openAttributeSelector() void MainWindow::onSIG_openAttributeSelector()