forked from BilalY/Rasagar
35 lines
1.1 KiB
C#
35 lines
1.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
|
|
namespace UnityEditor.Tilemaps
|
|
{
|
|
/// <summary>
|
|
/// An attribute for GridBrushBase which specifies the TilemapEditorTool types which can work with the GridBrushBase.
|
|
/// </summary>
|
|
[AttributeUsage(AttributeTargets.Class)]
|
|
public class BrushToolsAttribute : Attribute
|
|
{
|
|
private List<Type> m_ToolTypes;
|
|
internal List<Type> toolList
|
|
{
|
|
get { return m_ToolTypes; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Constructor for BrushToolsAttribute. Specify the TilemapEditorTool types which can work with the GridBrushBase.
|
|
/// </summary>
|
|
/// <param name="tools">An array of TilemapEditorTool types which can work with the GridBrushBase.</param>
|
|
public BrushToolsAttribute(params Type[] tools)
|
|
{
|
|
m_ToolTypes = new List<Type>();
|
|
foreach (var toolType in tools)
|
|
{
|
|
if (toolType.IsSubclassOf(typeof(TilemapEditorTool)) && !m_ToolTypes.Contains(toolType))
|
|
{
|
|
m_ToolTypes.Add(toolType);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|