hiero.ui reference

hiero.ui method and class details

class hiero.ui.BinView

Object representing the Bin View. Passed as the sender object to the event handler callbacks registered for hiero.core.events.EventType.kShowContextMenu type events. Can also be retrieved using hiero.ui.currentContextMenuView when active during the context menu events.

getSelection()

Deprecated; please use the selection method instead.

Returns:

tuple of hiero.core.BinItem objects

selection() returns a tuple with the currently selected items.
Returns:

tuple of hiero.core.BinItem objects

window() Return the bin view window
class hiero.ui.ColorButton
canBeInvalid()
color()
colorChanged = <PySide2.QtCore.Signal object>
dragEnterEvent(self, event: PySide2.QtGui.QDragEnterEvent)
dropEvent(self, event: PySide2.QtGui.QDropEvent)
mouseMoveEvent(self, e: PySide2.QtGui.QMouseEvent)
mousePressEvent(self, e: PySide2.QtGui.QMouseEvent)
paintEvent(self, arg__1: PySide2.QtGui.QPaintEvent)
setCanBeInvalid()
setColor()
setValidColor()
sizeHint(self) PySide2.QtCore.QSize
staticMetaObject = <PySide2.QtCore.QMetaObject object>
validColor()
class hiero.ui.ColorPickerDialog
accepted = <PySide2.QtCore.Signal object>
currentColor()
finished = <PySide2.QtCore.Signal object>
rejected = <PySide2.QtCore.Signal object>
setCurrentColor()
staticMetaObject = <PySide2.QtCore.QMetaObject object>
class hiero.ui.ExportStructureViewer
class EditMode
Full = ui.Foundry.Storm.UI.ExportStructureViewer.EditMode.Full
Limited = ui.Foundry.Storm.UI.ExportStructureViewer.EditMode.Limited
ReadOnly = ui.Foundry.Storm.UI.ExportStructureViewer.EditMode.ReadOnly
name
values = {'Full': ui.Foundry.Storm.UI.ExportStructureViewer.EditMode.Full, 'Limited': ui.Foundry.Storm.UI.ExportStructureViewer.EditMode.Limited, 'ReadOnly': ui.Foundry.Storm.UI.ExportStructureViewer.EditMode.ReadOnly}
Full = ui.Foundry.Storm.UI.ExportStructureViewer.EditMode.Full
Limited = ui.Foundry.Storm.UI.ExportStructureViewer.EditMode.Limited
ReadOnly = ui.Foundry.Storm.UI.ExportStructureViewer.EditMode.ReadOnly
addFile()
addFolder()
allowNodeDelete()
clearResolveEntries()
copy()
cut()
exportRootChanged()
filenameField()
getWidget()
handleSelectionChanged()
initUI()
itemTypes()
kAddFileToolTip = 'Adds new file entry to the export structure'
kAddFolderToolTip = 'Adds a new directory to your export structure'
kRemoveToolTip = 'Deletes the selected file entry from the export structure'
kStructureContentToolTip = 'The content written into the structure is defined by the export task selected here.'
kStructurePathToolTip = 'This structure defines the path into which the exported content will be written. See the tokens listed within the tooltip to build unique paths for each item exported.'
keyPressEvent(self, event: PySide2.QtGui.QKeyEvent)
paste()
refresh()
refreshContentField()
removeNode()
selectFileIfOnlyOne()
selectFirstFile()
selection()
selectionAnchor()
selectionChanged = <PySide2.QtCore.Signal object>
selectionRect()
setAllowNodeDelete()
setExportStructure()
setItemTypes()
setProject()
setResolveEntry()
staticMetaObject = <PySide2.QtCore.QMetaObject object>
structureModified = <PySide2.QtCore.Signal object>
class hiero.ui.FormatChooser
currentFormat()
formatChanged = <PySide2.QtCore.Signal object>
setCurrentFormat()
setProject()
staticMetaObject = <PySide2.QtCore.QMetaObject object>
class hiero.ui.IExporterUIRegistry

IExporterUIRegistry provides a simple interface for our C++ Application to access the Python instance of TaskUIRegistry.

This class should not be used directly; use hiero.ui.TaskUIRegistry instead.

aquireProcessorUI() Called from Hiero Application to aquire a reference to an instance of the ProcessorUI object related to the specified hiero.core.TaskPreset.
Parameters:

preset – hiero.core.ITaskPreset

getProcessorUI()
getProcessorUIForPreset()
getTaskUI()
getTaskUIForPreset()
numProcessorUIs()
numTaskUIs()
registerme() Called from python implimentation of TaskUIRegistry to register instance as the Application TaskUI Registry.
releaseProcessorUI() Called from Hiero Application to release the reference to a IProcessorUI object previously aquired using IExporterUIRegistry.aquireProcessorUI.
Parameters:

processorUI – hiero.ui.IProcessorUI

class hiero.ui.IProcessorUI

IProcessorUI provides a simple interface for our C++ Application to access Python instances of ProcessorUIBase.

This class should not be used directly; use hiero.ui.ProcessorUIBase instead.

class EditMode
Full = ui.Hiero.Python.IProcessorUI.EditMode.Full
Limited = ui.Hiero.Python.IProcessorUI.EditMode.Limited
ReadOnly = ui.Hiero.Python.IProcessorUI.EditMode.ReadOnly
name
values = {'Full': ui.Hiero.Python.IProcessorUI.EditMode.Full, 'Limited': ui.Hiero.Python.IProcessorUI.EditMode.Limited, 'ReadOnly': ui.Hiero.Python.IProcessorUI.EditMode.ReadOnly}
Full = ui.Hiero.Python.IProcessorUI.EditMode.Full
Limited = ui.Hiero.Python.IProcessorUI.EditMode.Limited
ReadOnly = ui.Hiero.Python.IProcessorUI.EditMode.ReadOnly
displayName() called by Hiero to get the Display name of a task for displaying in UI.
Returns:

string

populateUI() called by Hiero to allow the IProcessorUI to populate a QWidget with the ui widgets neccessary to reflect the current preset.

The EditMode is used to instruct the UI generation code to build in ReadOnly mode

Parameters:
  • processorUIWidget – PySide2.QtGui.QWidget

  • taskUIWidget – PySide2.QtGui.QWidget

  • items – [hiero.core.ItemWrapper]

  • editMode – hiero.core.IProcessorUI.EditMode

preset() called by Hiero to get the TaskPreset which this TaskUI is currently reflecting.
Returns:

hiero.core.ITaskPreset

refreshContent()
savePreset()
setPreset() called by Hiero to set the TaskPreset which this TaskUI will reflect.
Parameters:

preset – hiero.core.ITaskPreset

toolTip() called by Hiero to get the desciption of a task for displaying in UI as a tooltip.
Returns:

