<div dir="ltr">Thank you very much. That works perfectly and I think that they will usually use the X button. <div><br clear="all"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><span style="font-size:12.8px">Jan Růžička, Ph.D.</span><br style="font-size:12.8px"><span style="font-size:12.8px">freelancer, </span><span style="font-size:12.8px">researcher and </span><span style="font-size:12.8px">volontaire</span></div><div>Geoinformatics<div>tel: +420 775 032 091<br></div><div><span style="font-size:12.8px">e-mail: <a href="http://jan.ruzicka.vsb.cz/" style="color:rgb(17,85,204)" target="_blank">jan.ruzicka.vsb@gmail.com</a></span><br></div></div><div><a href="http://github.com/ruz76/" target="_blank">http://github.com/ruz76/</a></div><div><a href="http://gismentors.eu/" target="_blank">http://gismentors.eu/</a></div><div><a href="http://dolnilhota.info/" target="_blank">http://dolnilhota.info/</a></div></div></div></div></div></div></div></div></div></div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le lun. 29 juin 2020 à 07:04, Nyall Dawson <<a href="mailto:nyall.dawson@gmail.com">nyall.dawson@gmail.com</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Mon, 29 Jun 2020 at 14:39, Jan Růžička <<a href="mailto:jan.ruzicka.vsb@gmail.com" target="_blank">jan.ruzicka.vsb@gmail.com</a>> wrote:<br>
><br>
> Thank you. As you wrote, the problem is that this works only for the Widged of the plugin. There is not a way to override the closeEvent() method of the main QGIS Window from the plugin, since the plugin has only an interface given by the QGIS.<br>
><br>
> I have decided to use the workaround for now, so when the QGIS is closed it will start again. The solution is not so perfect, but at least it is a solution.<br>
><br>
> Another way to do this is to rewrite C++ code. The code is not so complicated and I can rewrite it, but then I have to build QGIS for all police stations and keep it updated and it is not so simple for me.<br>
<br>
Not sure how to intercept the quit action cleanly, but you can<br>
intercept the "X" button click:<br>
<br>
class NoClose(QObject):<br>
<br>
    def __init__(self, parent=None):<br>
        super().__init__(parent)<br>
<br>
    def ok_to_close(self):<br>
        return False<br>
<br>
    def eventFilter(self, object, event):<br>
        if isinstance(event, QCloseEvent):<br>
            if not self.ok_to_close():<br>
                event.ignore()<br>
                return True<br>
<br>
        return super().eventFilter( object, event )<br>
