study/first_study/Library/PackageCache/com.unity.shadergraph@3686fafd4720/Editor/Util/CompatibilityExtensions.cs
jh04010421 739d49f1a0 Unity | 2026.01.20
수업 실습 파일
2026-01-20 11:01:57 +09:00

52 lines
1.3 KiB
C#

using System;
using UnityEngine;
using UnityEngine.UIElements;
namespace UnityEditor.ShaderGraph.Drawing
{
static class CompatibilityExtensions
{
#if !UNITY_2018_3_OR_NEWER
public static void MarkDirtyRepaint(this VisualElement element)
{
element.Dirty(ChangeType.Repaint);
}
#endif
#if !UNITY_2018_3_OR_NEWER
public static void CaptureMouse(this VisualElement element)
{
element.TakeMouseCapture();
}
public static void ReleaseMouse(this VisualElement element)
{
element.ReleaseMouseCapture();
}
#endif
public static void OnToggleChanged(this Toggle toggle, EventCallback<ChangeEvent<bool>> callback)
{
#if UNITY_2018_3_OR_NEWER
toggle.RegisterValueChangedCallback(callback);
#else
toggle.OnToggle(() => callback(ChangeEvent<bool>.GetPooled(!toggle.value, toggle.value)));
#endif
}
}
static class TrickleDownEnum
{
#if UNITY_2018_3_OR_NEWER
public static readonly TrickleDown NoTrickleDown = TrickleDown.NoTrickleDown;
public static readonly TrickleDown TrickleDown = TrickleDown.TrickleDown;
#else
public static readonly Capture NoTrickleDown = Capture.NoCapture;
public static readonly Capture TrickleDown = Capture.Capture;
#endif
}
}