Update ToolWindowManager to 611fd60c82e7501750226b4de39d108047c98445

This commit is contained in:
baldurk
2018-01-24 11:37:05 +00:00
parent 64c901776e
commit 8c25630369
2 changed files with 10 additions and 6 deletions
@@ -452,7 +452,7 @@ void ToolWindowManager::moveToolWindows(QList<QWidget *> toolWindows,
}
}
void ToolWindowManager::removeToolWindow(QWidget *toolWindow)
void ToolWindowManager::removeToolWindow(QWidget *toolWindow, bool allowCloseAlreadyChecked)
{
if(!m_toolWindows.contains(toolWindow))
{
@@ -469,8 +469,11 @@ void ToolWindowManager::removeToolWindow(QWidget *toolWindow)
return;
}
if(!manager->allowClose(toolWindow))
return;
if(!allowCloseAlreadyChecked)
{
if(!manager->allowClose(toolWindow))
return;
}
moveToolWindow(toolWindow, NoArea);
m_toolWindows.removeOne(toolWindow);
@@ -1429,7 +1432,7 @@ void ToolWindowManager::tabCloseRequested(int index)
if(toolWindowProperties(toolWindow) & ToolWindowManager::HideOnClose)
hideToolWindow(toolWindow);
else
removeToolWindow(toolWindow);
removeToolWindow(toolWindow, true);
}
void ToolWindowManager::windowTitleChanged(const QString &)
+3 -2
View File
@@ -228,8 +228,7 @@ public:
* \brief Removes \a toolWindow from the manager. \a toolWindow becomes a hidden
* top level widget. The ownership of \a toolWindow is returned to the caller.
*/
void removeToolWindow(QWidget *toolWindow);
void removeToolWindow(QWidget *toolWindow) { removeToolWindow(toolWindow, false); }
/*!
* Returns if \a toolWindow is floating instead of being docked.
*/
@@ -309,6 +308,8 @@ private:
bool allowClose(QWidget *toolWindow);
void removeToolWindow(QWidget *toolWindow, bool allowCloseAlreadyChecked);
// last widget used for adding tool windows, or 0 if there isn't one
// (warning: may contain pointer to deleted object)
ToolWindowManagerArea *m_lastUsedArea;