<br>
no_close = NoClose()<br>
iface.mainWindow().installEventFilter(no_close)<br>
<br>
<br>
<br>
<br>
><br>
> Thank you again<br>
><br>
> Jan Růžička, Ph.D.<br>
> freelancer, researcher and volontaire<br>
> Geoinformatics<br>
> tel: +420 775 032 091<br>
> e-mail: <a href="mailto:jan.ruzicka.vsb@gmail.com" target="_blank">jan.ruzicka.vsb@gmail.com</a><br>
> <a href="http://github.com/ruz76/" rel="noreferrer" target="_blank">http://github.com/ruz76/</a><br>
> <a href="http://gismentors.eu/" rel="noreferrer" target="_blank">http://gismentors.eu/</a><br>
> <a href="http://dolnilhota.info/" rel="noreferrer" target="_blank">http://dolnilhota.info/</a><br>
><br>
><br>
> Le ven. 26 juin 2020 à 09:09, Ujaval Gandhi <<a href="mailto:ujaval@spatialthoughts.com" target="_blank">ujaval@spatialthoughts.com</a>> a écrit :<br>
>><br>
>> The way to achieve this would be to override the closeEvent() method of the main QGIs Window. I don't know how to do that. But you can do that on your plugin widget - which will at least prevent that dialog to be closed if certain conditions are not met.<br>
>><br>
>>     def closeEvent(self, event):<br>
>>       if condition:<br>
>>         event.accept()<br>
>>       else:<br>
>>         event.ignore()<br>
>> Ujaval Gandhi<br>
>> Spatial Thoughts<br>
>> mobile: +91-8095684687<br>
>> email: <a href="mailto:ujaval@spatialthoughts.com" target="_blank">ujaval@spatialthoughts.com</a><br>
>><br>
>> Subscribe to our newsletter <a href="http://bit.ly/spatialthoughts-newsletter" rel="noreferrer" target="_blank">http://bit.ly/spatialthoughts-newsletter</a><br>
>><br>
>><br>
>><br>
>> On Fri, Jun 26, 2020 at 10:02 AM Jan Růžička <<a href="mailto:jan.ruzicka.vsb@gmail.com" target="_blank">jan.ruzicka.vsb@gmail.com</a>> wrote:<br>
>>><br>
>>> Thank you very much, the same is possible in the unload method of the plugin, but the question is how to stop QGIS to exit.<br>
>>> I need to inform the user that he did not enter the result of the search and keep QGIS open for the user to enter the result.<br>
>>><br>
>>> The possible workaround may be, to run the QGIS again, when it quits, but I thought that there may be some better way.<br>
>>><br>
>>> Jan Růžička, Ph.D.<br>
>>> freelancer, researcher and volontaire<br>
>>> Geoinformatics<br>
>>> tel: +420 775 032 091<br>
>>> e-mail: <a href="mailto:jan.ruzicka.vsb@gmail.com" target="_blank">jan.ruzicka.vsb@gmail.com</a><br>
>>> <a href="http://github.com/ruz76/" rel="noreferrer" target="_blank">http://github.com/ruz76/</a><br>
>>> <a href="http://gismentors.eu/" rel="noreferrer" target="_blank">http://gismentors.eu/</a><br>
>>> <a href="http://dolnilhota.info/" rel="noreferrer" target="_blank">http://dolnilhota.info/</a><br>
>>><br>
>>><br>
>>> Le jeu. 25 juin 2020 à 17:25, Ujaval Gandhi <<a href="mailto:ujaval@spatialthoughts.com" target="_blank">ujaval@spatialthoughts.com</a>> a écrit :<br>
>>>><br>
>>>> I saw that there is a aboutToQuit signal emitted just before a QApplication exists. The following works from QGIS Python Console.<br>
>>>><br>
>>>> def test():<br>
>>>>     with open('/tmp/test.txt', 'w') as f:<br>
>>>>         f.write('wrote while exiting')<br>
>>>><br>
>>>> qApp.aboutToQuit.connect(test)<br>
>>>> Ujaval Gandhi<br>
>>>> Spatial Thoughts<br>
>>>> mobile: +91-8095684687<br>
>>>> email: <a href="mailto:ujaval@spatialthoughts.com" target="_blank">ujaval@spatialthoughts.com</a><br>
>>>><br>
>>>> Subscribe to our newsletter <a href="http://bit.ly/spatialthoughts-newsletter" rel="noreferrer" target="_blank">http://bit.ly/spatialthoughts-newsletter</a><br>
>>>><br>
>>>><br>
>>>><br>
>>>> On Thu, Jun 25, 2020 at 5:00 PM Jan Růžička <<a href="mailto:jan.ruzicka.vsb@gmail.com" target="_blank">jan.ruzicka.vsb@gmail.com</a>> wrote:<br>
>>>>><br>
>>>>> Dear developers,<br>
>>>>><br>
>>>>> I have developed a plugin for the Police of the Czech Republic for Search and Rescue operations. It works quite well, but one important feature is missing.<br>
>>>>><br>
>>>>> After the search event is finished the user should enter the result of the search.<br>
>>>>><br>
>>>>> I was not able to find a way to catch an event when the user closes the whole QGIS. I need similar functionality like when closing in the case of a dirty project (no all changes were saved).<br>
>>>>><br>
>>>>> I have searched a lot and did not find any solution. I was able to catch the unload event of the plugin, but I did not find a way to keep QGIS opened.<br>
>>>>><br>
>>>>> Any help appreciated<br>
>>>>> Jan Růžička, Ph.D.<br>
>>>>> freelancer, researcher and volontaire<br>
>>>>> Geoinformatics<br>
>>>>> tel: +420 775 032 091<br>
>>>>> e-mail: <a href="mailto:jan.ruzicka.vsb@gmail.com" target="_blank">jan.ruzicka.vsb@gmail.com</a><br>
>>>>> <a href="http://github.com/ruz76/" rel="noreferrer" target="_blank">http://github.com/ruz76/</a><br>
>>>>> <a href="http://gismentors.eu/" rel="noreferrer" target="_blank">http://gismentors.eu/</a><br>
>>>>> <a href="http://dolnilhota.info/" rel="noreferrer" target="_blank">http://dolnilhota.info/</a><br>
>>>>> _______________________________________________<br>
>>>>> QGIS-Developer mailing list<br>
>>>>> <a href="mailto:QGIS-Developer@lists.osgeo.org" target="_blank">QGIS-Developer@lists.osgeo.org</a><br>
>>>>> List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
>>>>> Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
><br>
> _______________________________________________<br>
> QGIS-Developer mailing list<br>
> <a href="mailto:QGIS-Developer@lists.osgeo.org" target="_blank">QGIS-Developer@lists.osgeo.org</a><br>
> List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
> Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailman/listinfo/qgis-developer</a><br>
</blockquote></div>