public TimelineDataSource(TimelineTreeViewGUI parentGUI, TreeViewController treeView, TimelineWindow sequencerWindow) : base(treeView)
 {
     this.m_TreeView.set_useExpansionAnimation(false);
     this.m_TimelineWindow = sequencerWindow;
     this.m_ParentGUI      = parentGUI;
     this.FetchData();
 }
Esempio n. 2
0
 public TimelineDataSource(TimelineTreeViewGUI parentGUI, TreeViewController treeView, TimelineWindow sequencerWindow)
     : base(treeView)
 {
     m_TreeView.useExpansionAnimation = false;
     m_TimelineWindow = sequencerWindow;
     m_ParentGUI      = parentGUI;
     FetchData();
 }
Esempio n. 3
0
 void InitializeGUIIfRequired()
 {
     RefreshLastSelectionIfRequired();
     InitializeTimeArea();
     if (treeView == null && state.editSequence.asset != null)
     {
         treeView = new TimelineTreeViewGUI(this, state.editSequence.asset, position);
     }
 }
Esempio n. 4
0
            public TimelinePoint(WindowState state, Vector2 mousePosition)
            {
                m_State       = state;
                m_TreeViewGUI = state.GetWindow().treeView;

                m_Time       = m_State.PixelToTime(mousePosition.x);
                m_YPos       = mousePosition.y;
                m_YScrollPos = m_TreeViewGUI.scrollPosition.y;
            }
        public abstract void OnGraphRebuilt(); // callback when the corresponding graph is rebuilt. This can happen, but not have the GUI rebuilt.

        protected TimelineTrackBaseGUI(int id, int depth, TreeViewItem parent, string displayName, TrackAsset trackAsset, TreeViewController tv, TimelineTreeViewGUI tvgui)
            : base(id, depth, parent, displayName)
        {
            m_Drawer = TrackDrawer.CreateInstance(trackAsset);
            m_Drawer.sequencerState = tvgui.TimelineWindow.state;

            isExpanded   = false;
            isDropTarget = false;
            track        = trackAsset;
            treeView     = tv;

            m_TreeViewGUI = tvgui;
        }
        public TimelineGroupGUI(TreeViewController treeview, TimelineTreeViewGUI treeviewGUI, int id, int depth, TreeViewItem parent, string displayName, TrackAsset trackAsset, bool isRoot)
            : base(id, depth, parent, displayName, trackAsset, treeview, treeviewGUI)
        {
            m_Styles = DirectorStyles.Instance;
            m_IsRoot = isRoot;

            var trackPath    = AssetDatabase.GetAssetPath(trackAsset);
            var sequencePath = AssetDatabase.GetAssetPath(treeviewGUI.TimelineWindow.state.editSequence.asset);

            if (trackPath != sequencePath)
            {
                m_IsReferencedTrack = true;
            }

            m_GroupDepth = CalculateGroupDepth(parent);
        }
Esempio n. 7
0
        public TimelineTrackGUI(TreeViewController tv, TimelineTreeViewGUI w, int id, int depth, TreeViewItem parent, string displayName, TrackAsset sequenceActor) : base(tv, w, id, depth, parent, displayName, sequenceActor, false)
        {
            AnimationTrack animationTrack = sequenceActor as AnimationTrack;

            if (animationTrack != null)
            {
                this.m_InfiniteTrackDrawer = new InfiniteTrackDrawer(new AnimationTrackKeyDataSource(animationTrack));
                this.UpdateInfiniteClipEditor(animationTrack, w.TimelineWindow);
                if (animationTrack.ShouldShowInfiniteClipEditor())
                {
                    this.clipCurveEditor = new ClipCurveEditor(new InfiniteClipCurveDataSource(this), w.TimelineWindow);
                }
            }
            this.m_HadProblems     = false;
            this.m_InitHadProblems = false;
            this.m_Bindings        = base.track.get_outputs().ToArray <PlayableBinding>();
            base.AddManipulator(new TrackVerticalResize());
        }
Esempio n. 8
0
        public TimelineTrackGUI(TreeViewController tv, TimelineTreeViewGUI w, int id, int depth, TreeViewItem parent, string displayName, TrackAsset sequenceActor)
            : base(tv, w, id, depth, parent, displayName, sequenceActor, false)
        {
            AnimationTrack animationTrack = sequenceActor as AnimationTrack;

            if (animationTrack != null)
            {
                m_InfiniteTrackDrawer = new InfiniteTrackDrawer(new AnimationTrackKeyDataSource(animationTrack));
            }
            else if (sequenceActor.HasAnyAnimatableParameters() && !sequenceActor.clips.Any())
            {
                m_InfiniteTrackDrawer = new InfiniteTrackDrawer(new TrackPropertyCurvesDataSource(sequenceActor));
            }

            UpdateInfiniteClipEditor(w.TimelineWindow);

            var bindings = track.outputs.ToArray();

            m_TrackDrawData.m_HasBinding = bindings.Length > 0;
            if (m_TrackDrawData.m_HasBinding)
            {
                m_TrackDrawData.m_Binding = bindings[0];
            }
            m_TrackDrawData.m_IsSubTrack      = IsSubTrack();
            m_TrackDrawData.m_AllowsRecording = DoesTrackAllowsRecording(sequenceActor);
            m_DefaultTrackIcon = TrackResourceCache.GetTrackIcon(track);


            m_TrackEditor = CustomTimelineEditorCache.GetTrackEditor(sequenceActor);

            try
            {
                m_TrackDrawOptions = m_TrackEditor.GetTrackOptions(track, null);
            }
            catch (Exception e)
            {
                Debug.LogException(e);
                m_TrackDrawOptions = CustomTimelineEditorCache.GetDefaultTrackEditor().GetTrackOptions(track, null);
            }

            m_TrackDrawOptions.errorText = null; // explicitly setting to null for an uninitialized state

            RebuildGUICacheIfNecessary();
        }
        public TimelineTrackGUI(TreeViewController tv, TimelineTreeViewGUI w, int id, int depth, TreeViewItem parent, string displayName, TrackAsset sequenceActor)
            : base(tv, w, id, depth, parent, displayName, sequenceActor, false)
        {
            AnimationTrack animationTrack = sequenceActor as AnimationTrack;

            if (animationTrack != null)
            {
                m_InfiniteTrackDrawer = new InfiniteTrackDrawer(new AnimationTrackKeyDataSource(animationTrack));
                UpdateInfiniteClipEditor(animationTrack, w.TimelineWindow);

                if (animationTrack.ShouldShowInfiniteClipEditor())
                {
                    clipCurveEditor = new ClipCurveEditor(new InfiniteClipCurveDataSource(this), w.TimelineWindow);
                }
            }

            m_HadProblems     = false;
            m_InitHadProblems = false;
            m_Bindings        = track.outputs.ToArray();
        }
 public TimelineTrackErrorGUI(TreeViewController treeview, TimelineTreeViewGUI treeviewGUI, int id, int depth, TreeViewItem parent, string displayName, ScriptableObject track, PlayableAsset owner)
     : base(id, depth, parent, displayName, null, treeview, treeviewGUI)
 {
     m_ScriptableObject = track;
     m_Owner            = owner;
 }