fix right click service on custom nodes with empty services, load services to custom node when drawn on canvas, show current services for custom node's service dialog
This commit is contained in:
parent
b3463f1fb7
commit
09cc65646f
3 changed files with 23 additions and 3 deletions
|
@ -7,6 +7,7 @@ from typing import TYPE_CHECKING, Any, Set
|
|||
|
||||
from core.gui.dialogs.dialog import Dialog
|
||||
from core.gui.dialogs.serviceconfig import ServiceConfigDialog
|
||||
from core.gui.nodeutils import NodeUtils
|
||||
from core.gui.themes import FRAME_PAD, PADX, PADY
|
||||
from core.gui.widgets import CheckboxList, ListboxScroll
|
||||
|
||||
|
@ -35,10 +36,14 @@ class NodeServiceDialog(Dialog):
|
|||
services = canvas_node.core_node.services
|
||||
model = canvas_node.core_node.model
|
||||
if len(services) == 0:
|
||||
services = set(self.app.core.default_services[model])
|
||||
if not NodeUtils.is_custom(canvas_node.core_node.model):
|
||||
services = set(self.app.core.default_services[model])
|
||||
else:
|
||||
services = set(
|
||||
NodeUtils.get_custom_node_services(self.app.guiconfig, model)
|
||||
)
|
||||
else:
|
||||
services = set(services)
|
||||
|
||||
self.current_services = services
|
||||
self.draw()
|
||||
|
||||
|
@ -137,7 +142,8 @@ class NodeServiceDialog(Dialog):
|
|||
|
||||
def click_save(self):
|
||||
if (
|
||||
self.current_services
|
||||
self.canvas_node.core_node.model not in self.app.core.default_services
|
||||
or self.current_services
|
||||
!= self.app.core.default_services[self.canvas_node.core_node.model]
|
||||
):
|
||||
self.canvas_node.core_node.services[:] = self.current_services
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue