mirror of
https://github.com/qgis/QGIS.git
synced 2025-05-01 00:02:48 -04:00
[processing] better unsaved change dialog upon closing script editor
This commit is contained in:
parent
5a4d33f351
commit
2ad74b9d97
@ -119,20 +119,26 @@ class ScriptEditorDialog(BASE, WIDGET):
|
|||||||
self.setHasChanged(False)
|
self.setHasChanged(False)
|
||||||
|
|
||||||
def closeEvent(self, event):
|
def closeEvent(self, event):
|
||||||
|
settings = QgsSettings()
|
||||||
|
settings.setValue("/Processing/stateScriptEditor", self.saveState())
|
||||||
|
settings.setValue("/Processing/geometryScriptEditor", self.saveGeometry())
|
||||||
|
|
||||||
if self.hasChanged:
|
if self.hasChanged:
|
||||||
ret = QMessageBox.question(self,
|
ret = QMessageBox.question(
|
||||||
self.tr("Unsaved changes"),
|
self, self.tr('Save Script?'),
|
||||||
self.tr("There are unsaved changes in the script. Continue?"),
|
self.tr('There are unsaved changes in this script. Do you want to keep those?'),
|
||||||
QMessageBox.Yes | QMessageBox.No,
|
QMessageBox.Save | QMessageBox.Cancel | QMessageBox.Discard, QMessageBox.Cancel)
|
||||||
QMessageBox.No
|
|
||||||
)
|
if ret == QMessageBox.Save:
|
||||||
if ret == QMessageBox.Yes:
|
self.updateProvider()
|
||||||
|
self.saveScript(False)
|
||||||
|
event.accept()
|
||||||
|
elif ret == QMessageBox.Discard:
|
||||||
self.updateProvider()
|
self.updateProvider()
|
||||||
event.accept()
|
event.accept()
|
||||||
else:
|
else:
|
||||||
event.ignore()
|
event.ignore()
|
||||||
else:
|
else:
|
||||||
self.updateProvider()
|
|
||||||
event.accept()
|
event.accept()
|
||||||
|
|
||||||
def updateProvider(self):
|
def updateProvider(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user