Legacy Documentation: Version 2018.2 (Go to current version)
  • C#
Experimental: this API is experimental and might be changed or removed in the future.


class in UnityEditor.Experimental.UIElements.GraphView


Inherits from:Experimental.UIElements.GraphView.GraphElement

Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.




Main GraphView node class.


expandedIs node expanded.
extensionContainerEmpty container used to display custom elements. After adding elements, call RefreshExpandedState in order to toggle this container visibility.
inputContainerInput container used for input ports.
mainContainerMain container that includes all other containers.
outputContainerOutputs container, used for output ports.
titleNode's title element.
titleContainerTitle bar container.
topContainerEntire top area containing input and output containers.


NodeNode's constructor.

Public Methods

BuildContextualMenuAdd menu items to the node contextual menu.
InstantiatePortCreate a new port specific to this node.
RefreshExpandedStateAfter adding custom elements to the extensionContainer, call this method in order for them to become visible.
RefreshPortsRefresh the layout of the ports.
SetPositionSet node position.

Protected Methods

OnPortRemovedCalled when port is remove.
ToggleCollapseToggle node's collapse state.
UseDefaultStylingApplies the default styling of Node. This must be explicitly called by Node subclasses that use their own uxml files.

Inherited Members

Static Properties

defaultFocusIndexThe default focus index for newly created elements.


canGrabFocusReturn true if the element can be focused.
focusControllerReturn the focus controller for this element.
focusIndexAn integer used to sort focusables in the focus ring. A negative value means that the element can not be focused.
capabilitiesGraph element's capabilities.
elementTypeColorColor used for the MiniMap view.
layerElement's layer in the graph.
selectedTrue if element is currently selected.
childCount Number of child elements in this object's contentContainer
clippingOptionsShould this element clip painting to its boundaries.
contentContainer child elements are added to this element, usually this
dataWatchAccess to this element data watch interface.
enabledInHierarchyReturns true if the VisualElement is enabled in its own hierarchy.
enabledSelfReturns true if the VisualElement is enabled locally.
persistenceKeyUsed for view data persistence (ie. tree expanded states, scroll position, zoom level).
scheduleRetrieves this VisualElement's IVisualElementScheduler
shadow Access to this element physical hierarchy
styleReference to the style object of this element.
this[int] Access to this element physical hierarchy
userDataThis property can be used to associate application-specific user data with this VisualElement.

Public Methods

HandleEventHandle an event, most often by executing the callbacks associated with the event.
HasBubbleHandlersReturn true if event handlers for the event propagation bubble up phase have been attached on this object.
HasCaptureHandlersReturn true if event handlers for the event propagation capture phase have been attached on this object.
RegisterCallbackAdd an event handler on the instance. If the handler has already been registered on the same phase (capture or bubbling), this will have no effect.
UnregisterCallbackRemove callback from the instance.
BlurTell the element to release the focus.
FocusAttempt to give the focus to this element.
GetGlobalCenterGet the element's center point.
GetPositionGet element position.
HitTestSee if point is over element.
IsAscendableChecks if the Element is automatically brought to front when selected.
IsDroppableElement is drag&droppable.
IsMovableElement is movable.
IsResizableElement is resizable.
IsSelectableElement is selectable.
IsSelectedElement is currently selected in specific container.
OnSelectedCalled when element is selected.
OnUnselectedCalled when element is unselected.
ResetLayerReset the element to its original layer.
SelectSelect element.
UnselectDeselect element.
AddAdd an element to this element's contentContainer
AddStyleSheetPathAdds this stylesheet file to this element list of applied styles
AnyDirtyChecks if any of the ChangeTypes have been marked dirty.
BringToFrontBrings this element to the end of its parent children list. The element will be visually in front of any overlapping sibling elements.
ChildrenReturns the elements from its contentContainer
ClearRemove all child elements from this element's contentContainer
ContainsReturns true if the element is a direct child of this VisualElement
ElementAtRetrieves the child element at position
EnableInClassListEnables or disables the class with the given name.
FindAncestorUserDataSearchs up the hierachy of this VisualElement and retrieves stored userData, if any is found.
FindCommonAncestorFinds the lowest commont ancestor between two VisualElements inside the VisualTree hierarchy
GetEnumeratorAllows to iterate into this elements children
GetFirstAncestorOfTypeWalks up the hierarchy, starting from this element's parent, and returns the first VisualElement of this type
GetFirstOfTypeWalks up the hierarchy, starting from this element, and returns the first VisualElement of this type
GetFullHierarchicalPersistenceKeyCombine this VisualElement's VisualElement.persistenceKey with those of its parents to create a more unique key for use with VisualElement.GetOrCreatePersistentData.
GetOrCreatePersistentDataTakes a reference to an existing persisted object and a key and returns the object either filled with the persisted state or as-is.
HasStyleSheetPathChecks if this stylesheet file is in this element list of applied styles
IndexOfRetrieves the child index of the specified VisualElement.
InsertInsert an element into this element's contentContainer
OnPersistentDataReadyCalled when the persistent data is accessible and/or when the data or persistence key have changed (VisualElement is properly parented).
OverwriteFromPersistedDataOverwrite object from the persistent data store.
PlaceBehindPlaces this element right before the sibling element in their parent children list. If the element and the sibling position overlap, the element will be visually behind of its sibling.
PlaceInFrontPlaces this element right after the sibling element in their parent children list. If the element and the sibling position overlap, the element will be visually in front of its sibling.
RemoveRemoves this child from the hierarchy
RemoveAtRemove the child element located at this position from this element's contentContainer
RemoveFromHierarchyRemoves this element from its parent hierarchy
RemoveStyleSheetPathRemoves this stylesheet file from this element list of applied styles
SavePersistentDataWrite persistence data to file.
SendToBackSends this element to the beginning of its parent children list. The element will be visually behind any overlapping sibling elements.
SetEnabledChanges whether the current VisualElement is enabled or not. When disabled, a VisualElement does not receive most events.
SortReorders child elements from this VisualElement contentContainer.
ToggleInClassListToggles between adding and removing the given class name from the class list.

Protected Methods

OnStyleResolvedCallback when the styles of an object have changed.

Did you find this page useful? Please give it a rating: