private void SetupTestHeirarchy()
        {
            root          = new GameObject("Root", typeof(NestedFadeGroup)).GetComponent <NestedFadeGroup>();
            parent1       = new GameObject("Parent 1", typeof(NestedFadeGroup)).GetComponent <NestedFadeGroup>();
            parent1Child1 = new GameObject("Parent 1 Child 1", typeof(NestedFadeGroup)).GetComponent <NestedFadeGroup>();

            parent1Child1.transform.SetParent(parent1.transform);
            parent1.transform.SetParent(root.transform);
        }
        private void SetParent(NestedFadeGroup parentGroup)
        {
            UnsubscribeFromParent();
            ParentGroup = parentGroup;
            SubscribeToParent();

            // Trigger alpha change logic when reparented
            AlphaSelf = alpha;
        }