public virtual void OnBuildTrackContextMenu(GenericMenu menu, TrackAsset trackAsset, WindowState state) { var mousePosition = trackMenuContext.mousePosition; var candidateTime = TimelineHelpers.GetCandidateTime(state, mousePosition, trackAsset); SequencerContextMenu.AddClipMenuCommands(menu, trackAsset, candidateTime); SequencerContextMenu.AddMarkerMenuCommands(menu, trackAsset, candidateTime); }
public static void ShowMenu(Vector2?mousePosition, WindowState state) { var menu = new GenericMenu(); ContextMenus.markerHeaderMenu.AddToMenu(menu, state); var timeline = state.editSequence.asset; var time = TimelineHelpers.GetCandidateTime(state, mousePosition); var enabled = timeline.markerTrack == null || !timeline.markerTrack.lockedInHierarchy && !state.editSequence.isReadOnly; var addMarkerCommand = new Func <Type, IMarker>(type => AddMarkerCommand(type, time, state)); SequencerContextMenu.AddMarkerMenuCommands(menu, timeline.markerTrack, addMarkerCommand, enabled); menu.ShowAsContext(); }
public static void ShowMenu(Vector2?mousePosition, WindowState state) { var menu = new GenericMenu(); ContextMenus.markerHeaderMenu.AddToMenu(menu, state); var timeline = state.editSequence.asset; var markerTypes = TypeUtility.GetMarkerTypes(); // Marker track supports all Markers for now if (markerTypes.Any()) { menu.AddSeparator(string.Empty); var time = TimelineHelpers.GetCandidateTime(state, mousePosition); var addMarkerCommand = new Func <Type, IMarker>(type => AddMarkerCommand(type, time, state)); var enabled = timeline.markerTrack == null || !timeline.markerTrack.lockedInHierarchy; SequencerContextMenu.AddMarkerMenuCommands(menu, markerTypes, addMarkerCommand, enabled); } if (timeline.markerTrack != null) { SequencerContextMenu.RemoveInvalidMarkersMenuItem(menu, timeline.markerTrack); } menu.ShowAsContext(); }