string

validate() called by Hiero to get .
Param:

[hiero.core.ItemWrapper]

Returns:

bool

validateSelection()
class hiero.ui.ITaskUI

ITaskUI provides a simple interface for our C++ Application to access Python instances of TaskUIBase.

This class should not be used directly; use hiero.ui.TaskUIBase instead.

displayName() called by Hiero to get the Display name of a task for displaying in UI.
Returns:

string

ident() called by Hiero to get a unique identifier linking this TaskUI with a Task and TaskPreset.
Returns:

string

populateUI() called by Hiero to allow the TaskUI to populate a QWidget with the ui widgets neccessary to reflect the current preset.
Parameters:
  • widget – PySide2.QtGui.QWidget

  • exportTemplate – hiero.core.IExportStructure

preset() called by Hiero to get the TaskPreset which this TaskUI is currently reflecting.
Returns:

hiero.core.ITaskPreset

setPreset() called by Hiero to set the TaskPreset which this TaskUI will reflect.
Parameters:

preset – hiero.core.ITaskPreset

hiero.ui.InvalidOutputResolutionMessage(message)[source]
class hiero.ui.MediaFlagsChooser
flagsChanged = <PySide2.QtCore.Signal object>
staticMetaObject = <PySide2.QtCore.QMetaObject object>
class hiero.ui.Player

Object representing a video player in Hiero. Players are used by Viewer objects, and can be retrieved using the player() method of Viewer objects.

class Channels
eChannelA = ui.Hiero.Python.Player.Channels.eChannelA
eChannelB = ui.Hiero.Python.Player.Channels.eChannelB
eChannelG = ui.Hiero.Python.Player.Channels.eChannelG
eChannelLuma = ui.Hiero.Python.Player.Channels.eChannelLuma
eChannelR = ui.Hiero.Python.Player.Channels.eChannelR
eChannelRGB = ui.Hiero.Python.Player.Channels.eChannelRGB
name
values = {'eChannelA': ui.Hiero.Python.Player.Channels.eChannelA, 'eChannelB': ui.Hiero.Python.Player.Channels.eChannelB, 'eChannelG': ui.Hiero.Python.Player.Channels.eChannelG, 'eChannelLuma': ui.Hiero.Python.Player.Channels.eChannelLuma, 'eChannelR': ui.Hiero.Python.Player.Channels.eChannelR, 'eChannelRGB': ui.Hiero.Python.Player.Channels.eChannelRGB}
LUT() returns the name of the LUT currently in use by the player.
Returns:

string

class MaskOverlayStyle
eMaskOverlayFull = ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayFull
eMaskOverlayHalf = ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayHalf
eMaskOverlayLines = ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayLines
eMaskOverlayNone = ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayNone
name
values = {'eMaskOverlayFull': ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayFull, 'eMaskOverlayHalf': ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayHalf, 'eMaskOverlayLines': ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayLines, 'eMaskOverlayNone': ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayNone}
class ProxyResolution
eProxy16 = ui.Hiero.Python.Player.ProxyResolution.eProxy16
eProxy2 = ui.Hiero.Python.Player.ProxyResolution.eProxy2
eProxy32 = ui.Hiero.Python.Player.ProxyResolution.eProxy32
eProxy4 = ui.Hiero.Python.Player.ProxyResolution.eProxy4
eProxy8 = ui.Hiero.Python.Player.ProxyResolution.eProxy8
eProxyAuto = ui.Hiero.Python.Player.ProxyResolution.eProxyAuto
eProxyFull = ui.Hiero.Python.Player.ProxyResolution.eProxyFull
name
values = {'eProxy16': ui.Hiero.Python.Player.ProxyResolution.eProxy16, 'eProxy2': ui.Hiero.Python.Player.ProxyResolution.eProxy2, 'eProxy32': ui.Hiero.Python.Player.ProxyResolution.eProxy32, 'eProxy4': ui.Hiero.Python.Player.ProxyResolution.eProxy4, 'eProxy8': ui.Hiero.Python.Player.ProxyResolution.eProxy8, 'eProxyAuto': ui.Hiero.Python.Player.ProxyResolution.eProxyAuto, 'eProxyFull': ui.Hiero.Python.Player.ProxyResolution.eProxyFull}
class WarningOverlay
eWarningExposure = ui.Hiero.Python.Player.WarningOverlay.eWarningExposure
eWarningNTSC = ui.Hiero.Python.Player.WarningOverlay.eWarningNTSC
eWarningNone = ui.Hiero.Python.Player.WarningOverlay.eWarningNone
eWarningPAL = ui.Hiero.Python.Player.WarningOverlay.eWarningPAL
name
values = {'eWarningExposure': ui.Hiero.Python.Player.WarningOverlay.eWarningExposure, 'eWarningNTSC': ui.Hiero.Python.Player.WarningOverlay.eWarningNTSC, 'eWarningNone': ui.Hiero.Python.Player.WarningOverlay.eWarningNone, 'eWarningPAL': ui.Hiero.Python.Player.WarningOverlay.eWarningPAL}
class ZoomMode
eZoomFixed = ui.Hiero.Python.Player.ZoomMode.eZoomFixed
eZoomToFill = ui.Hiero.Python.Player.ZoomMode.eZoomToFill
eZoomToFit = ui.Hiero.Python.Player.ZoomMode.eZoomToFit
eZoomToFitHeight = ui.Hiero.Python.Player.ZoomMode.eZoomToFitHeight
eZoomToFitWidth = ui.Hiero.Python.Player.ZoomMode.eZoomToFitWidth
name
values = {'eZoomFixed': ui.Hiero.Python.Player.ZoomMode.eZoomFixed, 'eZoomToFill': ui.Hiero.Python.Player.ZoomMode.eZoomToFill, 'eZoomToFit': ui.Hiero.Python.Player.ZoomMode.eZoomToFit, 'eZoomToFitHeight': ui.Hiero.Python.Player.ZoomMode.eZoomToFitHeight, 'eZoomToFitWidth': ui.Hiero.Python.Player.ZoomMode.eZoomToFitWidth}
alphaIsTransparent() returns whether the player treats the alpha channel as premultiplied transparency (True) or not (False).
Returns:

True or False

centerImage() centers the player, resetting the pan values.
channels() returns channel(s) that the player is currently displaying.
Returns:

hiero.ui.Player.Channels object

displayGain() returns the current gain of the player. Defaults to 1.0
Returns:

float

displayGamma() returns the current gamma of the player. Since the viewer displays pixels in linear space, this value defaults to 1.0.
Returns:

float

