com.unity.graphtools.foundation 0.8.0-preview

com.unity.graphtools.foundation

Notes: processedReleased February 8, 2021

Browse versions

PreviousNext

Unity Compatibility

Minimum Unity: 2020.1

Features

  • Obsolete names on `Enumeration`
  • `class BasicModel.GraphTemplate` which provides a default `IGraphTemplate` implementation
  • `DefaultSearcherDatabaseProvider` which provides a default `ISearcherDatabaseProvider` implementation
  • `DropTarget` abstract `ModelUI` class handling drag and drop from SelectionDragger
  • `IDragAndDropHandler` interface demonstrating ability to handle drag and drop events

API Changes

  • `GtfoGraphView` class was merged into `GraphView`
  • `GtfoEditorWindow` class was merged into `GraphViewEditorWindow`
  • `VariableType` enum
  • `ITranslator.TranslateAndCompile`
  • `ITranslator.CanCompile`
  • `RequestCompilationAction` (moved to Visual Scripting ECS package)
  • `IGraphAssetModel.SourceFilePath`
  • `IDroppable` interface
  • `IDropTarget`. Use new class `DropTarget` to catch `GraphView` mouse drags as drag and drop instead of move.

📈 Improvements

  • `GtfoWindow.GetShortcutDictionary()` is no longer abstract. It is a virtual that provides a default dictionary.
  • `IGraphElement` renamed to `IModelUI`
  • `GraphElement` and `Port` now inherits from new class `ModelUI`
  • Renamed `State` to `GraphToolState`
  • Renamed `Store` to `CommandDispatcher`
  • Renamed `StoreHelper` to `CommandDispatcherHelper`
  • Renamed `BaseAction` to `Command` and all *Action* to *Command*
  • Renamed all `DefaultReducer` to `CommandHandler`
  • `Preferences` class is not abstract anymore.
  • `GraphView` class is not abstract anymore.
  • `GraphViewEditorWindow` class is not abstract anymore.
  • `vse-blank-page` USS class name changed to `ge-blank-page`
  • `CompilationResult` renamed to `GraphProcessingResult`
  • `CompilationStatus` renamed to `GraphProcessingStatus`
  • `GraphViewEditorWindow.RecompilationTriggerActions` renamed to `GraphViewEditorWindow.GraphProcessingTriggerActions`
  • `GraphViewEditorWindow.RecompileGraph` renamed to `GraphViewEditorWindow.ProcessGraph`
  • `Stencil.CreateTranslator` renamed to `Stencil.CreateGraphProcessor`
  • `Stencil.OnCompilationStarted` renamed to `Stencil.OnGraphProcessingStarted`
  • `Stencil.OnCompilationSucceeded` renamed to `Stencil.OnGraphProcessingSucceeded`
  • `Stencil.OnCompilationFailed` renamed to `Stencil.OnGraphProcessingFailed`
  • `Stencil.GetCompilationPluginHandlers` renamed to `Stencil.GetGraphProcessingPluginHandlers`
  • `ITranslator` renamed to `IGraphProcessor`
  • `ITranslator.Compile` renamed to `IGraphProcessor.ProcessGraph`
  • `BoolPref.AutoRecompile` renamed to `BoolPref.AutoProcess`
  • `CompilationStateComponent` renamed to `GraphProcessingStateComponent`
  • `CompilationTimer` renamed to `GraphProcessingTimer`
  • `GraphView.RecompilationTriggerActions` renamed to `GraphView.GraphProcessingTriggerActions`
  • `NoOpTranslator` renamed to `NoOpGraphProcessor`
  • `CompilerErrorBadgeModel` renamed to `GraphProcessingErrorBadgeModel`
  • `CompilerError` renamed to `GraphProcessingError`
  • `CompilerQuickFix` renamed to `QuickFix`
  • `CompilationOptions` renamed to `GraphProcessingOptions`
  • `BoolPref.AutoProcess` and `BoolPref.AutoAlignDraggedEdges` are now false by default.
  • `IGraphElementPart`, `BaseGraphElementPart` renamed to `IModelUIPart`, `BaseModelUIPart` respectively.
  • `GraphElementPartList` renamed to `ModelUIPartList`
  • `ICreatableGraphTemplate` merged into `IGraphTemplate`
  • `IOnboardingProvider` interface changed to `OnboardingProvider` abstract class
  • Default title of `GraphViewEditorWindow` is changed from *Visual Script* to *Graph Tool*
  • `Stencil.MoveNodeDependenciesByDefault` is now initialized to `false`
  • `GraphView` and `PlaceMat` no longer implement `IDropTarget`
  • `Stencil.DragNDropHandler` changed to `Stencil.GetExternalDragNDropHandler()`. Allows to dynamically select a drag and drop handler depending on context.
  • `Graphview.ExtractVariablesFromDroppedElements` changed to `Stencil.ExtractVariableFromGraphElement`
  • `SerializableGUID` is now backed by a Hash128 rather than a GUID.

🔧 Bug Fixes

  • Dragging a node to a port doesn't dispatch 2 actions anymore
  • `IMovable.Move(delta)` correctly uses `delta` parameter for `NodeModel`