Esempio n. 1
0
def buildStaticUI():

    global __actions

    menu = QtGui.QMenu("Asset Management")
    __actions['assetMenu'] = menu
    _addAssetMenuItems(menu)

    helpmenu = hiero.ui.findMenuAction("Help")
    hiero.ui.menuBar().insertMenu(helpmenu, menu)

    filemenuaction = hiero.ui.findMenuAction("File")
    if filemenuaction:
        filemenu = filemenuaction.menu()
        __extendFileMenu(filemenu)

    clipmenuaction = hiero.ui.findMenuAction("Clip")
    if clipmenuaction:
        clipmenu = clipmenuaction.menu()
        __extendClipMenu(clipmenu)

    timelinemenuaction = hiero.ui.findMenuAction("Timeline")
    if timelinemenuaction:
        timelinemenu = timelinemenuaction.menu()
        if timelinemenu:
            __extendTimelineMenu(timelinemenu)
Esempio n. 2
0
def _addAssetMenuItems(menu):

    global __actions

    menu.addAction(__actions['prefsAction'])

    # If auditing has been enabled by the env var, then these items might be useful
    if 'auditStartAction' in __actions:
        auditSubMenu = QtGui.QMenu("API Audit")
        auditSubMenu.addAction(__actions['auditStartAction'])
        auditSubMenu.addAction(__actions['auditStopAction'])
        auditSubMenu.addAction(__actions['auditPrintAction'])
        menu.addMenu(auditSubMenu)

    return menu
Esempio n. 3
0
def populateTimelineContextMenu(event):
    """
  @localeUsage hiero.specifications.HieroTimelineContextMenuLocale
  """
    global __actions

    if not (hasattr(event, "menu") and event.menu) or not hasattr(
            event.sender, 'selection'):
        # Something has gone wrong, we should only be here if raised
        # by the timeline view which gives a selection.
        return

    session = FnAssetAPI.SessionManager.currentSession()
    if not session.currentManager():
        return

    managerName = session.currentManager().getDisplayName()
    submenu = QtGui.QMenu(managerName)
    session.configureAction(submenu, addIcon=True)

    selection = event.sender.selection()

    if not selection:
        view = hiero.ui.activeView()
        if view and hasattr(view, 'sequence'):
            sequence = view.sequence()
            if sequence:
                selection = [
                    sequence,
                ]

    generateShots = __actions['generateShotsAction']
    submenu.addAction(generateShots)

    updateShots = __actions['updateShotsAction']
    submenu.addAction(updateShots)

    publishClips = __actions['publishClipsAction']
    submenu.addAction(publishClips)

    publishShotClips = __actions['publishShotClipsAction']
    submenu.addAction(publishShotClips)

    # See if we have a Build Track menu
    allowBuildTrack = True
    buildTrackMenu = utils.findNamedSubMenu("Build Track", event.menu)
    if not buildTrackMenu:
        # If we didnt have the menu, then the build track actions shouldnt be there
        # (as Hiero's arent). But we make the 'refresh' action available as its new
        allowBuildTrack = False
        buildTrackMenu = QtGui.QMenu("Build Track")
        event.menu.addMenu(buildTrackMenu)
        # Add in our Build Track action

    ## @todo put this in the Build Track submenu not here
    ## @todo Check managementPolicy
    ## @todo Disable if the provider doesn't have the widget
    buildAssetTrack = __actions['buildAssetTrack']
    buildAssetTrack.reset()
    buildAssetTrack.setEnabled(allowBuildTrack)
    buildTrackMenu.addAction(buildAssetTrack)

    refreshAssetTrack = __actions['refreshAssetTrack']
    buildTrackMenu.addAction(refreshAssetTrack)

    event.menu.addSeparator()
    event.menu.addMenu(submenu)

    locale = specifications.HieroTimelineContextMenuLocale()
    locale.event = event

    context = session.createContext()
    context.locale = locale
    context.access = context.kOther

    uiDelegate = session.getUIDelegate()
    uiDelegate.populateUI(submenu, None, context)