private void GenerateIconForBindingValidationResult(DirectorStyles styles, TrackBindingValidationResult validationResult) { if (!validationResult.IsValid()) { if (this.m_ProblemIcon == null) { this.m_ProblemIcon = new GUIContent(); } switch (validationResult.bindingState) { case TimelineTrackBindingState.NoGameObjectBound: this.m_ProblemIcon.set_image(styles.warning.get_normal().get_background()); this.m_ProblemIcon.set_tooltip("This actor or track is not bound to any GameObject in the scene."); break; case TimelineTrackBindingState.BoundGameObjectIsDisabled: this.m_ProblemIcon.set_image(styles.warning.get_normal().get_background()); this.m_ProblemIcon.set_tooltip("The bound GameObject (" + validationResult.bindingName + ") is disabled"); break; case TimelineTrackBindingState.NoValidComponentOnBoundGameObject: this.m_ProblemIcon.set_image(styles.warning.get_normal().get_background()); this.m_ProblemIcon.set_tooltip("Could not find an Animator on" + validationResult.bindingName); break; case TimelineTrackBindingState.RequiredComponentOnBoundGameObjectIsDisabled: this.m_ProblemIcon.set_image(styles.warning.get_normal().get_background()); this.m_ProblemIcon.set_tooltip("Animator is disabled"); break; } } }
private void RefreshStateIfBindingProblemIsFound(TimelineWindow.TimelineState state, bool hasProblems) { if (this.m_InitHadProblems && this.m_HadProblems != hasProblems) { TrackBindingValidationResult trackBindingValidationResult = this.GetTrackBindingValidationResult(state); bool flag = !trackBindingValidationResult.IsValid() && trackBindingValidationResult.bindingState != TimelineTrackBindingState.BoundGameObjectIsDisabled && trackBindingValidationResult.bindingState != TimelineTrackBindingState.RequiredComponentOnBoundGameObjectIsDisabled; if (flag) { state.Refresh(); } } }