A game about forced loneliness, made by TACStudios
1using UnityEngine;
2using UnityEditor.Experimental.GraphView;
3using UnityEngine.UIElements;
4
5namespace UnityEditor.ShaderGraph.Drawing
6{
7 class GradientEdge : Edge
8 {
9 readonly CustomStyleProperty<Color> k_InputColorProperty = new CustomStyleProperty<Color>("--edge-input-color");
10 readonly CustomStyleProperty<Color> k_OutputColorProperty = new CustomStyleProperty<Color>("--edge-output-color");
11
12 Color m_InputColor;
13 Color m_OutputColor;
14
15 public Color inputColor
16 {
17 get { return m_InputColor; }
18 }
19
20 public Color outputColor
21 {
22 get { return m_OutputColor; }
23 }
24
25 public GradientEdge()
26 {
27 m_InputColor = defaultColor;
28 m_OutputColor = defaultColor;
29
30 RegisterCallback<CustomStyleResolvedEvent>(OnCustomStyleResolved);
31 }
32
33 public void UpdateClasses(ConcreteSlotValueType outputType, ConcreteSlotValueType inputType)
34 {
35 ClearClassList();
36 AddToClassList("edge");
37 AddToClassList("from" + outputType);
38 AddToClassList("to" + inputType);
39 }
40
41 private void OnCustomStyleResolved(CustomStyleResolvedEvent e)
42 {
43 Color inputValue;
44 Color outputValue;
45
46 ICustomStyle styles = e.customStyle;
47 if (styles.TryGetValue(k_InputColorProperty, out inputValue))
48 m_InputColor = inputValue;
49
50 if (styles.TryGetValue(k_OutputColorProperty, out outputValue))
51 m_OutputColor = outputValue;
52 }
53 }
54}