mirror of
https://github.com/qgis/QGIS.git
synced 2025-02-27 00:33:48 -05:00
[processing] do not allow editing model if it's missing algorithms
fixes #19607
This commit is contained in:
parent
e3516ab1b4
commit
a86965e94b
@ -26,9 +26,11 @@ __copyright__ = '(C) 2012, Victor Olaya'
|
||||
__revision__ = '$Format:%H$'
|
||||
|
||||
from qgis.PyQt.QtCore import QCoreApplication
|
||||
from qgis.core import QgsApplication, QgsProcessingModelAlgorithm
|
||||
from qgis.core import QgsApplication, QgsProcessingModelAlgorithm, QgsMessageLog
|
||||
from processing.gui.ContextAction import ContextAction
|
||||
from processing.modeler.ModelerDialog import ModelerDialog
|
||||
from qgis.core import Qgis
|
||||
from qgis.utils import iface
|
||||
|
||||
|
||||
class EditModelAction(ContextAction):
|
||||
@ -41,9 +43,13 @@ class EditModelAction(ContextAction):
|
||||
|
||||
def execute(self):
|
||||
alg = self.itemData
|
||||
dlg = ModelerDialog(alg)
|
||||
dlg.update_model.connect(self.updateModel)
|
||||
dlg.show()
|
||||
ok, msg = alg.canExecute()
|
||||
if not ok:
|
||||
iface.messageBar().pushMessage("Cannot edit model:", msg, level=Qgis.Warning)
|
||||
else:
|
||||
dlg = ModelerDialog(alg)
|
||||
dlg.update_model.connect(self.updateModel)
|
||||
dlg.show()
|
||||
|
||||
def updateModel(self):
|
||||
QgsApplication.processingRegistry().providerById('model').refreshAlgorithms()
|
||||
|
Loading…
x
Reference in New Issue
Block a user