Esempio n. 1
0
        public static void AddMarkerMenuCommands(GenericMenu menu, TrackAsset trackAsset, double candidateTime)
        {
            var markerTypes = TypeUtility.GetMarkerTypes().Where(x => TypeUtility.DoesTrackSupportMarkerType(trackAsset, x)).ToArray();

            if (markerTypes.Any())
            {
                menu.AddSeparator(String.Empty);
                var addMarkerCommand = new Func <Type, IMarker>(type => AddMarkerCommand(trackAsset, type, candidateTime));
                AddMarkerMenuCommands(menu, markerTypes, addMarkerCommand, !trackAsset.lockedInHierarchy);
            }
            RemoveInvalidMarkersMenuItem(menu, trackAsset);
        }
Esempio n. 2
0
        public static void AddMarkerMenuCommands(GenericMenu menu, TrackAsset track, Func <Type, IMarker> command, bool enabled)
        {
            var markerTypes = TypeUtility.GetBuiltInMarkerTypes().Union(TypeUtility.GetUserMarkerTypes());

            if (track != null)
            {
                markerTypes = markerTypes.Where(x => TypeUtility.DoesTrackSupportMarkerType(track, x));
            }

            menu.AddSeparator(string.Empty);
            AddMarkerMenuCommands(menu, markerTypes, command, enabled);
            RemoveInvalidMarkersMenuItem(menu, track);
        }
Esempio n. 3
0
 public bool IsCompatibleWithTrack(TrackAsset track)
 {
     return(TypeUtility.DoesTrackSupportMarkerType(track, m_Marker.GetType()));
 }
Esempio n. 4
0
        static void AddMarkerMenuCommands(List <MenuActionItem> menuItems, ICollection <TrackAsset> tracks, Action <Type, Object> command, bool enabled)
        {
            var markerTypes = TypeUtility.GetBuiltInMarkerTypes().Union(TypeUtility.GetUserMarkerTypes());

            if (tracks != null)
            {
                markerTypes = markerTypes.Where(x => tracks.All(track => (track == null) || TypeUtility.DoesTrackSupportMarkerType(track, x))); // null track indicates marker track to be created
            }
            AddMarkerMenuCommands(menuItems, markerTypes, command, enabled);
        }