1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- using System;
- using UnityEngine;
- using UnityEngine.UIElements;
- namespace UnityEditor.U2D.Animation
- {
- internal class WeightInspectorIMGUIPanel : VisualElement
- {
- public class CustomUXMLFactor : UxmlFactory<WeightInspectorIMGUIPanel, UxmlTraits> {}
- private WeightInspector m_WeightInspector = new WeightInspector();
- public WeightInspector weightInspector
- {
- get { return m_WeightInspector; }
- }
- public event Action weightsChanged = () => {};
- public WeightInspectorIMGUIPanel()
- {
- name = "WeightInspectorIMGUIPanel";
- styleSheets.Add(ResourceLoader.Load<StyleSheet>("SkinningModule/WeightInspectorIMGUIPanelStyle.uss"));
- this.Add(new IMGUIContainer(OnGUI));
- this.pickingMode = PickingMode.Ignore;
- this.RegisterCallback<MouseDownEvent>((e) => { e.StopPropagation(); });
- this.RegisterCallback<MouseUpEvent>((e) => { e.StopPropagation(); });
- }
- protected void OnGUI()
- {
- var selectionCount = 0;
- if (weightInspector.selection != null)
- selectionCount = weightInspector.selection.Count;
- using (new EditorGUI.DisabledGroupScope(m_WeightInspector.spriteMeshData == null || selectionCount == 0))
- {
- GUILayout.Label(new GUIContent(TextContent.vertexWeight, TextContent.vertexWeightToolTip));
- EditorGUI.BeginChangeCheck();
- m_WeightInspector.OnInspectorGUI();
- if (EditorGUI.EndChangeCheck())
- weightsChanged();
- }
- }
- }
- }
|