git.lucas.co / hou-control
git clone https://git.lucas.co/hou-control.git

commit252314e0b3f0f986e2be04391cdbaeead1fb493f
parent7c47cf04cf
authorLucas Galante <[email protected]>
date2026-04-05 20:30
Network Editor: update nodegraphhooks.py

 python3.11libs/nodegraphhooks.py | 45 ++++++++++++++++++++++++----------------
 1 file changed, 27 insertions(+), 18 deletions(-)

diff --git a/python3.11libs/nodegraphhooks.py b/python3.11libs/nodegraphhooks.py
index c44526c..06fb81d 100755
--- a/python3.11libs/nodegraphhooks.py
+++ b/python3.11libs/nodegraphhooks.py
@@ -1,15 +1,15 @@
 import hou
 from canvaseventtypes import *
 import nodegraphdisplay as display
-from hc import Session, NetworkEditor

+from hc import HCSession, HCNetworkEditor

 # import nodegraphview as view
 
 
 def createEventHandler(uievent, pending_actions):
 
     if isinstance(uievent, ContextEvent):
-        # editor = NetworkEditor(uievent.editor)

-        # editor.showPathMessage()

+        # network_editor = HCNetworkEditor(uievent.editor)

+        # network_editor.showPathMessage()

         # return None, True
         return None, False
 
@@ -18,28 +18,37 @@ def createEventHandler(uievent, pending_actions):
 
     elif isinstance(uievent, KeyboardEvent) and \
     uievent.eventtype == 'keyhit':
-        editor = NetworkEditor(uievent.editor)

-        session = Session()

+        network_editor = HCNetworkEditor(uievent.editor)

+        session = HCSession()

         keymap = {
             # Zoom
-            '=': lambda: editor.zoom('in'),

-            '-': lambda: editor.zoom('out'),

+            '=': lambda: network_editor.zoom('in'),

+            '-': lambda: network_editor.zoom('out'),

             # Move view
-            'K': lambda: editor.translateView('up'),

-            'J': lambda: editor.translateView('down'),

-            'H': lambda: editor.translateView('left'),

-            'L': lambda: editor.translateView('right'),

+            'H': lambda: network_editor.translateView('left'),

+            'J': lambda: network_editor.translateView('down'),

+            'K': lambda: network_editor.translateView('up'),

+            'L': lambda: network_editor.translateView('right'),

+            # Add to selection

+            'Ctrl+Shift+H': lambda: network_editor.addToSelection('left'),

+            'Ctrl+Shift+J': lambda: network_editor.addToSelection('down'),

+            'Ctrl+Shift+K': lambda: network_editor.addToSelection('up'),

+            'Ctrl+Shift+L': lambda: network_editor.addToSelection('right'),

             # Move node
-            'Alt+K': lambda: editor.translateNodes('up'),

-            'Alt+J': lambda: editor.translateNodes('down'),

-            'Alt+H': lambda: editor.translateNodes('left'),

-            'Alt+L': lambda: editor.translateNodes('right'),

+            'Alt+H': lambda: network_editor.translateSelectedNodes('left'),

+            'Alt+J': lambda: network_editor.translateSelectedNodes('down'),

+            'Alt+K': lambda: network_editor.translateSelectedNodes('up'),

+            'Alt+L': lambda: network_editor.translateSelectedNodes('right'),

+            # Flags

+            'Q': network_editor.toggleBypassFlag,

+            'W': network_editor.toggleTemplateFlag,

+            'E': network_editor.setDisplayFlag,

             # Organize
-            'Ctrl+Shift+A': editor.arrangeNodes,

             # Grid
-            'Shift+G': editor.toggleGridMode,

+            'Shift+G': network_editor.toggleGridMode,

             # Selection
-            'Ctrl+D': editor.pwd().deselectAll

+            'Ctrl+A': network_editor.selectAllNodes,

+            'Ctrl+D': network_editor.deselectAllNodes,

         }
 
         key = uievent.key