osu.Framework/Graphics/Containers/CompositeDrawable.cs
/// <summary>
/// Checks whether the alive state of a child has changed and processes it. This will add or remove
/// the child from <see cref="aliveInternalChildren"/> depending on its alive state.
///
/// This should only ever be called on a <see cref="CompositeDrawable"/>'s own <see cref="internalChildren"/>.
///
/// <para>Note that this does NOT check the load state of this <see cref="CompositeDrawable"/> to check if it can hold any alive children.</para>
/// </summary>
/// <param name="child">The child to check.</param>
/// <returns>Whether the child's alive state has changed.</returns>
Checks whether the alive state of a child has changed and processes it. This will add or remove
the child from  depending on its alive state.

This should only ever be called on a 's own .

Note that this does NOT check the load state of this  to check if it can hold any alive children.
Checks whether the alive state of a child has changed and processes it . This will add or remove the child from depending on its alive state . This should only ever be called on a ' s own . Note that this does NOT check the load state of this to check if it can hold any alive children .
private bool checkChildLife(Drawable child)
        {
            if (child.ShouldBeAlive)
            {
                if (!child.IsAlive)
                {
                    if (child.LoadState < LoadState.Ready)
                    {
                        loadChild(child);
                        if (child.LoadState < LoadState.Ready)
                            return false;
                    }
                    MakeChildAlive(child);
                    return true;
                }
            }
            else
            {
                if (child.IsAlive)
                {
                    MakeChildDead(child);
                    return true;
                }
                if (child.RemoveWhenNotAlive)
                {
                    removeChildByDeath(child);
                }
            }
            return false;
        }
private bool checkChildLife ( Drawable child ) { if ( child . ShouldBeAlive ) { if ( ! child . IsAlive ) { if ( child . LoadState < LoadState . Ready ) { loadChild ( child ) ; if ( child . LoadState < LoadState . Ready ) return false ; } MakeChildAlive ( child ) ; return true ; } } else { if ( child . IsAlive ) { MakeChildDead ( child ) ; return true ; } if ( child . RemoveWhenNotAlive ) { removeChildByDeath ( child ) ; } } return false ; }
Checks whether the alive state of a child has changed and processes it.
Checks whether the alive state of a child has changed and processes it .
// If we're already loaded, we can eagerly allow children to be loaded
Whether the child's alive state has changed.
Whether the child ' s alive state has changed .
child
Drawable
The child to check.
The child to check .