Skip to content

Commit 058bab4

Browse files
committed
Add node view and properties bin editable feature.
1 parent 91132db commit 058bab4

File tree

4 files changed

+17
-5
lines changed

4 files changed

+17
-5
lines changed

NodeGraphQt/base/graph.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -884,6 +884,7 @@ def set_node_space(self, node):
884884
node.enter()
885885
self._node_space_bar.set_node(node)
886886
self.editable = node.is_editable()
887+
[n.set_editable(self.editable) for n in node.children() if isinstance(n, BaseNode)]
887888
else:
888889
self.editable = True
889890

NodeGraphQt/base/node.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -184,9 +184,6 @@ def set_name(self, name=''):
184184
Args:
185185
name (str): name for the node.
186186
"""
187-
if self._graph is not None and not self._graph.editable:
188-
self.view.name = self.model.name
189-
return
190187
self.set_property('name', name)
191188

192189
def color(self):
@@ -1089,6 +1086,16 @@ def when_disabled(self):
10891086
"""
10901087
return
10911088

1089+
def set_editable(self, state):
1090+
"""
1091+
Returns whether the node view widgets is editable.
1092+
1093+
Args:
1094+
state(bool).
1095+
"""
1096+
[wid.setEnabled(state) for wid in self.view._widgets.values()]
1097+
self.view.text_item.setEnabled(state)
1098+
10921099

10931100
class BackdropNode(NodeObject):
10941101
"""

NodeGraphQt/qgraphics/node_abstract.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,7 @@
22

33
from .. import QtCore, QtWidgets
44

5-
from ..constants import (Z_VAL_NODE, NODE_WIDTH, NODE_HEIGHT,
6-
ITEM_CACHE_MODE)
5+
from ..constants import (Z_VAL_NODE, NODE_WIDTH, NODE_HEIGHT, ITEM_CACHE_MODE)
76

87

98
class AbstractNodeItem(QtWidgets.QGraphicsItem):

NodeGraphQt/widgets/properties_bin.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -193,11 +193,16 @@ def add_node(self, node):
193193

194194
if itm_find:
195195
if itm_find[0].row() == 0:
196+
try:
197+
itm_find[0].setEnabled(node.graph.editable)
198+
except:
199+
pass
196200
return
197201
self._prop_list.removeRow(itm_find[0].row())
198202

199203
self._prop_list.insertRow(0)
200204
prop_widget = NodePropWidget(node=node)
205+
prop_widget.setEnabled(node.graph.editable)
201206
prop_widget.property_changed.connect(self.__on_property_widget_changed)
202207
prop_widget.property_closed.connect(self.__on_prop_close)
203208
self._prop_list.setCellWidget(0, 0, prop_widget)

0 commit comments

Comments
 (0)