// Copyright (c) 2012-2024 Wojciech Figat. All rights reserved.
using System;
using FlaxEngine;
namespace FlaxEditor.Surface
{
///
/// Custom node archetype flags.
///
[Flags]
[HideInEditor]
public enum NodeFlags
{
///
/// Nothing at all. Nothing but thieves.
///
None = 0,
///
/// Don't adds a close button.
///
NoCloseButton = 1,
///
/// Node should use dependant and independent boxes types.
/// TODO: unused UseDependantBoxes flag, remove it
///
UseDependantBoxes = 2,
///
/// Node cannot be spawned via GUI interface (but can be pasted).
///
NoSpawnViaGUI = 4,
///
/// Node can be used in the material graphs.
///
MaterialGraph = 8,
///
/// Node can be used in the particle emitter graphs.
///
ParticleEmitterGraph = 16,
///
/// Disables removing that node from the graph.
///
NoRemove = 32,
///
/// Node can be used in the animation graphs.
///
AnimGraph = 64,
///
/// Disables moving node (by user).
///
NoMove = 128,
///
/// Node can be used in the visual script graphs.
///
VisualScriptGraph = 256,
///
/// Node cannot be spawned via copy-paste (can be added only from code).
///
NoSpawnViaPaste = 512,
///
/// Node can be used in the Behavior Tree graphs.
///
BehaviorTreeGraph = 1024,
///
/// Node can have different amount of items in values array.
///
VariableValuesSize = 2048,
///
/// Node can be used in the all visual graphs.
///
AllGraphs = MaterialGraph | ParticleEmitterGraph | AnimGraph | VisualScriptGraph | BehaviorTreeGraph,
}
}