void ClipCapsGUI()

in Assets/DefaultPlayables/Editor/TimelinePlayableWizard.cs [965:1055]


    void ClipCapsGUI ()
    {
        EditorGUILayout.BeginVertical (GUI.skin.box);

        if (showHelpBoxes)
        {
            EditorGUILayout.HelpBox(m_ClipCapsContent.tooltip, MessageType.Info);
            EditorGUILayout.Space();
        }

        EditorGUILayout.LabelField (m_ClipCapsContent);

        bool isLooping = (clipCaps & ClipCaps.Looping) == ClipCaps.Looping;
        bool isExtrapolation = (clipCaps & ClipCaps.Extrapolation) == ClipCaps.Extrapolation;
        bool isClipIn = (clipCaps & ClipCaps.ClipIn) == ClipCaps.ClipIn;
        bool isSpeedMultiplier = (clipCaps & ClipCaps.SpeedMultiplier) == ClipCaps.SpeedMultiplier;
        bool isBlending = (clipCaps & ClipCaps.Blending) == ClipCaps.Blending;

        bool isNone = !isLooping && !isExtrapolation && !isClipIn && !isSpeedMultiplier && !isBlending;
        bool isAll = isLooping && isExtrapolation && isClipIn && isSpeedMultiplier && isBlending;

        EditorGUI.BeginChangeCheck ();
        isNone = EditorGUILayout.ToggleLeft (m_CCNoneContent, isNone);
        if (EditorGUI.EndChangeCheck ())
        {
            if (isNone)
            {
                isLooping = false;
                isExtrapolation = false;
                isClipIn = false;
                isSpeedMultiplier = false;
                isBlending = false;
                isAll = false;
            }
        }

        EditorGUI.BeginChangeCheck ();
        isLooping = EditorGUILayout.ToggleLeft (m_CCLoopingContent, isLooping);
        isExtrapolation = EditorGUILayout.ToggleLeft (m_CCExtrapolationContent, isExtrapolation);
        isClipIn = EditorGUILayout.ToggleLeft (m_CCClipInContent, isClipIn);
        isSpeedMultiplier = EditorGUILayout.ToggleLeft (m_CCSpeedMultiplierContent, isSpeedMultiplier);
        isBlending = EditorGUILayout.ToggleLeft (m_CCBlendingContent, isBlending);
        if (EditorGUI.EndChangeCheck ())
        {
            isNone = !isLooping && !isExtrapolation && !isClipIn && !isSpeedMultiplier && !isBlending;
            isAll = isLooping && isExtrapolation && isClipIn && isSpeedMultiplier && isBlending;
        }

        EditorGUI.BeginChangeCheck ();
        isAll = EditorGUILayout.ToggleLeft (m_CCAllContent, isAll);
        if (EditorGUI.EndChangeCheck ())
        {
            if (isAll)
            {
                isNone = false;
                isLooping = true;
                isExtrapolation = true;
                isClipIn = true;
                isSpeedMultiplier = true;
                isBlending = true;
            }
        }

        EditorGUILayout.EndVertical();

        clipCaps = ClipCaps.None;

        if (isNone)
            return;

        if (isAll)
        {
            clipCaps = ClipCaps.All;
            return;
        }

        if (isLooping)
            clipCaps |= ClipCaps.Looping;

        if (isExtrapolation)
            clipCaps |= ClipCaps.Extrapolation;

        if (isClipIn)
            clipCaps |= ClipCaps.ClipIn;

        if (isSpeedMultiplier)
            clipCaps |= ClipCaps.SpeedMultiplier;

        if (isBlending)
            clipCaps |= ClipCaps.Blending;
    }