eChannelA = ui.Hiero.Python.Player.Channels.eChannelA
eChannelB = ui.Hiero.Python.Player.Channels.eChannelB
eChannelG = ui.Hiero.Python.Player.Channels.eChannelG
eChannelLuma = ui.Hiero.Python.Player.Channels.eChannelLuma
eChannelR = ui.Hiero.Python.Player.Channels.eChannelR
eChannelRGB = ui.Hiero.Python.Player.Channels.eChannelRGB
eMaskOverlayFull = ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayFull
eMaskOverlayHalf = ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayHalf
eMaskOverlayLines = ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayLines
eMaskOverlayNone = ui.Hiero.Python.Player.MaskOverlayStyle.eMaskOverlayNone
eProxy16 = ui.Hiero.Python.Player.ProxyResolution.eProxy16
eProxy2 = ui.Hiero.Python.Player.ProxyResolution.eProxy2
eProxy32 = ui.Hiero.Python.Player.ProxyResolution.eProxy32
eProxy4 = ui.Hiero.Python.Player.ProxyResolution.eProxy4
eProxy8 = ui.Hiero.Python.Player.ProxyResolution.eProxy8
eProxyAuto = ui.Hiero.Python.Player.ProxyResolution.eProxyAuto
eProxyFull = ui.Hiero.Python.Player.ProxyResolution.eProxyFull
eWarningExposure = ui.Hiero.Python.Player.WarningOverlay.eWarningExposure
eWarningNTSC = ui.Hiero.Python.Player.WarningOverlay.eWarningNTSC
eWarningNone = ui.Hiero.Python.Player.WarningOverlay.eWarningNone
eWarningPAL = ui.Hiero.Python.Player.WarningOverlay.eWarningPAL
eZoomFixed = ui.Hiero.Python.Player.ZoomMode.eZoomFixed
eZoomToFill = ui.Hiero.Python.Player.ZoomMode.eZoomToFill
eZoomToFit = ui.Hiero.Python.Player.ZoomMode.eZoomToFit
eZoomToFitHeight = ui.Hiero.Python.Player.ZoomMode.eZoomToFitHeight
eZoomToFitWidth = ui.Hiero.Python.Player.ZoomMode.eZoomToFitWidth
guideOverlay() returns the guide overlays displayed in the player.
Returns:

sequence of foundry.ui.Drawing

ignorePixelAspectRatio() returns whether the player ignores the pixel aspect ratio or not.
Returns:

True or False

maskOverlay() returns the drawing used as the mask overlay in the player.
Returns:

foundry.ui.Drawing

maskOverlayStyle() returns the current drawing style of the mask overlay used by the player.
Returns:

hiero.ui.Player.MaskOverlayStyle

pan(dx, dy) pans the player by (dx, dy).
Parameters:
  • dx – float value to pan in x by

  • dy – float value to pan in y by

proxyResolution() get the current proxy resolution setting for the player
Returns:

Player.ProxyResolution

rect() player rectangular area in GL coordinates.
Returns:

rectangle

sequence() returns the object currently being played.
Returns:

hiero.core.Clip object or hiero.core.Sequence object, depending on what is currently playing

setAlphaIsTransparent(alphaIsTransparent) sets whether the player treats the alpha channel as premultiplied transparency.
Parameters:

alphaIsTransparent – True to have the player treat alpha as premultiplied transparency, False otherwise

setChannels(channels) sets the channels to display in the player. It's currently either one of the channels or red, green and blue.
Parameters:

channels – hiero.ui.Player.Channels object

setDisplayGain(gain) sets the gain of the player.
Parameters:

gain – float

setDisplayGamma(gamma) sets the gamma of the player.
Parameters:

gamma – float

setGuideOverlay(guideOverlays) sets the guide overlays to display in the player.
Parameters:

guideOverlays – sequence of foundry.ui.Drawing

setIgnorePixelAspectRatio(ignorePixelAspectRatio) tells the player whether or not to display in anamorphic mode.
Parameters:

ignorePixelAspectRatio – True to have the player ignore the pixel aspect ratio, False otherwise

setLUT(lut) sets the LUT to use in the player. If the lut doesn't exist, will raise an exception.
Parameters:

lut – string name of the lut to use

setMaskOverlay(aspect) sets the drawing to use for the mask overlay.
Parameters:

aspect – foundry.ui.Drawing

setMaskOverlayStyle(style) sets the drawing style of the mask overlay.
Parameters:

style – hiero.ui.Player.MaskOverlayStyle style

setProxyResolution(resolution) set the player proxy resolution.
Parameters:

resolution – Player.ProxyResolution

setSequence(clip) deprecated; use Viewer.setSequence instead
setWarningOverlay(warningOverlay) sets the warning overlay.
Parameters:

warningOverlay – One of the following enums: eWarningNone, eWarningExposure, eWarningPAL or eWarningNTSC

setZoomMode(mode) Change the current zoom mode. Use zoomAbsolute or zoomRelative for eZoomFixed instead of this method.
Parameters:

mode – Zoom mode

time() gets the time of the playhead.
Returns:

frame number

translation() translation applied to the footage in the player.
Returns:

float

warningOverlay() returns player's warningOverlay.
Returns:

One of the following enums: eWarningNone, eWarningExposure, eWarningPAL or eWarningNTSC

zoom()

self.zoomMode() -> current zoom

Returns:

float

zoomAbsolute(centerX, centerY, zoom) sets the zoom to a specific centre and zoom level, ignoring previous zoom state.
Parameters:
  • centerX – new relative center of the zoom

  • centerY – new relative center of the zoom

  • zoom – float value scale by

zoomMode() current zoom mode.
Returns:

ZoomMode

zoomRelative(centerX, centerY, zoomFactor) scales the image relatively and repositions the image.
Parameters:
  • centerX – new x center of the image, in image pixels

  • centerY – new y center of the image, in image pixels

  • zoom – float value scale by

zoomToActualSize() scales and centers the image to the full size of the image.
zoomToFill() scales the image so that it fills the player window.
zoomToFit() scales the image so that it fits in the player window, maintaining the pixel aspect ratio.
zoomToFitHeight() scales the image so that the height of the image fits in the player window, maintaining the pixel aspect ratio.
zoomToFitWidth() scales the image so that the width of the image fits in the player window, maintaining the pixel aspect ratio.
zoomToHalfSize()

self.zoomToActualSize() -> scales and centers the image to half the size of the image.

class hiero.ui.ProcessorUIBase(preset, itemTypes)[source]

ProcessorUIBase is the base class from which all Processor UI components must derive. Defines the UI structure followed by the specialised processor UIs.

checkOfflineMedia(exportItems)[source]
checkUnrenderedComps(exportItems)[source]

Check for unrendered comps selected for export and ask the user what to do.

createPathPreviewWidget()[source]

Create a widget for showing a preview of the expanded export path.

createProcessorSettingsWidget(exportItems)[source]

