Files
Magical-Jumping-Bean/Library/metadata/84/84b5362754a9d934ba259398b757d0be
T

171 lines
10 KiB
Plaintext
Raw Normal View History

2019-09-29 19:40:54 -04:00
í(p2019.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€j€H€wÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€Q€j€H€€ÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€Q€j€y€
€ Þ€#!€.€,"€€…ÿÿÿÿ#@1€1€ÿÿÿÿ$Þ€€%.€j€&Õ€“ÿÿÿÿ'€1€1€ÿÿÿÿ(ÀÞ€€)€j€ÿÿÿÿ*€H€›€ÿÿÿÿ+€1€1€ÿÿÿÿ,@Þ€€-Q€j€.y€
€ /Þ€#0€.€,1€ €§2@¾€¶ 3@Þ€#4€.€,5€H€»ÿÿÿÿ6€1€1€ÿÿÿÿ7@Þ€€8Q€j€9H€Æÿÿÿÿ:€1€1€ÿÿÿÿ;@Þ€€<Q€j€=H€Øÿÿÿÿ>€1€1€ÿÿÿÿ?@Þ€€@Q€j€AMonoImporterPPtr<EditorExtension>m_FileIDm_PathIDPPtr<PrefabInstance>m_ExternalObjectsSourceAssetIdentifiertypeassemblynamem_UsedFileIDsm_DefaultReferencesexecutionOrdericonm_UserDatam_AssetBundleNamem_AssetBundleVariantsÿÿ£Gñ×Ü�Z56 :!@iÁJ*�€7€ÿÿÿÿ€¦€²€E€ Þ€€.€€(a€ Þ€€.€€†€r€ Þ€ €.€
€H€«€ÿÿÿÿ €1€1€ÿÿÿÿ @Þ€€
Q€j€H€ê€ÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€Q€j€ñ€=ÿÿÿÿ€1€1€ÿÿÿÿ€Þ€€€j€ÿÿÿÿ€H€›€ÿÿÿÿ€1€1€ÿÿÿÿ@Þ€€Q€j€y€
€ Þ€€.€€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_Namespace``\ày¯À H[crEš�C«R9‰{u
ë8Packages/com.unity.timeline/Editor/Actions/ItemAction.csày¯
ItemAction<using System.Collections.Generic;
using System.Linq;
using UnityEngine;
using UnityEngine.Timeline;
namespace UnityEditor.Timeline
{
[ActiveInMode(TimelineModes.Default)]
abstract class ItemAction<T> : MenuItemActionBase where T : class
{
public abstract bool Execute(WindowState state, T[] items);
protected virtual MenuActionDisplayState GetDisplayState(WindowState state, T[] items)
{
return items.Length > 0 ? MenuActionDisplayState.Visible : MenuActionDisplayState.Disabled;
}
protected virtual string GetDisplayName(WindowState state, T[] items)
{
return GetDisplayName(this);
}
public bool CanExecute(WindowState state, T[] items)
{
return GetDisplayState(state, items) == MenuActionDisplayState.Visible;
}
protected virtual void AddSelfToMenu(GenericMenu menu, WindowState state, T[] items)
{
var displayState = GetDisplayState(state, items);
if (displayState == MenuActionDisplayState.Visible && !IsActionActiveInMode(this, TimelineWindow.instance.currentMode.mode))
displayState = MenuActionDisplayState.Disabled;
if (displayState == MenuActionDisplayState.Hidden)
return;
var subMenuPath = GetSubMenuPath();
var displayName = this.GetDisplayName(state, items);
var menuItemName = subMenuPath + displayName;
var separator = GetSeparator(this);
if (separator != null && separator.before)
menu.AddSeparator(subMenuPath);
if (displayState == MenuActionDisplayState.Visible)
{
menu.AddItem(new GUIContent(menuItemName), false, f =>
{
Execute(state, items);
}, this);
}
else
{
menu.AddDisabledItem(new GUIContent(menuItemName));
}
if (separator != null && separator.after)
menu.AddSeparator(subMenuPath);
}
string GetSubMenuPath()
{
string subMenuPath = string.Empty;
var categoryAttr = GetCategoryAttribute(this);
if (categoryAttr != null)
{
subMenuPath = categoryAttr.Category;
if (!subMenuPath.EndsWith("/"))
subMenuPath += "/";
}
return subMenuPath;
}
public static bool HandleShortcut(WindowState state, Event evt, T item)
{
T[] items = { item };
foreach (ItemAction<T> action in actions)
{
var attr = action.GetType().GetCustomAttributes(typeof(ShortcutAttribute), true);
foreach (ShortcutAttribute shortcut in attr)
{
if (shortcut.MatchesEvent(evt))
{
if (s_ShowActionTriggeredByShortcut)
Debug.Log(action.GetType().Name);
if (!IsActionActiveInMode(action, TimelineWindow.instance.currentMode.mode))
return false;
var result = action.Execute(state, items);
state.Refresh();
state.Evaluate();
return result;
}
}
}
return false;
}
static List<ItemAction<T>> s_ActionClasses;
static List<ItemAction<T>> actions
{
get
{
if (s_ActionClasses == null)
{
s_ActionClasses = GetActionsOfType(typeof(ItemAction<T>)).Select(x => (ItemAction<T>)x.GetConstructors()[0].Invoke(null)).ToList();
}
return s_ActionClasses;
}
}
public static void AddToMenu(GenericMenu menu, WindowState state)
{
var items = SelectionManager.SelectedItemOfType<T>().ToArray();
if (items.Length < 1)
return;
var actionsToAdd = actions.Where(i => !TypeUtility.IsHiddenInMenu(i.GetType())).ToList();
if (actionsToAdd.Any())
menu.AddSeparator(string.Empty);
else
return;
actionsToAdd.ForEach(action =>
{
action.AddSelfToMenu(menu, state, items);
});
}
public static bool Invoke<TAction>(WindowState state, T[] items)
where TAction : ItemAction<T>
{
var itemsDerived = items.ToArray();
if (!itemsDerived.Any())
return false;
var action = actions.FirstOrDefault(x => x.GetType() == typeof(TAction));
if (action != null)
return action.Execute(state, itemsDerived);
return false;
}
public static bool Invoke<TAction>(WindowState state, T item)
where TAction : ItemAction<T>
{
return Invoke<TAction>(state, new[] {item});