diff options
Diffstat (limited to 'Library/PackageCache/com.unity.timeline@1.2.13/Editor/Window/TimelineWindow_TrackGui.cs')
| -rw-r--r-- | Library/PackageCache/com.unity.timeline@1.2.13/Editor/Window/TimelineWindow_TrackGui.cs | 219 |
1 files changed, 0 insertions, 219 deletions
diff --git a/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Window/TimelineWindow_TrackGui.cs b/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Window/TimelineWindow_TrackGui.cs deleted file mode 100644 index 578ae60..0000000 --- a/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Window/TimelineWindow_TrackGui.cs +++ /dev/null @@ -1,219 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using UnityEngine; -using UnityEngine.Timeline; -using UnityEngine.Playables; - -namespace UnityEditor.Timeline -{ - partial class TimelineWindow - { - public TimelineTreeViewGUI treeView { get; private set; } - - void TracksGUI(Rect clientRect, WindowState state, TimelineModeGUIState trackState) - { - if (Event.current.type == EventType.Repaint && treeView != null) - { - state.spacePartitioner.Clear(); - } - - if (state.IsEditingASubTimeline() && !state.IsEditingAnEmptyTimeline()) - { - var headerRect = clientRect; - headerRect.width = state.sequencerHeaderWidth; - Graphics.DrawBackgroundRect(state, headerRect); - - var clipRect = clientRect; - clipRect.xMin = headerRect.xMax; - Graphics.DrawBackgroundRect(state, clipRect, subSequenceMode: true); - } - else - { - Graphics.DrawBackgroundRect(state, clientRect); - } - - if (!state.IsEditingAnEmptyTimeline()) - m_TimeArea.DrawMajorTicks(sequenceContentRect, state.referenceSequence.frameRate); - - GUILayout.BeginVertical(); - { - GUILayout.Space(5.0f); - GUILayout.BeginHorizontal(); - - if (this.state.editSequence.asset == null) - DrawNoSequenceGUI(state); - else - DrawTracksGUI(clientRect, trackState); - - GUILayout.EndHorizontal(); - } - GUILayout.EndVertical(); - - Graphics.DrawShadow(clientRect); - } - - void DrawNoSequenceGUI(WindowState windowState) - { - bool showCreateButton = false; - var currentlySelectedGo = UnityEditor.Selection.activeObject != null ? UnityEditor.Selection.activeObject as GameObject : null; - var textContent = DirectorStyles.noTimelineAssetSelected; - var existingDirector = currentlySelectedGo != null ? currentlySelectedGo.GetComponent<PlayableDirector>() : null; - var existingAsset = existingDirector != null ? existingDirector.playableAsset : null; - - if (currentlySelectedGo != null && !TimelineUtility.IsPrefabOrAsset(currentlySelectedGo) && existingAsset == null) - { - showCreateButton = true; - textContent = new GUIContent(String.Format(DirectorStyles.createTimelineOnSelection.text, currentlySelectedGo.name, "a Director component and a Timeline asset")); - } - GUILayout.FlexibleSpace(); - GUILayout.BeginVertical(); - GUILayout.FlexibleSpace(); - - GUILayout.Label(textContent); - - if (showCreateButton) - { - GUILayout.BeginHorizontal(); - var textSize = GUI.skin.label.CalcSize(textContent); - GUILayout.Space((textSize.x / 2.0f) - (WindowConstants.createButtonWidth / 2.0f)); - if (GUILayout.Button("Create", GUILayout.Width(WindowConstants.createButtonWidth))) - { - var message = DirectorStyles.createNewTimelineText.text + " '" + currentlySelectedGo.name + "'"; - string newSequencePath = EditorUtility.SaveFilePanelInProject(DirectorStyles.createNewTimelineText.text, currentlySelectedGo.name + "Timeline", "playable", message, ProjectWindowUtil.GetActiveFolderPath()); - if (!string.IsNullOrEmpty(newSequencePath)) - { - var newAsset = CreateInstance<TimelineAsset>(); - AssetDatabase.CreateAsset(newAsset, newSequencePath); - - Undo.IncrementCurrentGroup(); - - if (existingDirector == null) - { - existingDirector = Undo.AddComponent<PlayableDirector>(currentlySelectedGo); - } - - existingDirector.playableAsset = newAsset; - SetCurrentTimeline(existingDirector); - var newTrack = TimelineHelpers.CreateTrack<AnimationTrack>(); - - windowState.previewMode = false; - TimelineUtility.SetSceneGameObject(windowState.editSequence.director, newTrack, currentlySelectedGo); - } - - // If we reach this point, the state of the pannel has changed; skip the rest of this GUI phase - // Fixes: case 955831 - [OSX] NullReferenceException when creating a timeline on a selected object - GUIUtility.ExitGUI(); - } - GUILayout.EndHorizontal(); - } - GUILayout.FlexibleSpace(); - GUILayout.EndVertical(); - GUILayout.FlexibleSpace(); - } - - public enum OverlayDataTypes - { - None, - BackgroundColor, - BackgroundTexture, - TextBox - } - - public struct OverlayData - { - public OverlayDataTypes types { get; private set; } - public Rect rect { get; internal set; } - public string text { get; private set; } - public Texture2D texture { get; private set; } - public Color color { get; private set; } - public GUIStyle backgroundTextStyle { get; private set; } - public GUIStyle textStyle { get; private set; } - - public static OverlayData CreateColorOverlay(Rect rectangle, Color backgroundColor) - { - OverlayData data = new OverlayData(); - data.rect = rectangle; - data.color = backgroundColor; - data.types = OverlayDataTypes.BackgroundColor; - return data; - } - - public static OverlayData CreateTextureOverlay(Rect rectangle, Texture2D backTexture) - { - OverlayData data = new OverlayData(); - data.rect = rectangle; - data.texture = backTexture; - data.types = OverlayDataTypes.BackgroundTexture; - return data; - } - - public static OverlayData CreateTextBoxOverlay(Rect rectangle, string msg, GUIStyle textstyle, Color textcolor, Color bgTextColor, GUIStyle bgTextStyle) - { - OverlayData data = new OverlayData(); - data.rect = rectangle; - data.text = msg; - data.textStyle = textstyle; - data.textStyle.normal.textColor = textcolor; - data.backgroundTextStyle = bgTextStyle; - data.backgroundTextStyle.normal.textColor = bgTextColor; - data.types = OverlayDataTypes.TextBox; - return data; - } - } - - internal List<OverlayData> OverlayDrawData = new List<OverlayData>(); - - void DrawTracksGUI(Rect clientRect, TimelineModeGUIState trackState) - { - GUILayout.BeginVertical(GUILayout.Height(clientRect.height)); - if (treeView != null) - { - if (Event.current.type == EventType.Layout) - { - OverlayDrawData.Clear(); - } - - treeView.OnGUI(clientRect); - - if (Event.current.type == EventType.Repaint) - { - foreach (var overlayData in OverlayDrawData) - { - using (new GUIViewportScope(sequenceContentRect)) - DrawOverlay(overlayData); - } - } - } - GUILayout.EndVertical(); - } - - void DrawOverlay(OverlayData overlayData) - { - Rect overlayRect = GUIClip.Clip(overlayData.rect); - if (overlayData.types == OverlayDataTypes.BackgroundColor) - { - EditorGUI.DrawRect(overlayRect, overlayData.color); - } - else if (overlayData.types == OverlayDataTypes.BackgroundTexture) - { - Graphics.DrawTextureRepeated(overlayRect, overlayData.texture); - } - else if (overlayData.types == OverlayDataTypes.TextBox) - { - using (new GUIColorOverride(overlayData.backgroundTextStyle.normal.textColor)) - GUI.Box(overlayRect, GUIContent.none, overlayData.backgroundTextStyle); - Graphics.ShadowLabel(overlayRect, GUIContent.Temp(overlayData.text), overlayData.textStyle, overlayData.textStyle.normal.textColor, Color.black); - } - } - - void RefreshInlineCurves() - { - foreach (var trackGUI in allTracks.OfType<TimelineTrackGUI>()) - { - if (trackGUI.inlineCurveEditor != null) - trackGUI.inlineCurveEditor.Refresh(); - } - } - } -} |
