Files
Magical-Jumping-Bean/Library/metadata/8d/8d34348f8b97a334291f5cf31adc5d67
T

199 lines
11 KiB
Plaintext
Raw Normal View History

2019-09-29 19:40:54 -04:00
í2019.2.3f1þÿÿÿÿÿ’3$øÌuñ옲e+ Í=^7€ÿÿÿÿ¦€²Ð¦¦¦€#¦€+H€3ÿÿÿÿ1€1€ÿÿÿÿ@Þ Q€j
H€<ÿÿÿÿ 1€1€ÿÿÿÿ @Þ
Q€jÕ€Iÿÿÿÿ1€1€ÿÿÿÿÀÞH€j€ÿÿÿÿ1€1€ÿÿÿÿ@ÞQ€j€PAssetMetaDataguiddata[0]data[1]data[2]data[3]pathNameoriginalNamelabelsassetStoreRef ÿÿfš†!ë5˜9Ý4QÁóBí7€ÿÿÿÿ¦€²
E Þ€#.€,5a Þ€#.€,€r Þ€# .€,
H€«€ÿÿÿÿ 1€1€ÿÿÿÿ @Þ
Q€jñ€JÿÿÿÿÀ1€1€ÿÿÿÿÞ€j€ÿÿÿÿ\€ÿÿÿÿH€rÿÿÿÿ1€1€ÿÿÿÿ@ÞQ€jH€wÿÿÿÿ1€1€ÿÿÿÿ@ÞQ€jH€€ÿÿÿÿ1€1€ÿÿÿÿ@ÞQ€jy
 Þ€#!.€,"€…ÿÿÿÿ#@1€1€ÿÿÿÿ$Þ%.€j&Õ€“ÿÿÿÿ'1€1€ÿÿÿÿ(ÀÞ)€j€ÿÿÿÿ*H€›€ÿÿÿÿ+1€1€ÿÿÿÿ,@Þ-Q€j.y
 /Þ€#0.€,1 €§2@¾€¶ 3@Þ€#4.€,5H€»ÿÿÿÿ61€1€ÿÿÿÿ7@Þ8Q€j9H€Æÿÿÿÿ:1€1€ÿÿÿÿ;@Þ<Q€j=H€Øÿÿÿÿ>1€1€ÿÿÿÿ?@Þ@Q€jAMonoImporterPPtr<EditorExtension>m_FileIDm_PathIDPPtr<PrefabInstance>m_ExternalObjectsSourceAssetIdentifiertypeassemblynamem_UsedFileIDsm_DefaultReferencesexecutionOrdericonm_UserDatam_AssetBundleNamem_AssetBundleVariantsÿÿ£Gñ×ÜZ56 :!@iÁJ*€7€ÿÿÿÿ¦€²E Þ.(a Þ.€r Þ .
H€«€ÿÿÿÿ 1€1€ÿÿÿÿ @Þ
Q€jH€ê€ÿÿÿÿ1€1€ÿÿÿÿ@ÞQ€jñ€=ÿÿÿÿ1€1€ÿÿÿÿÞ€j€ÿÿÿÿH€›€ÿÿÿÿ1€1€ÿÿÿÿ@ÞQ€jy
 Þ.y€Q Þ. Þ€X!H€iÿÿÿÿ"1€1€ÿÿÿÿ#@Þ$Q€j%H€uÿÿÿÿ&1€1€ÿÿÿÿ'@Þ(Q€j)PPtr<EditorExtension>m_FileIDm_PathIDPPtr<PrefabInstance>m_DefaultReferencesm_Iconm_ExecutionOrderm_ClassNamem_Namespacepp\ày¯ÐØCCø¸y:C’ñÅ?¡ÍÕvHPackages/com.unity.timeline/Editor/treeview/ItemGui/TimelineMarkerGUI.csày¯TimelineMarkerGUIusing System;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Timeline;
