1
0
Fork 0

delete widget when closing tab

This commit is contained in:
torusrxxx 2023-09-16 09:30:24 +08:00
parent dd91e4376a
commit 9fa8c8cea0
No known key found for this signature in database
GPG Key ID: A795C73A0F1CFADD
2 changed files with 11 additions and 7 deletions

View File

@ -50,13 +50,20 @@ void ReferenceManager::newReferenceView(QString name)
void ReferenceManager::closeTab(int index)
{
auto view = qobject_cast<ReferenceView*>(widget(index));
removeTab(index);
if(mCurrentReferenceView == view)
mCurrentReferenceView = nullptr;
if(view)
delete view;
if(count() <= 0)
emit showCpu();
}
void ReferenceManager::closeAllTabs()
{
clear();
emit showCpu();
while(count())
{
closeTab(0);
}
}

View File

@ -65,17 +65,14 @@ void SourceViewerManager::closeTab(int index)
auto sourceView = qobject_cast<SourceView*>(widget(index));
removeTab(index);
if(sourceView)
sourceView->clear();
delete sourceView;
}
void SourceViewerManager::closeAllTabs()
{
while(count())
{
auto sourceView = qobject_cast<SourceView*>(widget(0));
removeTab(0);
if(sourceView)
sourceView->clear();
closeTab(0);
}
}