Create the UI for processor-specific settings. To be reimplemented by subclasses.

createVersionWidget()[source]

Create a widget for selecting the version number for export.

findCompItems(items)[source]

Search for comp clips and track items in a list of ItemWrappers.

findOfflineMedia(exportItems)[source]
findTagsForItems(exportItems)[source]

Find tags for the export items.

getTaskItemType()[source]
isTranscodeExport()[source]

Check if there are transcode tasks in this export.

offlineMediaPrompt(messageText, messageDetails, hasOnline)[source]
onExportStructureModified()[source]

Callback when the export structure is modified by the user.

onExportStructureSelectionChanged()[source]

Callback when the selection in the export structure viewer changes.

onExportStructureViewerDestroyed()[source]

Callback when the export structure viewer is destroyed. Qt will delete it while we still have a reference, so reset to None when the destroyed() signal is emitted.

onVersionIndexChanged(value)[source]

Callback when the version index changes.

onVersionPaddingChanged(padding)[source]

Callback when the version padding changes.

populateUI(processorUIWidget, taskUIWidget, exportItems)[source]

Build the processor UI and add it to widget.

preset()[source]

Get the export preset.

processorSettingsLabel()[source]

Get the label which is put on the tab for processor-specific settings. To be reimplemented by subclasses.

projectFromSelection(items)[source]
refreshContent()[source]

Refresh the content area of this ProcessorUI

savePreset()[source]

Save the export template to the preset.

setPreset(preset)[source]

Set the export preset.

setTaskContent(preset)[source]

Get the UI for a task preset and add it in the ‘Content’ tab.

skipOffline()[source]
toTrackItems(items)[source]
updatePathPreview()[source]

Update the path preview widget for the currently selected item in the tree view.

validate(exportItems)[source]

Validate settings in UI. Return False for failure in order to abort export.

class hiero.ui.RenderTaskUIBase(taskType, preset, displayName)[source]

RenderTaskUIBase is a specialization of TaskUIBase which reflects the codec properties in RenderTaskPreset into UI

buildCodecUI(layout, itemTaskType)[source]

Populate layout with widgets reflected from the RenderPresetBase class

codecTypeComboBoxChanged(value)[source]
createChannelsWidget(layout)[source]
createCodecOptionsPlaceholder(layout)[source]
createCodecPropertyWidgets(file_type, propertyDictionaries)[source]

Create widgets for the given property dictionaries, and add them to the given layout.

createColourSpaceWidget(layout)[source]
createFileTypeWidget(layout)[source]
createReformatWidgets(layout, itemTaskType)[source]
createViewsWidget(layout)[source]
deleteFirstChildFromWidget(widget)[source]

Get the first child added to the widget’s layout, and delete it, if it exists.

formatChanged()[source]
propertyChanged()[source]
reformatChanged()[source]

Callback when the Reformat combo box selection has changed. Enable/disable the reformat property widgets as appropriate.

setFormat(format)[source]
staticMetaObject = <PySide2.QtCore.QMetaObject object>
updateChannelsForFileType(fileType)[source]
updateCodecPropertiesWidget(file_type)[source]

Update the codec properties widget. If applicable, also updates the encoder properties (for movs).

class hiero.ui.SpreadsheetView
beginSelectionUpdate() Call beginSelectionUpdate before, and endSelectionUpdate after, making multiple setSelection.
endSelectionUpdate() Call beginSelectionUpdate before, and endSelectionUpdate after, making multiple setSelection.
selectAll()

Select All TrackItems within current sequence.

selectNone()

Unselect all TrackItems.

selection()
sequence()
setSelection(hiero.core.TrackItem)
setSelection([hiero.core.TrackItem]) None

Will throw exception if selection is not subset of current sequence.

Parameters:

selection – track item(s) to be selected.

window() Return the spreadsheet view window
class hiero.ui.TaskUIBase(taskType, preset, displayName)[source]

TaskUIBase is the base class from hich all TaskUI components should derrive

displayName()[source]

Exporter name to be displayed in the UI

ident() called by Hiero to get a unique identifier linking this TaskUI with a Task and TaskPreset.[source]
Returns:

string

initializeAndPopulateUI(widget, exportTemplate)[source]
initializeUI(widget)[source]
parentType()[source]
populateUI(widget, exportTemplate)[source]

populateUI() Export dialog to allow the TaskUI to populate a QWidget with the ui widgets neccessary to reflect the current preset.

preset()[source]

Return Preset currently assigned to ExporterUI

propertiesChanged = <PySide2.QtCore.Signal object>
setPreset(preset)[source]

Assign Preset to ExporterUI

setProject(project)[source]

Set the project being used for the current export.

setTags(tags)[source]

setTags passes the subset of tags associated with the selection for export

setTaskItemType(type)[source]
staticMetaObject = <PySide2.QtCore.QMetaObject object>
taskItemType()[source]
class hiero.ui.TaskUIRegistry[source]

Registry/factory for ITaskUI and IProcessorUI objects.

getNewTaskUIForPreset(preset)[source]

Get a new instance of the task UI class for the preset.

getProcessorUI(index)[source]

Return ProcessorUI registered at specified index

getProcessorUIForPreset(preset)[source]

Return ProcessorUI object associated with the preset type. Note that this returns a stored instance of the preset.

getTaskUI(index)[source]

Return TaskUI registered at specified index

getTaskUIForPreset(preset)[source]

Return TaskUI object associated with the preset type. Note that this returns a stored instance of the preset, which is suitable for calling from C++ code. For actually constructing UIs, getNewTaskUIForPreset() should be called to create a new object.

numProcessorUIs()[source]

Get the number of registered IProcessorUI classes.

numTaskUIs()[source]

Get the number of registered ITaskUI classes.

processorUIByIndex(index)[source]

Return ProcessorUI registered at specified index

registerProcessorUI(processorPreset, processorUI)[source]

Register IProcessorUI class and associate with IProcessorPreset class

registerTaskUI(taskPreset, taskUI)[source]

Register an ITaskUI class and associate with an ITaskPreset class

class hiero.ui.TimelineEditor

Object representing the Timeline Editor.

beginSelectionUpdate() Call beginSelectionUpdate before, and endSelectionUpdate after, making multiple setSelection.
endSelectionUpdate() Call beginSelectionUpdate before, and endSelectionUpdate after, making multiple setSelection.
getSelection()

Deprecated; please use the selection method instead.

Returns:

tuple of TrackItem and Transition objects

selectAll()

Select All TrackItems within current sequence.

selectNone()

Unselect all TrackItems and Tracks.

selection() returns a tuple with the currently selected items.
Returns:

tuple of TrackItem and Transition objects

sequence() returns the Sequence currently being edited in the timeline editor.
Returns:

Sequence object

