ISupportsOverlaysWithFilter.IsOverlaySupported
Declaration
public bool IsOverlaySupported(string overlayId);Параметры
| Параметр | Описание |
|---|---|
| накладка | ID наложения, которое система пытается добавить в окно. |
Возвращаемое значение
логическое True, если накладка должна быть добавлена в окно. False, если она должна быть пропусчена.
Описание
Реализуйте эту функцию для фильтрации наложений, добавляемых в это окно.
using System; using UnityEditor; using UnityEditor.Overlays; using UnityEngine; using UnityEngine.UIElements; class EditorWindowOverlayExample : EditorWindow, ISupportsOverlays { [MenuItem("Window/Overlay Supported Window Example")] static void Init() => GetWindow<EditorWindowOverlayExample>(); void OnGUI() { GUILayout.Label("Here is some text"); GUILayout.FlexibleSpace(); GUILayout.Label("Plus some more text, but on the bottom of the screen."); } } [Overlay(typeof(EditorWindowOverlayExample), "Is Mouse Hovering Me?", true)] class IsMouseHoveringMe : Overlay { Label m_MouseLabel; public override VisualElement CreatePanelContent() { m_MouseLabel = new Label(); m_MouseLabel.style.minHeight = 40; m_MouseLabel.RegisterCallback<MouseEnterEvent>(evt => m_MouseLabel.text = "Mouse is hovering this Overlay content!"); m_MouseLabel.RegisterCallback<MouseLeaveEvent>(evt => m_MouseLabel.text = "Mouse is not hovering this Overlay content."); return m_MouseLabel; } }