protected void DrawTrackState(Rect trackRect, Rect expandedRect, TrackAsset track)
        {
            if (Event.current.type == EventType.Layout)
            {
                bool needStateBox = false;

                //Mute
                if (track.muted && !TimelineUtility.IsParentMuted(track))
                {
                    Rect bgRect = expandedRect;
                    TimelineWindow.instance.OverlayDrawData.Add(OverlayDrawer.CreateColorOverlay(
                                                                    GUIClip.Unclip(bgRect),
                                                                    DirectorStyles.Instance.customSkin.colorTrackDarken));
                    needStateBox = true;
                }

                //Lock
                if (!needStateBox && track.locked && !TimelineUtility.IsLockedFromGroup(track))
                {
                    Rect bgRect = expandedRect;
                    TimelineWindow.instance.OverlayDrawData.Add(OverlayDrawer.CreateTextureOverlay(
                                                                    GUIClip.Unclip(bgRect),
                                                                    Styles.lockBg));
                    needStateBox = true;
                }

                if (needStateBox)
                {
                    DrawTrackStateBox(trackRect, track);
                }
            }
        }
        static void DrawMuteOverlay(DrawData data)
        {
            DirectorStyles styles = TimelineWindow.styles;

            var colorOverlay = OverlayDrawer.CreateColorOverlay(GUIClip.Unclip(data.contentRect), styles.customSkin.colorTrackDarken);

            colorOverlay.Draw();

            Rect textRect   = Graphics.CalculateTextBoxSize(data.contentRect, styles.fontClip, k_Muted, WindowConstants.overlayTextPadding);
            var  boxOverlay = OverlayDrawer.CreateTextBoxOverlay(
                GUIClip.Unclip(textRect),
                k_Muted.text,
                styles.fontClip,
                Color.white,
                styles.customSkin.colorLockTextBG,
                styles.displayBackground);

            boxOverlay.Draw();
        }