GraphView
Main GraphView class.
Read time 11 minutesLast updated a month ago
Definition
- Type: Class
- Namespace: UnityEditor.Experimental.GraphView
- Assembly: UnityEditor
- Inherits from: VisualElement
- Implements: IEventHandler, IResolvedStyle, ITransform, ITransitionAnimations, IExperimentalFeatures, IVisualElementScheduler, ICustomStyle, ISelection
public abstract class GraphView : VisualElement, IEventHandler, IResolvedStyle, ITransform, ITransitionAnimations, IExperimentalFeatures, IVisualElementScheduler, ICustomStyle, ISelection
Fields
Value | Description |
|---|---|
| ports | All ports currently in the graph. |
Properties
Property | Description |
|---|---|
| canPasteSerializedData | Ask whether or not the serialized data can be pasted. |
| contentViewContainer | Main content container. |
| deleteSelection | Delete selection callback. |
| edges | All edges in the graph. |
| elementResized | Element resized callback. |
| elementsAddedToGroup | Callback for when GraphElements are added to the group. |
| elementsInsertedToStackNode | Callback for when GraphElements are inserted into a StackNode. |
| elementsRemovedFromGroup | Callback for when GraphElements are removed from the group. |
| elementsRemovedFromStackNode | Callback for when GraphElements are removed from a StackNode. |
| graphElements | All GraphElements in the graph. |
| graphViewChanged | Callback for when certain changes have occured in the graph. See GraphViewChange. |
| groupTitleChanged | Callback for when a group title is changed. |
| isReframable | Whether or not the selection is reframable. |
| maxScale | Max zoom level. |
| minScale | Min zoom level. |
| nodeCreationRequest | Callback for when the user requests to display the node creation window. |
| nodes | All nodes currently in the graph. |
| placematContainer | The PlacematContainer used by the GraphView. |
| referenceScale | Reference zoom level. |
| scale | Current graph zoom level. |
| scaleStep | Zoom step. See ContentZoomer.scaleStep for details. |
| selection | All currently selected elements in the graph. |
| serializeGraphElements | Callback for serializing graph elements for copy/paste and other actions. |
| supportsWindowedBlackboard | Set to true when this GraphView supports windowed Blackboards. Set to false otherwise. |
| unserializeAndPaste | Callback for unserializing graph elements and adding them to the graph. |
| viewport | The graph's viewport. This is currently just itself. |
| viewTransform | Graph's view transform. |
| viewTransformChanged | View transform changed callback. |
| zoomerMaxElementCountWithPixelCacheRegen | Number of elements in the graph above which the zoom manipulator will turn off pixel cache regeneration on each tick to avoid performance drops. |
Methods
Method | Description |
|---|---|
| AddElement | Add new GraphElement. Should use this instead of Add() for adding GraphElements. |
| AddLayer | Adds a new layer to the GraphView. |
| AddToSelection | Add element to selection. |
| BuildContextualMenu | Add menu items to the contextual menu. |
| CalculateRectToFitAll | Calculate the rectangle size and position to fit all elements in graph. |
| CanPasteSerializedData | Default method for checking if serialized data can be pasted. |
| ClearSelection | Clear selection. |
| CreatePlacematContainer | Override this method, in a derived class, to create a custom PlacematContainer. |
| DeleteElements | Remove elements from the graph view. |
| DeleteSelection | Delete selected elements. |
| DeleteSelectionOperation | Default method for deleting selection. |
| FrameAll | Focus view all elements in the graph. |
| FrameNext | Focus view on the next element after the one currently selected. |
| FrameOrigin | Focus view on the graph's origin. |
| FramePrev | Focus view on the previous element before the one currently selected. |
| FrameSelection | Focus view on currently selected elements. |
| GetBlackboard | Gets the blackboard associated with this GraphView. |
| GetCompatiblePorts | Get all ports compatible with given port. |
| GetEdgeByGuid | Get edge by its GUID. |
| GetElementByGuid | Get any element with a given GUID. |
| GetNodeByGuid | Get node with a given GUID. |
| GetPortByGuid | Get port by its GUID. |
| GetPortCenterOverride | Gets another location for a specific port and checks if the port has an overridden position. |
| HandleEventBubbleUp | Executes logic on this element during the BubbleUp phase, immediately before this element's BubbleUp callbacks. Calling StopPropagation will prevent further invocations of this method along the propagation path. |
| ReleaseBlackboard | Releases an associated blackboard from this GraphView. |
| RemoveElement | Remove element from the graph. |
| RemoveFromSelection | Remove element from selection. |
| SerializeGraphElements | Default method for serializing graph elements. |
| SetupZoom | Setup zoom properties. |
| UnserializeAndPasteOperation | Default method for unserializing elements and pasting. |
| UpdateViewTransform | Update the viewport transform. |
| ValidateTransform | Validate the view transform. |
Static Methods
Method | Description |
|---|---|
| CalculateFrameTransform | Calculate the view transform based on zoom level and the size of the window or parent. |
| CollectElements | Retrieves the set of elements that match a specified condition. The matching elements are selected from an enumerable of graph elements. |
Classes
Class | Description |
|---|---|
| GraphView.Layer | The layer class for placing and interacting with graph elements in a GraphView. |
Enums
Enum | Description |
|---|---|
| GraphView.AskUser | Whether or not to ask the user for certain actions like deleting selection. |
| GraphView.FrameType | Type of framing. |
Delegates
Delegate | Description |
|---|---|
| GraphView.CanPasteSerializedDataDelegate | Delegate for checking if serialized data can be pasted. |
| GraphView.DeleteSelectionDelegate | Delegate for deleting selection. |
| GraphView.ElementResized | Element resized delegate. |
| GraphView.GraphViewChanged | Delegate used to indicate a change in GraphView usualy done by a Manipulator. |
| GraphView.SerializeGraphElementsDelegate | Delegate for serializing graph elements. |
| GraphView.UnserializeAndPasteDelegate | Delegate for unserializing and pasting elements. |
| GraphView.ViewTransformChanged | View transform changed (zoom) delegate. |