setSelection(hiero.core.TrackItem)
setSelection([hiero.core.TrackItem]) None

Will throw exception if selection is not subset of current sequence.

Parameters:

selection – track item(s) to be selected.

setTrackSelection(hiero.core.TrackBase)
setTrackSelection([hiero.core.TrackBase]) None

Will throw exception if selection is not subset of current sequence.

Parameters:

selection – Tracks to be selected.

window() Return the timeline editor window
class hiero.ui.TimelineEditorCreationFlag(value)

An enumeration.

kDontCreate = 0
kForceCreation = 2
kRecycleOrCreate = 1
class hiero.ui.TracksMask
setTracks()
setVisibleByDefault()
tracks()
visibleByDefault()
class hiero.ui.VersionWidget[source]

Widget for editing version indices and padding. This extends QSpinbox to allow the user to add leading zeroes to specify padding.

padding()[source]
paddingChanged = <PySide2.QtCore.Signal object>
setPadding(padding)[source]
sizeHint(self) PySide2.QtCore.QSize[source]
staticMetaObject = <PySide2.QtCore.QMetaObject object>
textFromValue(self, val: int) str[source]
valueFromText(self, text: str) int[source]
class hiero.ui.Viewer

Object for manipulating viewers in Hiero. Get the currently active viewer by calling hiero.ui.currentViewer().

class CompareMode
eCompareDifference = ui.Hiero.Python.Viewer.CompareMode.eCompareDifference
eCompareInvertAndAdd = ui.Hiero.Python.Viewer.CompareMode.eCompareInvertAndAdd
eCompareMinus = ui.Hiero.Python.Viewer.CompareMode.eCompareMinus
eCompareNoBlend = ui.Hiero.Python.Viewer.CompareMode.eCompareNoBlend
eCompareOnionSkin = ui.Hiero.Python.Viewer.CompareMode.eCompareOnionSkin
eCompareOver = ui.Hiero.Python.Viewer.CompareMode.eCompareOver
eCompareUnder = ui.Hiero.Python.Viewer.CompareMode.eCompareUnder
name
values = {'eCompareDifference': ui.Hiero.Python.Viewer.CompareMode.eCompareDifference, 'eCompareInvertAndAdd': ui.Hiero.Python.Viewer.CompareMode.eCompareInvertAndAdd, 'eCompareMinus': ui.Hiero.Python.Viewer.CompareMode.eCompareMinus, 'eCompareNoBlend': ui.Hiero.Python.Viewer.CompareMode.eCompareNoBlend, 'eCompareOnionSkin': ui.Hiero.Python.Viewer.CompareMode.eCompareOnionSkin, 'eCompareOver': ui.Hiero.Python.Viewer.CompareMode.eCompareOver, 'eCompareUnder': ui.Hiero.Python.Viewer.CompareMode.eCompareUnder}
class LayoutMode
eLayoutFree = ui.Hiero.Python.Viewer.LayoutMode.eLayoutFree
eLayoutGrid = ui.Hiero.Python.Viewer.LayoutMode.eLayoutGrid
eLayoutHorizontal = ui.Hiero.Python.Viewer.LayoutMode.eLayoutHorizontal
eLayoutStack = ui.Hiero.Python.Viewer.LayoutMode.eLayoutStack
eLayoutVertical = ui.Hiero.Python.Viewer.LayoutMode.eLayoutVertical
eLayoutWipe = ui.Hiero.Python.Viewer.LayoutMode.eLayoutWipe
name
values = {'eLayoutFree': ui.Hiero.Python.Viewer.LayoutMode.eLayoutFree, 'eLayoutGrid': ui.Hiero.Python.Viewer.LayoutMode.eLayoutGrid, 'eLayoutHorizontal': ui.Hiero.Python.Viewer.LayoutMode.eLayoutHorizontal, 'eLayoutStack': ui.Hiero.Python.Viewer.LayoutMode.eLayoutStack, 'eLayoutVertical': ui.Hiero.Python.Viewer.LayoutMode.eLayoutVertical, 'eLayoutWipe': ui.Hiero.Python.Viewer.LayoutMode.eLayoutWipe}
class PlaybackMode
ePlaybackBounce = ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackBounce
ePlaybackContinue = ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackContinue
ePlaybackRepeat = ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackRepeat
ePlaybackStop = ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackStop
name
values = {'ePlaybackBounce': ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackBounce, 'ePlaybackContinue': ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackContinue, 'ePlaybackRepeat': ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackRepeat, 'ePlaybackStop': ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackStop}
annotationTool() return the annotation tool for this viewer.
availableGuideOverlayNames() returns the names of all the guide overlays available in the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

The names of all the guide overlays available in the viewer

cachedFrames() get the frames which are currently cached in the viewer.
Returns:

set containing the indices of the cached frames

channels() returns the current channels in the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

a Viewer clip player’s current channels

channelsChanged = <PySide2.QtCore.Signal object>
compareMode() returns the compare mode for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

a Viewer.CompareMode object

compareModeChanged = <PySide2.QtCore.Signal object>
currentLayerChanged = <PySide2.QtCore.Signal object>
currentLayerName() returns the name of the current channels layer the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

a Viewer clip player’s channels layer name

cursorTool()
displayDropFrames() -> True if the drop frames are beingdisplayed on the time format (when timecode is displayed)
Returns:

True if the display frames are being displayed

displayTimecode() True if the timecode is being displayed on the time format
Returns:

True if the timecode is being displayed

eCompareDifference = ui.Hiero.Python.Viewer.CompareMode.eCompareDifference
eCompareInvertAndAdd = ui.Hiero.Python.Viewer.CompareMode.eCompareInvertAndAdd
eCompareMinus = ui.Hiero.Python.Viewer.CompareMode.eCompareMinus
eCompareNoBlend = ui.Hiero.Python.Viewer.CompareMode.eCompareNoBlend
eCompareOnionSkin = ui.Hiero.Python.Viewer.CompareMode.eCompareOnionSkin
eCompareOver = ui.Hiero.Python.Viewer.CompareMode.eCompareOver
eCompareUnder = ui.Hiero.Python.Viewer.CompareMode.eCompareUnder
eLayoutFree = ui.Hiero.Python.Viewer.LayoutMode.eLayoutFree
eLayoutGrid = ui.Hiero.Python.Viewer.LayoutMode.eLayoutGrid
eLayoutHorizontal = ui.Hiero.Python.Viewer.LayoutMode.eLayoutHorizontal
eLayoutStack = ui.Hiero.Python.Viewer.LayoutMode.eLayoutStack
eLayoutVertical = ui.Hiero.Python.Viewer.LayoutMode.eLayoutVertical
eLayoutWipe = ui.Hiero.Python.Viewer.LayoutMode.eLayoutWipe
ePlaybackBounce = ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackBounce
ePlaybackContinue = ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackContinue
ePlaybackRepeat = ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackRepeat
ePlaybackStop = ui.Hiero.Python.Viewer.PlaybackMode.ePlaybackStop
enterFullScreen() puts the viewer into full screen mode. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
exitFullScreen() takes the viewer out of full screen mode. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
flushCache() flush the cache on the viewer and pause caching.
frameDisplayed = <PySide2.QtCore.Signal object>
frameIncrement() returns the frame increment for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

