Skip to content

Commit 0869116

Browse files
committed
upgrade tab search
1 parent 7f6702a commit 0869116

File tree

2 files changed

+14
-11
lines changed

2 files changed

+14
-11
lines changed

NodeGraphQt/base/graph.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
import re
66
import copy
77

8-
from NodeGraphQt import QtCore, QtWidgets
8+
from NodeGraphQt import QtCore, QtWidgets, QtGui
99
from NodeGraphQt.base.commands import (NodeAddedCmd,
1010
NodeRemovedCmd,
1111
NodeMovedCmd,
@@ -105,10 +105,9 @@ def __init__(self, parent=None):
105105
self._node_factory = NodeFactory()
106106
self._undo_stack = QtWidgets.QUndoStack(self)
107107

108-
tab = QtWidgets.QAction('Search Nodes', self)
109-
tab.setShortcut('tab')
110-
tab.triggered.connect(self._toggle_tab_search)
111-
self._viewer.addAction(tab)
108+
tab = QtWidgets.QShortcut(QtGui.QKeySequence(QtCore.Qt.Key_Tab), self._viewer)
109+
tab.activated.connect(self._toggle_tab_search)
110+
self._viewer.need_show_tab_search.connect(self._toggle_tab_search)
112111

113112
self._wire_signals()
114113

@@ -164,8 +163,9 @@ def _toggle_tab_search(self):
164163
"""
165164
toggle the tab search widget.
166165
"""
167-
self._viewer.tab_search_set_nodes(self._node_factory.names)
168-
self._viewer.tab_search_toggle()
166+
if self._viewer.underMouse():
167+
self._viewer.tab_search_set_nodes(self._node_factory.names)
168+
self._viewer.tab_search_toggle()
169169

170170
def _on_property_bin_changed(self, node_id, prop_name, prop_value):
171171
"""

NodeGraphQt/widgets/viewer.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ class NodeViewer(QtWidgets.QGraphicsView):
3333
connection_sliced = QtCore.Signal(list)
3434
connection_changed = QtCore.Signal(list, list)
3535
insert_node = QtCore.Signal(object, str, dict)
36+
need_show_tab_search = QtCore.Signal()
3637

3738
# pass through signals
3839
node_selected = QtCore.Signal(str)
@@ -207,10 +208,13 @@ def contextMenuEvent(self, event):
207208
action.node_id = node.id
208209

209210
ctx_menu = ctx_menu or self._ctx_menu
210-
if ctx_menu.isEnabled():
211-
ctx_menu.exec_(event.globalPos())
211+
if len(ctx_menu.actions()) > 0:
212+
if ctx_menu.isEnabled():
213+
ctx_menu.exec_(event.globalPos())
214+
else:
215+
return super(NodeViewer, self).contextMenuEvent(event)
212216
else:
213-
return super(NodeViewer, self).contextMenuEvent(event)
217+
self.need_show_tab_search.emit()
214218

215219
def mousePressEvent(self, event):
216220
if event.button() == QtCore.Qt.LeftButton:
@@ -286,7 +290,6 @@ def mouseReleaseEvent(self, event):
286290
elif event.button() == QtCore.Qt.MiddleButton:
287291
self.MMB_state = False
288292

289-
290293
# hide pipe slicer.
291294
if self._SLICER_PIPE.isVisible():
292295
self._on_pipes_sliced(self._SLICER_PIPE.path())

0 commit comments

Comments
 (0)