using UnityObject = UnityEngine.Object;
namespace UnityEditor.Timeline
{
class TimelineMarkerGUI : TimelineItemGUI, ISnappable, IAttractable
{
public event Action onStartDrag;
int m_ProjectedClipHash;
int m_MarkerHash;
bool m_Selectable;
MarkerDrawOptions m_MarkerDrawOptions;
MarkerEditor m_Editor;
IMarker marker { get; }
bool selectable
{
get { return m_Selectable; }
}
public double time
{
get { return marker.time; }
}
public override double start
{
get { return time; }
}
public override double end
{
get { return time; }
}
public override void Select()
{
zOrder = zOrderProvider.Next();
SelectionManager.Add(marker);
TimelineWindowViewPrefs.GetTrackViewModelData(parent.asset).markerTimeStamps[m_MarkerHash] = DateTime.UtcNow.Ticks;
}
public override bool IsSelected()
{
return SelectionManager.Contains(marker);
}
public override void Deselect()
{
SelectionManager.Remove(marker);
}
public override ITimelineItem item
{
get { return ItemsUtils.ToItem(marker); }
}
IZOrderProvider zOrderProvider { get; }
public TimelineMarkerGUI(IMarker theMarker, IRowGUI parent, IZOrderProvider provider) : base(parent)
{
marker = theMarker;
m_Selectable = marker.GetType().IsSubclassOf(typeof(UnityObject));
m_MarkerHash = 0;
var o = marker as object;
if (!o.Equals(null))
m_MarkerHash = o.GetHashCode();
zOrderProvider = provider;
zOrder = zOrderProvider.Next();
ItemToItemGui.Add(marker, this);
m_Editor = CustomTimelineEditorCache.GetMarkerEditor(theMarker);
}
int ComputeDirtyHash()
{
return time.GetHashCode();
}
static void DrawMarker(Rect drawRect, Type type, bool isSelected, bool isCollapsed, MarkerDrawOptions options)
{
if (Event.current.type == EventType.Repaint)
{
bool hasError = !string.IsNullOrEmpty(options.errorText);
var style = StyleManager.UssStyleForType(type);
style.Draw(drawRect, GUIContent.none, false, false, !isCollapsed, isSelected);
if (hasError)
GUI.Box(drawRect, String.Empty, DirectorStyles.Instance.markerWarning);
var tooltip = hasError ? options.errorText : options.tooltip;
if (!string.IsNullOrEmpty(tooltip) && drawRect.Contains(Event.current.mousePosition))
{
GUIStyle.SetMouseTooltip(tooltip, drawRect);
}
}
}
void UpdateDrawData()
{
if (Event.current.type == EventType.Layout)
{
try
{
m_MarkerDrawOptions = m_Editor.GetMarkerOptions(marker);
}
catch (Exception e)
{
Debug.LogException(e);
m_MarkerDrawOptions = CustomTimelineEditorCache.GetDefaultMarkerEditor().GetMarkerOptions(marker);
}
}
}
public override void Draw(Rect trackRect, bool trackRectChanged, WindowState state)
{
UpdateDrawData();
// compute marker hash
var currentMarkerHash = ComputeDirtyHash();
// update the clip projected rectangle on the timeline
CalculateClipRectangle(trackRect, state, currentMarkerHash, trackRectChanged);
var isSelected = selectable && SelectionManager.Contains(marker);
var showMarkers = parent.showMarkers;
QueueOverlay(treeViewRect, isSelected, !showMarkers);
DrawMarker(treeViewRect, marker.GetType(), isSelected, !showMarkers, m_MarkerDrawOptions);
if (Event.current.type == EventType.Repaint && showMarkers && !parent.locked)
state.spacePartitioner.AddBounds(this, rect);
}
public void QueueOverlay(Rect rect, bool isSelected, bool isCollapsed)
{
if (Event.current.type == EventType.Repaint && m_Editor.supportsDrawOverlay)
{
rect = GUIClip.Unclip(rect);
TimelineWindow.instance.AddUserOverlay(marker, rect, m_Editor, isCollapsed, isSelected);
}
}
public override void StartDrag()
{
if (onStartDrag != null)
onStartDrag.Invoke();
}
void CalculateClipRectangle(Rect trackRect, WindowState state, int projectedClipHash, bool trackRectChanged)
{
if (m_ProjectedClipHash == projectedClipHash && !trackRectChanged)
return;
m_ProjectedClipHash = projectedClipHash;
treeViewRect = RectToTimeline(trackRect, state);
}
public override Rect RectToTimeline(Rect trackRect, WindowState state)
{
var style = StyleManager.UssStyleForType(marker.GetType());
var width = style.fixedWidth;
var height = style.fixedHeight;
var x = ((float)marker.time * state.timeAreaScale.x) + state.timeAreaTranslation.x + trackRect.xMin;
x -= 0.5f * width;
return new Rect(x, trackRect.y, width, height);
}
public IEnumerable<Edge> SnappableEdgesFor(IAttractable attractable, ManipulateEdges manipulateEdges)
{
var edges = new List<Edge>();
var attractableGUI = attractable as TimelineMarkerGUI;
var canAddEdges = !(attractableGUI != null && attractableGUI.parent == parent);
if (canAddEdges)
edges.Add(new Edge(time));
return edges;
}
public bool ShouldSnapTo(ISnappable snappable)
{
return snappable != this;