the number of frames to skip or nudge

gain() returns the gain value for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

a Viewer clip player’s gain value

gainChanged = <PySide2.QtCore.Signal object>
gamma() returns the gamma value for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

a Viewer clip player’s gamma value

gammaChanged = <PySide2.QtCore.Signal object>
getAchievedFPS() returns the average fps achieved by the viewer.
Returns:

floating point frames per second average

goToInTime()

Move playhead to In point

goToNextEdit() Move playhead to next edit. Can only be called from the user interface thread.
goToNextTag() Move playhead to next tag. Can only be called from the user interface thread.
goToOutTime()

Move playhead to Out point

goToPrevEdit() Move playhead to previous edit. Can only be called from the user interface thread.
goToPrevTag() Move playhead to previous tag. Can only be called from the user interface thread.
goToTag(tag)

Move playhead to Tag. If Tag (Tag Object or Tag name) does not exists on the Viewer’s Sequence/Clip a KeyError is raised.

Parameters:

tag – a Tag object or the name of the desired tag.

goToTrackItemEnd(trackItem)

Move playhead to end of the trackItem.

Parameters:

trackItem – sequence’s track item.

goToTrackItemMiddle(trackItem)

Move playhead to middle of the trackItem.

Parameters:

trackItem – sequence’s track item.

goToTrackItemStart(trackItem)

Move playhead to start of the trackItem.

Parameters:

trackItem – sequence’s track item.

guideOverlayChanged = <PySide2.QtCore.Signal object>
image() returns the contents of the viewer as an image, including all overlays. Can only be called from the user interface thread.
Returns:

a PySide2.QtGui.QImage object

isCachingPaused() get whether caching is paused.
Returns:

bool

layoutMode() returns the layout mode the viewer is currently in.
Returns:

a Viewer.LayoutMode object

layoutModeChanged = <PySide2.QtCore.Signal object>
maskOverlayChanged = <PySide2.QtCore.Signal object>
maskOverlayName() returns the name of the current mask overlay in the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

The name of the mask overlay currently active in the viewer

maskOverlayStyle() returns the current mask overlay style set in the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

The current mask overlay style active in the viewer

maskOverlayStyleChanged = <PySide2.QtCore.Signal object>
overlaysShown() get whether overlays are shown in the viewer.
Returns:

bool

pauseCaching() pause caching on the viewer.
play() starts playback in the viewer in the forward direction. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
playBackwards() starts playback in the viewer in the backwards direction. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
playForwards() starts playback in the viewer in the forward direction. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
playbackMode() returns the compare mode for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

a Viewer.PlaybackMode object

playbackModeChanged = <PySide2.QtCore.Signal object>
playbackSpeed() Get the current playback speed, which will be 0 if playback is not currently in progress.
playbackSpeedChanged = <PySide2.QtCore.Signal object>
player(index) returns the player object attached to this viewer, based on the input index.
Parameters:

index – integer index of the player to retrieve

Returns:

hiero.ui.Player object

resumeCaching() resume caching on the viewer.
selectedGuideOverlayNames() returns the names of the current guide overlays in the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Returns:

The names of all the guide overlays currently active in the viewer

sequenceChanged = <PySide2.QtCore.Signal object>
setChannels(channels) Sets the channels in the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

channels – the channels to be set in the viewer

setCompareMode(mode) changes the compare mode for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

compareMode – a Viewer.CompareMode value

setDisplayTimecode(displayTimecode) Sets the viewer to display Timecode if 'displayTimecode' is True, or Timeline Frame otherwise
Returns:

None

setFrameIncrement(frames) changes the frame increment for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

frames – the number of frames to skip or nudge

setGain(gain) changes the gain for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

gain – a gain value to be set in the viewer

setGamma(gamma) changes the gamma for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

gamma – a gamma value to be set in the viewer

setGuideOverlayFromRemote() Sets the guide overlays in the viewer from a remote source. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:
  • overlayNames – the names of the overlays to be set

  • remoteOverlaysAvailable – the names of the overlays that are available to the remote client

setLayer(layerName) Sets the channels layer in the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

layerName – the name of the channels layer to be set in the viewer

setLayoutMode(mode) changes the layout mode for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

layoutMode – a Viewer.LayoutMode value indicating what layout to set the viewer to

setMaskOverlayFromRemote() Sets the guide overlays in the viewer from a remote source. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

remoteOverlayName – the name of the overlay to be set

setMaskOverlayStyle() Sets the channels in the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

pyStyle – the mask style to be set in the viewer

setOverlaysShown(show) set whether overlays are shown in the viewer.
Parameters:

show – bool

setPlaybackMode()

self.setCompareMode(mode) -> changes the playback mode for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.

Parameters:

mode – a Viewer.PlaybackMode value

setPlaybackSpeed(speed) Set the current playback speed. Setting to 0 will stop, -1 play in reverse, etc.
setPlayer(index) sets the active player if index is a valid player index.
Parameters:

index – integer index of the player to set as the active player

setSequence() set the sequence for this viewer
Parameters:
  • sequence – the sequence to set on this viewer

  • indexOfPlayer – index to specify which of the players the sequence should be set on

setTime(time) seeks the play head of the viewer to the time parameter. Works the same as scrubbing the timeline in the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

time – frame to set the play head to

setTimeDisplayFormat() Change the current time display format of the viewer
Parameters:
  • displayTimecode – Display timecode

  • displayDropFrames – Display drop frames

setTracksMask() modify the status of the tracks of one of the buffers. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:
  • indexOfPlayer – integer index of the player

  • tracksMask – TracksMask instance

setView(name, viewIndex) If name matches an existing view then the Viewers's active view for viewIndex is set to the view given by name.
Parameters:
  • name – string

  • viewIndex – optional; integer (for example in stereo a viewIndex of 0 corresponds to the primary view and 1 to the secondary view)

shuttleTargetFPSChanged = <PySide2.QtCore.Signal object>
staticMetaObject = <PySide2.QtCore.QMetaObject object>
stop() stops playback in the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
syncShuttleTargetFPS() Syncs the current target frame rate of the shuttle target frame rate
Parameters:

fps – Target frame rate for the shuttle tool

