pymel.core.windows.outlinerEditor¶
- outlinerEditor(*args, **kwargs)¶
This command creates an outliner editor which can be used to display a list of objects.WARNING: some flag combinations may not behave as you expect. The command is really intended for internal use for creating the outliner used by the various editors.
Flags:
Long Name / Short Name Argument Types Properties allowMultiSelection / ams bool If true then multiple selection will be allowed in the outliner. alwaysToggleSelect / ats bool If true, then clicking on an item in the outliner will select or deselect it without affecting the selection of other items (unless allowMultiSelection is false). If false, clicking on an item in the outliner will replace the current selection with the selected item. animLayerFilterOptions / alf unicode Specifies whether a filter is to be applied when displaying animation layers. If so, the options can be allAffecting(no filter), active(only the active layers on the object will be displayed) and animLayerEditor(the settings will be taken from the animation layer editor). attrAlphaOrder / aao unicode Specify how attributes are to be sorted. Current recognised values are defaultfor no sorting and ascendto sort attributes from ‘a’ to ‘’z’ and descendto sort from ‘z’ to ‘a’. Notes: a) this only applies to top level attributes. attrFilter / af unicode Specifies the name of an itemFilter object to be placed on this editor. This filters the attributes displayed in the editor. autoExpand / xpd bool This flag specifies whether or not objects that are loaded in should have their attributes automatically expanded. autoExpandLayers / ael bool If true then when a node with animation layer is displayed, all the animation layers will show up in expanded form. autoSelectNewObjects / autoSelectNewObjects bool This flag specifies whether or not new objects added to the outliner should be automatically selected. containersIgnoreFilters / cif bool This flag specifices whether or not filters should be ignored when displaying container contents. control / ctl bool Query only. Returns the top level control for this editor. Usually used for getting a parent to attach popup menus. Caution: It is possible for an editor to exist without a control. The query will return NONEif no control is present. defineTemplate / dt unicode Puts the command in a mode where any other flags and args are parsed and added to the command template specified in the argument. They will be used as default arguments in any subsequent invocations of the command when templateName is set as the current template. directSelect / ds bool If true then clicking on an item in the outliner will add or remove just that item from the selection connection. If false then clicking on an item in the outliner causes the selection connection to be reloaded with the currently selected items in the outliner. displayMode / dm unicode Affects how the outliner displays when a filter is applied. List mode is a non-indented flat list. DAG mode indents to represent the hierarchical structure of the model. doNotSelectNewObjects / dns bool If true this flag specifies that new objects added to the outliner will not be selected, even if they are active. docTag / dtg unicode Attaches a tag to the editor. dropIsParent / dip bool This flag specifies the mode for drag and drop. If the flag is true, dropping items will do a reparent. If it is false, dropping will reorder items. By default, the flag is true (parent). editAttrName / ean bool This flag specifies whether or not attribute names can be edited. By default double-clicking on an attribute will open the expression editor for that attribute. exists / ex bool Returns whether the specified object exists or not. Other flags are ignored. expandAllItems / eai bool Expand or collapse all items in the outliner. expandAllSelectedItems / eas bool Expand or collapse all selected items in the outliner. expandAttribute / att bool Force the outliner to fill the selection list with only attributes. expandConnections / xc bool This flag specifies whether or not attributes should be expanded to show their input connections. Note: currently the expansion will only show animCurves. expandObjects / eo bool This flag specifies whether or not objects that are loaded in should be automatically expanded. feedbackItemName / fbn bool Returns the outliner item name at the current mouse position, if any. feedbackRowNumber / fbr bool Returns the outliner row number at the current mouse position, if any. filter / f unicode Specifies the name of an itemFilter object to be used with this editor. This filters the information coming onto the main list of the editor. forceMainConnection / fmc unicode Specifies the name of a selectionConnection object that the editor will use as its source of content. The editor will only display items contained in the selectionConnection object. This is a variant of the -mainListConnection flag in that it will force a change even when the connection is locked. This flag is used to reduce the overhead when using the -unlockMainConnection , -mainListConnection, -lockMainConnection flags in immediate succession. getCurrentSetOfItem / gcs int Returns the current set of item at the given row. As an item can belong to number of sets, current set is the set to which the item belongs to currently. highlightActive / ha bool This flag specifies whether or not the outliner should highlight objects that are active. Note: if the outliner is driving the contents of another editor, setting highlightActive to true may produce unexpected behavior. highlightConnection / hlc unicode Specifies the name of a selectionConnection object that the editor will synchronize with its highlight list. Not all editors have a highlight list. For those that do, it is a secondary selection list. highlightSecondary / hs bool This flag specifies whether or not the outliner should highlight objects that are contained in the highlightConnection. ignoreDagHierarchy / hir bool This flag specifies whether or not DAG objects are displayed in their DAG hierarchy. Warning: using this flag without some other form of sensible filtering will lead to a very confusing outliner. ignoreHiddenAttribute / iha bool Sets whether or not the outliner ignores the ‘hidden in outliner’ flag on nodes. ignoreOutlinerColor / ioc bool Sets whether or not the outliner ignores the ‘use outliner color’ flag on nodes. isChildSelected / ics PyNode This flag allows you to query if one or more of the children of the specified item is selected in the outliner. The item should be specified using a unique DAG path. Note that if the specified item appears multiple times in the outliner, the result will be true if one or more children of any occurrence of the specified item in the outliner is/are selected. isSet / isSet int Returns true if the item present at the given row is a set. isSetMember / ism int Returns true if the item present at the given row is a set member. lockMainConnection / lck bool Locks the current list of objects within the mainConnection, so that only those objects are displayed within the editor. Further changes to the original mainConnection are ignored. longNames / ln bool Controls whether long or short attribute names will be used in the interface. Note that this flag is ignored if the -niceNames flag is set. Default is short names. Queried, returns a boolean. mainListConnection / mlc unicode Specifies the name of a selectionConnection object that the editor will use as its source of content. The editor will only display items contained in the selectionConnection object. mapMotionTrails / mmt bool Sets whether or not we replace the motion trail in the outliner with the object it is trailing. masterOutliner / mst unicode This flag is the name of an outliner that this outliner will share the objects and state from. When an outliner is shared, all of its state information comes from, and is applied to, the master outliner. niceNames / nn bool Controls whether the attribute names will be displayed in a more user-friendly, readable way. When this is on, the longNames flag is ignored. When this is off, attribute names will be displayed either long or short, according to the longNames flag. Default is on. Queried, returns a boolean. object / obj PyNode This flags is used together with the parentObjectflag to get the name of the parent object for the specified object. organizeByLayer / obl bool If true then when a node with animation layer is displayed, attributes will be displayed according to the layer(s) it belongs to. eg: Layer1 Attr1 Attr2 Layer2 Attr1 If it is false then the outliner will be organized primarily by attributes. eg: Attr1 Layer1 Layer2 Attr2 Layer1 panel / pnl unicode Specifies the panel for this editor. By default if an editor is created in the create callback of a scripted panel it will belong to that panel. If an editor does not belong to a panel it will be deleted when the window that it is in is deleted. parent / p unicode Specifies the parent layout for this editor. This flag will only have an effect if the editor is currently un-parented. parentObject / po bool pinPlug / pin PyNode Pins the named plug, so it always appears in the outliner, irrespective of the incoming selection connection. In query mode, returns a list of the pinned plugs. refresh / rfs bool Causes the outliner to refresh itself. removeFromCurrentSet / rcs int Removes selected members of a set from their current set. Current set is the set to which item at the given row belongs to. If no selected items, the item at the given row is removed from its current set. renameItem / rni int Renames the item at the given row index in the outliner. renameSelectedItem / rsi bool Rename the first selected item in the outliner. renderFilterActive / rfa bool This is a query only flag which returns true if the render setup filter is Active, i.e one of the four render filters (Inside Selected, Outside Selected, Inside All Layers, Outside All Layers) is applied on the outliner currently, false otherwise. renderFilterIndex / rfi int Sets the Render Setup Filter to the index passed. This only works if the filter is visible in outliner and its selection is not locked. Valid indices are: 0 - Scene2 - Inside Selected3 - Outside Selected4 - Inside All Layers5 - Outside All LayersDefault: Scene 0 In query mode returns current index of the filter. renderFilterVisible / rfv bool Show/Hide the Render Setup Filter in outliner. In query mode returns whether the Render Setup Filter is visible or not. selectCommand / sec script A command to be executed when an item is selected. selectionConnection / slc unicode Specifies the name of a selectionConnection object that the editor will synchronize with its own selection list. As the user selects things in this editor, they will be selected in the selectionConnection object. If the object undergoes changes, the editor updates to show the changes. selectionOrder / sod unicode Specify how objects are sorted in selection list. Current recognised values are selectionfor sorting in selection order and displayto sort objects in the same order that the outliner does. setFilter / sf unicode Specifies the name of a filter which is used to filter which (if any) sets to display. setsIgnoreFilters / sif bool This flag specifies whether or not the filter should be ignored for expanding sets to show set members (default is true). showAnimCurvesOnly / aco bool This flag modifies the showConnected flag. If showConnected is set to true then this flag will cause display of only those attributes that are connected to an animCurve. If showConnected is set to false then this flag does nothing. showAnimLayerWeight / saw bool If true then when a node with animation layer is displayed, the weight of the layer will be displayed if it is keyed. showAssets / a bool This flags specifies whether assets should be shown in the outliner. showAssignedMaterials / sam bool Specifies whether to show assigned materials under shapes. showAttrValues / av bool This flag specifies whether attribute values or attribute names should be displayed. Note: currently only string attributes can have their values displayed. showAttributes / atr bool Specifies whether to show attributes or not. showCompounds / cmp bool This flag specifies whether or not compound attributes should be displayed, or just the leaf attributes. Note: if showConnected is true, and the compound attribute is connected, it will still be displayed. showConnected / con bool This flag modifies the showAttributes flag. If showAttributes is set to true then this flag will cause display of only those attributes that are connected in the dependency graph. If showAttributes is set to false then this flag does nothing. showContainedOnly / sco bool This flags specifies whether nodes belonging to containers should be show under the container node only. Otherwise, it will show up under the world as well. showContainerContents / scc bool This flags specifies whether the contents of the container should be shown under the container node in the outliner. showDagOnly / dag bool This flag specifies whether all dependency graph objects will be displayed, or just DAG objects. showLeafs / laf bool This flag specifies whether or not leaf attributes should be displayed, or just the compound attributes. Note: if showConnected is true, and the leaf attribute is connected, it will still be displayed. showMuteInfo / smi bool showNamespace / sn bool This flag specifies whether all objects will have their namespace displayed, if namespace different than root. showNumericAttrsOnly / num bool This flag specifies whether or not all attributes should be displayed, or just numeric attributes. Note: if showConnected is true, and the attribute is connected, it will still be displayed. showPinIcons / spi bool Sets whether pin icons are shown for unpinned plugs. showPublishedAsConnected / spc bool This flags enables attributes that are published to be displayed in italics. Otherwise, only attributes connected as a destination are shown in italics. showReferenceMembers / rm bool Specifies whether to show reference node members under the reference node in the outliner. showReferenceNodes / rn bool Specifies whether to show reference nodes or not. showSelected / sc bool If true then the selected items are expanded in the outliner. showSetMembers / ssm bool If true then when a set is expanded, the set members will be displayed. If false, then only other sets will be displayed. showShapes / shp bool Specifies whether to show shapes or not. showTextureNodesOnly / tno bool This flag modifies the showConnected flag. If showConnected is set to true then this flag will cause display of only those attributes that are connected to a texture node. If showConnected is set to false then this flag does nothing. showTimeEditor / ste bool If true, all nodes related to the Time Editor will be shown as a hierarchy. showUVAttrsOnly / uv bool This flag specifies whether or not all attributes should be displayed, or just uv attributes. Note: currently the only attribute which will be displayed is Shape.uvSet.uvSetName. showUnitlessCurves / su bool This flag (in combination with -expandConnections) specifies whether or not connection expansion should show unitless animCurves. showUpstreamCurves / suc bool Specifies exactly which attributes are displayed when showAttributes and expandConnections are both true. If true, the dependency graph is searched upstream for all curves that drive the selected plugs (showing multiple curves for example in a typical driven key setup, where first the driven key curve is encountered, followed by the actual animation curve that drives the source object). If false, only the first curves encountered will be shown. Note that, even if false, multiple curves can be shown if e.g. a blendWeighted node is being used to combine multiple curves. sortOrder / so unicode Specify how objects are to be sorted. Current recognised values are nonefor no sorting and dagNameto sort DAG objects by name. Notes: a) non-DAG objects are always sorted by nodeType and name. b) when sortOrder is set to dagName, objects cannot be reordered using drag-and-drop, they can however be reparented. stateString / sts bool Query only flag. Returns the MEL command that will create an editor to match the current editor state. The returned command string uses the string variable $editorName in place of a specific name. transmitFilters / tf bool This flag specifies how the selectionConnection is populated when attribute filters are enabled. If this flag is set to true, then all the attributes that pass the filter will be placed on the selectionConnection. By default this flag is false. unParent / up bool Specifies that the editor should be removed from its layout. This cannot be used in query mode. unlockMainConnection / ulk bool Unlocks the mainConnection, effectively restoring the original mainConnection (if it is still available), and dynamic updates. unpinPlug / unp PyNode Unpins the named plug. updateMainConnection / upd bool Causes a locked mainConnection to be updated from the orginal mainConnection, but preserves the lock state. useTemplate / ut unicode Forces the command to use a command template other than the current one. Flag can have multiple arguments, passed either as a tuple or a list. Derived from mel command maya.cmds.outlinerEditor
Example:
import pymel.core as pm # Create a new regular outliner in its own window # pm.window() # Result: ui.Window('window1') # pm.frameLayout( labelVisible=False ) # Result: ui.FrameLayout('window1|frameLayout15') # panel = pm.outlinerPanel() outliner = pm.outlinerPanel(panel, query=True,outlinerEditor=True) pm.outlinerEditor( outliner, edit=True, mainListConnection='worldList', selectionConnection='modelList', showShapes=False, showReferenceNodes=False, showReferenceMembers=False, showAttributes=False, showConnected=False, showAnimCurvesOnly=False, autoExpand=False, showDagOnly=True, ignoreDagHierarchy=False, expandConnections=False, showNamespace=True, showCompounds=True, showNumericAttrsOnly=False, highlightActive=True, autoSelectNewObjects=False, doNotSelectNewObjects=False, transmitFilters=False, showSetMembers=True, setFilter='defaultSetFilter' ) # Result: ui.OutlinerEditor('window1|frameLayout15|outlinerPanel2|outlinerPanel2|outlinerPanel2|outlinerPanel2') # pm.showWindow()