void GuiAppInstance::aboutToQuit() { deletePreviewProvider(); if (_imp->_gui) { ///don't show dialogs when about to close, otherwise we could enter in a deadlock situation _imp->_gui->setGuiAboutToClose(true); _imp->_gui->notifyGuiClosing(); AppInstance::aboutToQuit(); _imp->_isClosing = true; _imp->_gui->close(); //delete _imp->_gui; _imp->_gui->deleteLater(); // Make sure all events are processed qApp->processEvents(); // Make sure all deleteLater calls are reached qApp->sendPostedEvents(0, QEvent::DeferredDelete); _imp->_gui = 0; } }
void GuiAppInstance::aboutToQuit() { deletePreviewProvider(); ///don't show dialogs when about to close, otherwise we could enter in a deadlock situation _imp->_gui->setGuiAboutToClose(true); _imp->_gui->notifyGuiClosing(); AppInstance::aboutToQuit(); _imp->_isClosing = true; _imp->_gui->close(); _imp->_gui->deleteLater(); _imp->_gui = 0; }
void GuiAppInstance::resetPreviewProvider() { deletePreviewProvider(); _imp->_previewProvider.reset(new FileDialogPreviewProvider); }