syncTargetFrameRate() Syncs the target frame rate of the viewer when it is modifiedby other client during a sync review
Parameters:
  • numerator – Numerator of the target frame rate

  • denominator – Denominator of the target frame rate

targetFrameRateChanged = <PySide2.QtCore.Signal object>
time() returns the current frame of the viewer.
timeChanged = <PySide2.QtCore.Signal object>
timeDisplayFormatChanged = <PySide2.QtCore.Signal object>
toggleFullScreen() toggles full screen mode for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
toggleFullScreen1_1() toggles 1:1 full screen mode for the viewer. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
trackSelectionChanged = <PySide2.QtCore.Signal object>
tracksMask() returns status of the tracks of one of the buffers. Can only be called from the user interface thread. Use hiero.core.executeInMainThread if you need to call it from a non-ui thread.
Parameters:

indexOfPlayer – integer index of the player

Returns:

TracksMask instance

transformChanged = <PySide2.QtCore.Signal object>
view(viewIndex) Returns the name of the active view for viewIndex.
Parameters:

viewIndex – optional; integer (for example in stereo a viewIndex of 0 corresponds to the primary view and 1 to the secondary view)

window() Return the viewer window
wipeTool() return the wipe tool for this viewer
class hiero.ui.ViewerCursor
color
label
pos
class hiero.ui.ViewerCursorTool
cursorLeave = <PySide2.QtCore.Signal object>
cursorPositionChanged = <PySide2.QtCore.Signal object>
setCursors()
staticMetaObject = <PySide2.QtCore.QMetaObject object>
class hiero.ui.ViewerTool

Python interface for the viewer tools

activeChanged = <PySide2.QtCore.Signal object>
isActive() get the tool's active state
setActive(active) set the tool's active state
staticMetaObject = <PySide2.QtCore.QMetaObject object>
class hiero.ui.ViewerWipeTool
setWipeToolState()
staticMetaObject = <PySide2.QtCore.QMetaObject object>
wipeToolState()
wipeToolStateChanged = <PySide2.QtCore.Signal object>
class hiero.ui.WindowManager

Global object to handle window management in Hiero. Use hiero.ui.windowManager() to get the single instance of this object to use.

class WindowMenuSection
kApplicationSection = ui.Hiero.Python.WindowManager.WindowMenuSection.kApplicationSection
kDocumentSection = ui.Hiero.Python.WindowManager.WindowMenuSection.kDocumentSection
kNumGroups = ui.Hiero.Python.WindowManager.WindowMenuSection.kNumGroups
kQAToolsSection = ui.Hiero.Python.WindowManager.WindowMenuSection.kQAToolsSection
name
values = {'kApplicationSection': ui.Hiero.Python.WindowManager.WindowMenuSection.kApplicationSection, 'kDocumentSection': ui.Hiero.Python.WindowManager.WindowMenuSection.kDocumentSection, 'kNumGroups': ui.Hiero.Python.WindowManager.WindowMenuSection.kNumGroups, 'kQAToolsSection': ui.Hiero.Python.WindowManager.WindowMenuSection.kQAToolsSection}
addWindow(window, section, shortcut) adds a window to the window manager and insert a menu item for it into the Window menu. This will also make the window dockable with Hiero's other windows.
Parameters:
  • window – QWidget object for the window

  • section – section (either an int, or a WindowManager.WindowMenuSection) to insert the menu item into

  • shortcut – shortcut to apply to the menu item. See the documentation on QKeySequence for more info

kApplicationSection = ui.Hiero.Python.WindowManager.WindowMenuSection.kApplicationSection
kDocumentSection = ui.Hiero.Python.WindowManager.WindowMenuSection.kDocumentSection
kNumGroups = ui.Hiero.Python.WindowManager.WindowMenuSection.kNumGroups
kQAToolsSection = ui.Hiero.Python.WindowManager.WindowMenuSection.kQAToolsSection
popupWindow(window) Opens the window in a floating dock panel.
Parameters:

window – QWidget object for the window

showWindow(window) Opens the window in its layout position or if as a floating dock panel
Parameters:

window – QWidget object for the window

windows() Returns a list with the available widgets in WindowManager
Returns:

list of the available widgets in WindowManager

class hiero.ui.WipeToolState
gauge
rotation
translateX
translateY
hiero.ui.activeSequence() gets the currently active sequence.
Returns:

a hiero.core.Sequence of the last activated hiero.ui.TimelineEditor, hiero.ui.SpreadsheetView object or hiero.ui.Viewer object

hiero.ui.activeView() gets the currently active view object.
Returns:

depending on the active view, a hiero.ui.TimelineEditor, a hiero.ui.SpreadsheetView object, a hiero.ui.Viewer object or a hiero.ui.BinView object

hiero.ui.addMenuAction(path, action, before=None)[source]

Add a QAction to the main menubar. The ‘path’ parameter specifies the menu to which to add the action as a ‘/’-separated string. The path may contain either internal action names or display names. e.g. ‘View/Transform’, or (better) ‘foundry.menu.view/foundry.view.transform’.” The optional ‘before’ parameter specifies the name of an item the action should be inserted before. If this is not specified, the action is appended to the menu.

hiero.ui.browseForApplication(message, initialPath, parentWidget) brings up the file browser to allow the user to select an application. Allows the user to select an executable file on Windows and Linux, and to select an application bundle (\*.app) directory on OSX.
Parameters:
  • message – prompt to display to the user in the file browser

  • initialPath – initial path to set the file browser to. Can be a zero length string

  • parentWidget – QWidget to set as the parent of the file browser. Can be None.

Returns:

string

hiero.ui.createMenuAction(name, method, icon=None, path=None)[source]

Creates a menu action (QAction) for use in context menus or Main menubar. The ‘name’ parameter specifies the title of the action.

Param:

name - the title of the menu action

Param:

method - the Python method which this action triggers

Param:

icon (optional) - provides an icon for the action. This can be an absolute path (‘/var/tmp/myIcon.png’), or relative path (‘icons:myIcon.png’)

Param:

path (optional) - the path to the menu action. The action objects name will be set to this value

hiero.ui.currentContextMenuView() returns the current view for the context menu. Only valid during a kShowContextMenu event callback.
Returns:

hiero.ui.Viewer, hiero.ui.TimelineEditor, hiero.ui.BinView, depending on which window had the context menu created for it

hiero.ui.currentViewer() returns the current viewer window.
Returns:

hiero.ui.Viewer

hiero.ui.currentWorkspace() Returns the name of the current Workspace.
Returns:

name of current Workspace as a string

hiero.ui.findMenuAction(name)[source]

Find a QAction in the main menubar. The ‘name’ parameter specifies the name of the action. The name may be either an internal action name or a display name. e.g. ‘Cut’, or (better) ‘foundry.application.cut’.”

hiero.ui.findRegisteredAction(name) Find the action with the given name.
Returns:

