mirror of
https://github.com/ynput/ayon-core.git
synced 2026-01-01 16:34:53 +01:00
Merge pull request #1148 from pypeclub/3.0/feature/1071-nuke-shortcuts-for-pype-menu
Nuke: shortcuts for Pype menu
This commit is contained in:
commit
9da64bc08b
3 changed files with 73 additions and 1 deletions
|
|
@ -2,7 +2,7 @@ import nuke
|
|||
from avalon.api import Session
|
||||
|
||||
from .lib import WorkfileSettings
|
||||
from pype.api import Logger, BuildWorkfile
|
||||
from pype.api import Logger, BuildWorkfile, get_current_project_settings
|
||||
|
||||
log = Logger().get_logger(__name__)
|
||||
|
||||
|
|
@ -66,6 +66,9 @@ def install():
|
|||
)
|
||||
log.debug("Adding menu item: {}".format(name))
|
||||
|
||||
# adding shortcuts
|
||||
add_shortcuts_from_presets()
|
||||
|
||||
|
||||
def uninstall():
|
||||
|
||||
|
|
@ -75,3 +78,21 @@ def uninstall():
|
|||
for item in menu.items():
|
||||
log.info("Removing menu item: {}".format(item.name()))
|
||||
menu.removeItem(item.name())
|
||||
|
||||
|
||||
def add_shortcuts_from_presets():
|
||||
menubar = nuke.menu("Nuke")
|
||||
nuke_presets = get_current_project_settings()["nuke"]
|
||||
|
||||
if nuke_presets.get("menu"):
|
||||
for menu_name, menuitems in nuke_presets.get("menu").items():
|
||||
menu = menubar.findItem(menu_name)
|
||||
for mitem_name, shortcut in menuitems.items():
|
||||
log.info("Adding Shortcut `{}` to `{}`".format(
|
||||
shortcut, mitem_name
|
||||
))
|
||||
try:
|
||||
menuitem = menu.findItem(mitem_name)
|
||||
menuitem.setShortcut(shortcut)
|
||||
except AttributeError as e:
|
||||
log.error(e)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue