ayon-core/openpype/hosts/nuke/api/command.py
2023-06-23 18:00:15 +08:00

21 lines
501 B
Python

import logging
import contextlib
import nuke
log = logging.getLogger(__name__)
@contextlib.contextmanager
def viewer_update_and_undo_stop():
"""Lock viewer from updating and stop recording undo steps"""
try:
# stop active viewer to update any change
viewer = nuke.activeViewer()
if viewer:
viewer.stop()
else:
log.warning("No available active Viewer")
nuke.Undo.disable()
yield
finally:
nuke.Undo.enable()