< Summary

Class:UIHelper_ChangeTextAndIconColorOnFocus
Assembly:UIComponents
File(s):/tmp/workspace/unity-renderer/unity-renderer/Assets/UIComponents/Scripts/Utils/UIHelper_ChangeTextAndIconColorOnFocus.cs
Covered lines:12
Uncovered lines:0
Coverable lines:12
Total lines:42
Line coverage:100% (12 of 12)
Covered branches:0
Total branches:0

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
Awake()0%110100%
Start()0%110100%
OnDestroy()0%110100%
ComponentView_onFocused(...)0%770100%

File(s)

/tmp/workspace/unity-renderer/unity-renderer/Assets/UIComponents/Scripts/Utils/UIHelper_ChangeTextAndIconColorOnFocus.cs

#LineLine coverage
 1using TMPro;
 2using UnityEngine;
 3using UnityEngine.UI;
 4
 5/// <summary>
 6/// Used for customize the color of the text and icon of a UI Component.
 7/// </summary>
 8[RequireComponent(typeof(BaseComponentView))]
 9public class UIHelper_ChangeTextAndIconColorOnFocus : MonoBehaviour
 10{
 11    [SerializeField] internal TMP_Text textToChange;
 12    [SerializeField] internal Image iconToChange;
 13    [SerializeField] internal Color onFocusColor;
 14    [SerializeField] internal Color onLoseFocusColor;
 15
 16    internal BaseComponentView componentView;
 17
 18    private void Awake()
 19    {
 386720        componentView = GetComponent<BaseComponentView>();
 386721    }
 22
 23    private void Start()
 24    {
 125        componentView.onFocused += ComponentView_onFocused;
 126        ComponentView_onFocused(componentView.isFocused);
 127    }
 28
 29    private void OnDestroy()
 30    {
 384731        componentView.onFocused -= ComponentView_onFocused;
 384732    }
 33
 34    internal void ComponentView_onFocused(bool isFocused)
 35    {
 336        if (textToChange != null)
 337            textToChange.color = isFocused ? onFocusColor : onLoseFocusColor;
 38
 339        if (iconToChange != null)
 340            iconToChange.color = isFocused ? onFocusColor : onLoseFocusColor;
 341    }
 42}