diff options
Diffstat (limited to 'Library/PackageCache/com.unity.timeline@1.2.13/Editor/Manipulators/Sequence/RectangleSelect.cs')
| -rw-r--r-- | Library/PackageCache/com.unity.timeline@1.2.13/Editor/Manipulators/Sequence/RectangleSelect.cs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Manipulators/Sequence/RectangleSelect.cs b/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Manipulators/Sequence/RectangleSelect.cs new file mode 100644 index 0000000..17342ef --- /dev/null +++ b/Library/PackageCache/com.unity.timeline@1.2.13/Editor/Manipulators/Sequence/RectangleSelect.cs @@ -0,0 +1,36 @@ +using System.Linq; +using UnityEngine; + +namespace UnityEditor.Timeline +{ + class RectangleSelect : RectangleTool + { + protected override bool enableAutoPan { get { return false; } } + + protected override bool CanStartRectangle(Event evt, Vector2 mousePosition, WindowState state) + { + if (evt.button != 0 || evt.alt) + return false; + + return PickerUtils.pickedElements.All(e => e is IRowGUI); + } + + protected override bool OnFinish(Event evt, WindowState state, Rect rect) + { + var selectables = state.spacePartitioner.GetItemsInArea<ISelectable>(rect).ToList(); + + if (!selectables.Any()) + return false; + + if (ItemSelection.CanClearSelection(evt)) + SelectionManager.Clear(); + + foreach (var selectable in selectables) + { + ItemSelection.HandleItemSelection(evt, selectable); + } + + return true; + } + } +} |