a QAction, or None if not found.

hiero.ui.findRegisteredActions(pattern) Find the action that starts with the given pattern.
Returns:

a QAction list or None on an error.

hiero.ui.flushAllViewersCache() flush the cache of all viewers and pause caching
hiero.ui.getFlipbook()
hiero.ui.getProjectRootInteractive(project)[source]

Try to get a valid root path from the project. If the existing exportRootDirectory() is not set or doesn’t exist, the user will be prompted to select one. If no path is selected, returns None.

hiero.ui.getTimelineEditor(sequence, creationFlag) Find the TimelineEditor for the given Sequence. A new TimelineEditor may be created or an existing one may be recycled depending on the creationFlag parameter, see hiero.ui.TimelineEditorCreationFlag. If the optional creationFlag is not specified, the default behavior will recycle an existing TimelineEditor or create one i.e. hiero.ui.TimelineEditorCreationFlag.kRecycleOrCreate.
Parameters:
  • sequence – A hiero.core.Sequence object

  • (Optional) (creationFlag) – Enum flag of type hiero.ui.TimelineEditorCreationFlag. This flag determines the behavior when a TimelineEditor is not found for the given Sequence.

Returns:

a hiero.ui.TimelineEditor if one exist or is successfully created/recycled.

hiero.ui.insertMenuAction(action, menu, before=None, after=None)[source]

Insert a QAction into the given QMenu. If strings ‘before’ or ‘after’ are specified, the action is inserted before or after the action with that name. If no such action is found or ‘before/after’ are not given, the action is appended to the menu.

hiero.ui.isInAnyProject()
hiero.ui.isInAnyTimeline()
hiero.ui.mainWindow() used to get Hiero's main window object.
Returns:

a PySide2.QtGui.QMainWindow object

hiero.ui.menuBar() used to get Hiero's global menu bar.
Returns:

a PySide2.QtGui.QMenuBar object

hiero.ui.monitorOutNode()
hiero.ui.openFileBrowser(caption='', mode=1, pattern='', initialPath='', forSave=False, canChooseMultiple=False, sequencesEnabled=False, mayNotExist=False, showAllFileTypes=False, confirmOverwrite=True, requiredExtension='') string list.

Displays a modal foundry file browser dialog.

Parameters:
  • caption – Optional. Message to display in the dialog.

  • mode – Optional. Selection mode (1=Files Only, 2=Directories Only, 3=Files and Directories)

  • pattern – Optional. File filter pattern.

  • initialPath – Optional. The selected path on dialog creation.

  • forSave – Optional. Configure dialog for saving a file.

  • multipleSelection – Optional. Allow selection of multiple files.

  • sequencesEnabled – Optional. Configure file browser for showing sequences.

  • mayNotExist – Optional. Allow return of paths that don’t exist e.g. for saving.

  • showAllFileTypes – Optional. Show all files regardless of the filter.

  • confirmOverwrite – Optional. If file exists will ask user to confirm overwrite. If canceled the file will not be in the returned list of paths.

  • requiredExtension – Optional. Enforce a certain file extension.

Returns:

The selected files as a list of strings

hiero.ui.openInNewViewer(hiero.core.BinItem) Opens a BinItem's activeItem (Clip/Sequence) in a new Viewer.
hiero.ui.openInNewViewer(hiero.core.Sequence) Opens a Sequence in a new Viewer.
hiero.ui.openInNewViewer(hiero.core.Clip) Opens a Clip in a new Viewer.
Returns:

hiero.ui.Viewer object

hiero.ui.openInOSShell()
hiero.ui.openInSpreadsheet(hiero.core.Sequence) Opens a Sequence in a Spreadsheet.
Returns:

hiero.ui.SpreadsheetView object

hiero.ui.openInTimeline(hiero.core.BinItem) Opens a BinItem's activeItem (Clip/Sequence) in a Timeline View.
hiero.ui.openInTimeline(hiero.core.Sequence) Opens a Sequence in a Timeline View.
hiero.ui.openInTimeline(hiero.core.Clip) Opens a Clip in a Timeline View.
Returns:

hiero.ui.TimelineEditor object

hiero.ui.openInTimeline( [hiero.core.BinItem] ) -> Opens a list of BinItems’ activeItems (Clips/Sequences) in a Timeline View. :return: tuple of hiero.ui.TimelineEditor objects

hiero.ui.openInViewer(hiero.core.BinItem) Opens a BinItem's activeItem (Clip/Sequence) in the Viewer.
hiero.ui.openInViewer(hiero.core.Sequence) Opens a Sequence in the Viewer.
hiero.ui.openInViewer(hiero.core.Clip) Opens a Clip in the Viewer.
Returns:

hiero.ui.Viewer object

hiero.ui.registerAction(action) Register an action.
hiero.ui.registerBinViewCustomMimeDataType(customMimeType) registers a custom mime type so that Hiero passes on drag and drop events through the event system. For an example of how to use this method, see the bin_drop.py example.
hiero.ui.registerPanel(id, command)[source]
hiero.ui.registeredActions() Returns a list of all registered actions.
Returns:

a tuple of QActions

hiero.ui.resetCurrentWorkspace() Resets the current Workspace to its default state.
Returns:

None

hiero.ui.restorePanel(id)[source]
hiero.ui.saveWorkspace(name) Save the current Workspace with name.
Returns:

None

Example: hiero.ui.saveWorkspace(‘NewWorkspaceName’)

hiero.ui.sendToViewerA(hiero.core.BinItem) Sends a BinItem's activeItem (Clip/Sequence) to the Viewer A.
hiero.ui.sendToViewerA(hiero.core.Sequence) Sends a Sequence to the Viewer A.
hiero.ui.sendToViewerA(hiero.core.Clip) Sends a Clip to the Viewer A.
hiero.ui.sendToViewerB(hiero.core.BinItem) Sends a BinItem's activeItem (Clip/Sequence) to the Viewer B.
hiero.ui.sendToViewerB(hiero.core.Sequence) Sends a Sequence to the Viewer B.
hiero.ui.sendToViewerB(hiero.core.Clip) Sends a Clip to the Viewer B.
hiero.ui.setWorkspace(name) Sets the Workspace with name, as per the name in the Workspace menu.
Returns:

None

Example: hiero.ui.setWorkspace(‘Reviewing’)

hiero.ui.trackNameValidator()[source]
hiero.ui.unregisterBinViewCustomMimeDataType(customMimeType) unregisters a custom mime type that was previously registered using hiero.ui.registerBinViewCustomMimeDataType().
hiero.ui.unregisterPanel(id, command)[source]
hiero.ui.updateViewer()
hiero.ui.windowManager() returns the single WindowManager object.
Returns:

hiero.ui.WindowManager