/
TON618OFF
/
Unity-Project-RTU
Обзор
Документация
Войти
/
TON618OFF
/
Unity-Project-RTU
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
Library/PackageCache/com.unity.visualscripting@1.9.4/Editor/VisualScripting.Flow/Framework/Codebase/CreateStructOption.cs
75 строк
2 KB
TON618OFF
release
03 окт 2024, 22:20
03 окт 2024, 22:20
7c70e9f
Код
Авторство
О чём код?
using System; namespace Unity.VisualScripting { [FuzzyOption(typeof(CreateStruct))] public class CreateStructOption : UnitOption<CreateStruct> { public CreateStructOption() : base() { } public CreateStructOption(CreateStruct unit) : base(unit) { } public Type structType { get; private set; } protected override void FillFromUnit() { structType = unit.type; base.FillFromUnit(); } protected override string Label(bool human) { if (human) { return $"Create {structType.HumanName()} ()"; } else { return $"new {structType.CSharpName()} ()"; } } protected override string Haystack(bool human) { if (human) { return $"{structType.HumanName()}: Create {structType.HumanName()}"; } else { return $"new {structType.CSharpName()}"; } } public override string SearchResultLabel(string query) { return base.SearchResultLabel(query) + " ()"; } protected override int Order() { return 0; } protected override string FavoriteKey() { return $"{structType.FullName}@create"; } public override void Deserialize(UnitOptionRow row) { base.Deserialize(row); structType = Codebase.DeserializeType(row.tag1); } public override UnitOptionRow Serialize() { var row = base.Serialize(); row.tag1 = Codebase.SerializeType(structType); return row; } } }