Gui: when closing application remove all manipulators
This commit is contained in:
@@ -126,6 +126,7 @@
|
||||
#include "WaitCursor.h"
|
||||
#include "Workbench.h"
|
||||
#include "WorkbenchManager.h"
|
||||
#include "WorkbenchManipulator.h"
|
||||
#include "WidgetFactory.h"
|
||||
|
||||
|
||||
@@ -537,6 +538,7 @@ Application::~Application()
|
||||
{
|
||||
Base::Console().Log("Destruct Gui::Application\n");
|
||||
WorkbenchManager::destruct();
|
||||
WorkbenchManipulator::removeAll();
|
||||
SelectionSingleton::destruct();
|
||||
Translator::destruct();
|
||||
WidgetFactorySupplier::destruct();
|
||||
|
||||
@@ -42,6 +42,11 @@ void WorkbenchManipulator::removeManipulator(const WorkbenchManipulator::Ptr& pt
|
||||
}
|
||||
}
|
||||
|
||||
void WorkbenchManipulator::removeAll()
|
||||
{
|
||||
manipulators.clear();
|
||||
}
|
||||
|
||||
std::set<WorkbenchManipulator::Ptr> WorkbenchManipulator::getManipulators()
|
||||
{
|
||||
return manipulators;
|
||||
|
||||
@@ -58,6 +58,11 @@ public:
|
||||
* Removes an installed instance of WorkbenchManipulator
|
||||
*/
|
||||
static void removeManipulator(const WorkbenchManipulator::Ptr&);
|
||||
/*!
|
||||
* \brief clear
|
||||
* Removes all instances of WorkbenchManipulator
|
||||
*/
|
||||
static void removeAll();
|
||||
/*!
|
||||
* \brief changeMenuBar
|
||||
* Calls \ref modifyMenuBar for every installed WorkbenchManipulator
|
||||
|
||||
Reference in New Issue
Block a user