From e65ca2937ae88be7b7c27540eb9426c06d0e74a5 Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 14 Nov 2016 13:46:38 +0100 Subject: [PATCH] Add a call to checkAllowClose slot (if it exists) when closing windows --- .../3rdparty/toolwindowmanager/ToolWindowManager.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/qrenderdoc/3rdparty/toolwindowmanager/ToolWindowManager.cpp b/qrenderdoc/3rdparty/toolwindowmanager/ToolWindowManager.cpp index ead52ff25..2c83b55b6 100644 --- a/qrenderdoc/3rdparty/toolwindowmanager/ToolWindowManager.cpp +++ b/qrenderdoc/3rdparty/toolwindowmanager/ToolWindowManager.cpp @@ -30,6 +30,7 @@ #include #include #include +#include #include #include #include @@ -792,6 +793,16 @@ void ToolWindowManager::tabCloseRequested(int index) { return; } + int methodIndex = toolWindow->metaObject()->indexOfMethod(QMetaObject::normalizedSignature("checkAllowClose()")); + + if(methodIndex >= 0) { + bool ret = true; + toolWindow->metaObject()->method(methodIndex).invoke(toolWindow, Qt::DirectConnection, Q_RETURN_ARG(bool, ret)); + + if(!ret) + return; + } + if(toolWindowProperties(toolWindow) & ToolWindowManager::HideOnClose) hideToolWindow(toolWindow); else