public void DoShowBegin(TransitionBase transition, TransitionInputParameters transitionParameters, AppearanceParameters parameters) { var needToPlay = (this.id > 0 || this.playType == PlayType.Replace); if (this.playType == PlayType.Replace) { WindowSystem.AudioStop(null, this.clipType, this.id); } if (transition != null) { if (needToPlay == true) { WindowSystem.AudioPlay(this.window, this.clipType, this.id, this.playType == PlayType.Replace); transition.SetResetState(transitionParameters, this.window, null); transition.Play(null, this.window, transitionParameters, forward: true, callback: () => { parameters.Call(); }); } } else { if (needToPlay == true) { WindowSystem.AudioPlay(this.window, this.clipType, this.id, this.playType == PlayType.Replace); } parameters.Call(); } }
public void TransitionGroupAddTransition() { tlog.Debug(tag, $"TransitionGroupAddTransition START"); var testingTarget = new TransitionGroup(); Assert.IsNotNull(testingTarget, "Return a null object of FontClient"); Assert.IsInstanceOf <TransitionGroup>(testingTarget, "Should be an instance of TransitionGroup type."); try { using (TransitionBase tb = new TransitionBase()) { tb.TimePeriod = new TimePeriod(300); tb.AlphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Bounce); testingTarget.AddTransition(tb); } } catch (Exception e) { tlog.Debug(tag, e.Message.ToString()); Assert.Fail("Caught Exception : Failed!"); } testingTarget.Dispose(); tlog.Debug(tag, $"TransitionGroupAddTransition END (OK)"); }
/// <summary> /// Workaround for ObjectReference issues with ScriptableObjects (See ScriptableObjectContainer for details) /// </summary> /// <param name="objectReferences"></param> public override void SetReferencesFromContainer(UnityEngine.Object[] objectReferences) { if (objectReferences != null && objectReferences.Length == 1) { Target = objectReferences[0] as TransitionBase; } }
public void OnDirectionChanged(Direction oldDirection, Direction newDirection) { if (Bookshelf == null || Book3D == null) { throw new ArgumentException("bookshelf and book3d arguments cannot be null"); } if (newDirection == Direction.Center) { LastNextBook3D = NextBook3D; NextBook3D = Book3D; SwipeMode = SwipeMode.Book; } else { if (NextBook3D != null && NextBook3D.Model != null) { NextBook3D.Visibility = true; } NextBookIndex = Bookshelf.Books3D.Items.IndexOf(Book3D); if (newDirection == Direction.Left) { NextBookIndex--; } if (newDirection == Direction.Right) { NextBookIndex++; } if (NextBookIndex > 0 && NextBookIndex < Bookshelf.Books3D.Items.Count && Bookshelf.Books3D.Items.ElementAt(NextBookIndex).Model != null) { SwipeMode = SwipeMode.Book; NextBook3D = (Book3DViewModel)Bookshelf.Books3D.Items.ElementAt(NextBookIndex); } else { SwipeMode = SwipeMode.Shelf; } } if (SwipeMode == SwipeMode.Book) { var book = HBS.CreateBook(NextBook3D); openBookTransition = new OpenBookTransition(NextBook3D, book); //only left or right would actually open a new book if (newDirection != Direction.Center) { openBookTransition.OnTransitionStarting(); } activeTransition = openBookTransition; } if (SwipeMode == SwipeMode.Shelf) { activeTransition = new ShelfSwipeTransition(HBS.ViewModel.ShelfViewModel); HBS.ViewModel.BookFlyout3dVM.Visibility = false; } }
public void Apply(TransitionBase transition, TransitionInputParameters parameters, bool forward, float value, bool reset) { if (reset == true) { transition.SetResetState(parameters, this.window, null); } transition.Set(this.window, parameters, null, forward: forward, value: value); }
/// <summary> /// Instantiate transition from this step /// </summary> protected override TransitionBase Instantiate(IWorkplanContext context) { var engine = Workflow.CreateEngine(Workplan, context); var indexResolver = _indexResolver ??= TransitionBase.CreateIndexResolver(OutputDescriptions); var transition = new SubworkflowTransition(engine, indexResolver); return(transition); }
public override void Setup(TransitionBase.ParametersBase defaults) { var param = defaults as Parameters; if (param == null) return; // Place params installation here this.inState = new State(param.inState); this.outState = new State(param.outState); this.resetState = new State(param.resetState); }
public ReverseTransition( TransitionBase <TStateId> wrappedTransition, bool shouldInitWrappedTransition = true) : base( from: wrappedTransition.to, to: wrappedTransition.from, forceInstantly: wrappedTransition.forceInstantly) { this.wrappedTransition = wrappedTransition; this.shouldInitWrappedTransition = shouldInitWrappedTransition; }
public void TransitionBaseConstructor() { tlog.Debug(tag, $"TransitionBaseConstructor START"); var testingTarget = new TransitionBase(); Assert.IsNotNull(testingTarget, "Can't create success object TransitionBase"); Assert.IsInstanceOf <TransitionBase>(testingTarget, "Should be an instance of TransitionBase type."); tlog.Debug(tag, $"TransitionBaseConstructor END (OK)"); }
/// <summary> /// Creates a <see cref="TaskTransition{T}"/> for this activity type /// </summary> protected override TransitionBase Instantiate(IWorkplanContext context) { if (context.IsDisabled(this)) { return(new NullTransition()); } // Create transition var indexResolver = _indexResolver ?? (_indexResolver = TransitionBase.CreateIndexResolver(OutputDescriptions)); return(new TaskTransition <TActivity>(Parameters, indexResolver)); }
private const int FramesPerSecond = 60 * 4; //Probably need more than the 60 refresh rate, but 4 per frame may be excessive public static ITimeInterpolator GetInterpolator(this TransitionBase transition) { var spring = transition.Curve as Spring; if (spring != null) { return(new SpringInterpolator(spring)); } var easing = transition.Curve as EasingCurve ?? new EasingCurve(); return(new EasingInterpolator(easing)); }
public static long CalculateDuration(this TransitionBase transition) { var spring = transition.Curve as Spring; if (spring != null) { const int framesPerSecond = FramesPerSecond; var seconds = spring.Steps(framesPerSecond).Count() / (double)framesPerSecond; return((long)(seconds * 1000)); } return((long)transition.Duration.TotalMilliseconds); }
protected virtual void OnEnable() { _transitionBase = (TransitionBase)target; _initForTransitionInProperty = serializedObject.FindProperty("InitForTransitionIn"); _autoRunProperty = serializedObject.FindProperty("AutoRun"); _repeatWhenEnabledProperty = serializedObject.FindProperty("RepeatWhenEnabled"); _transitionInConfigProperty = serializedObject.FindProperty("TransitionInConfig"); _transitionOutConfigProperty = serializedObject.FindProperty("TransitionOutConfig"); #if GAME_FRAMEWORK // setup actions types _gameActionClassDetails = GameFramework.GameStructure.Game.Editor.GameActions.GameActionEditorHelper.FindTypesClassDetails(); #endif }
public void TransitionBaseTimePeriod() { tlog.Debug(tag, $"TransitionBaseTimePeriod START"); var testingTarget = new TransitionBase(); Assert.IsNotNull(testingTarget, "Can't create success object TransitionBase"); Assert.IsInstanceOf <TransitionBase>(testingTarget, "Should be an instance of TransitionBase type."); Assert.IsNotNull(testingTarget.TimePeriod); testingTarget.TimePeriod = new TimePeriod(300); Assert.IsInstanceOf <TimePeriod>(testingTarget.TimePeriod, "Should be an instance of TimePeriod type."); testingTarget.Dispose(); tlog.Debug(tag, $"TransitionBaseTimePeriod END (OK)"); }
public void TransitionBaseAlphaFunction() { tlog.Debug(tag, $"TransitionBaseAlphaFunction START"); var testingTarget = new TransitionBase(); Assert.IsNotNull(testingTarget, "Can't create success object TransitionBase"); Assert.IsInstanceOf <TransitionBase>(testingTarget, "Should be an instance of TransitionBase type."); Assert.IsNotNull(testingTarget.AlphaFunction); testingTarget.AlphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Bounce); Assert.IsInstanceOf <AlphaFunction>(testingTarget.AlphaFunction, "Should be an instance of TimePeriod type."); testingTarget.Dispose(); tlog.Debug(tag, $"TransitionBaseAlphaFunction END (OK)"); }
/// <summary> /// 读取指定的story. /// </summary> /// <param name="storyName">story名称.</param> /// <param name="userStore">如果参数为null, 创建一个新的.</param> internal static void ReadStoryFile(string storyName, IsolatedStorageFile userStore = null) { if (userStore == null) { userStore = IsolatedStorageFile.GetUserStoreForApplication(); } using (IsolatedStorageFileStream fileStream = userStore.OpenFile(storyName + ".xml", System.IO.FileMode.Open)) { XDocument xdoc = XDocument.Load(fileStream); var picturesLibrary = new MediaLibrary().Pictures; // Load all photos. foreach (XElement photoElement in xdoc.Root.Elements()) { try { Photo photo = new Photo() { Name = photoElement.Attribute("Name").Value, }; string photoDurationString = photoElement.Attribute("PhotoDuration").Value; int photoDuration = int.Parse(photoDurationString); photo.PhotoDuration = TimeSpan.FromSeconds(photoDuration); XElement transitionElement = photoElement.Element("Transition"); if (transitionElement != null) { photo.Transition = TransitionBase.Load(photoElement.Element("Transition")); } Picture picture = picturesLibrary.Where(p => p.Name == photo.Name).FirstOrDefault(); if (picture == null) { // 如果找不到原文件,可能已经被删除了 // TODO: 我们需要记录错误吗? 我们是继续下一个图片还是抛出异常? continue; } photo.ThumbnailStream = picture.GetThumbnail(); App.MediaCollection.Add(photo); } catch { // TODO: 我们需要记录错误吗? 我们是继续下一个图片还是抛出异常? continue; } } } }
public IEnumerator DemoCameraInternal(TransitionBase transitionBase) { // make sure these are set in the materials. SetColor(_color); SetShowTexture(_showTexture); SetWipeTexture(); float transitionTime = TransitionHelper.GetTransitionOutTime(new List <TransitionBase> { transitionBase }); transitionBase.InitTransitionOut(); transitionBase.TransitionOut(); yield return(new WaitForSeconds(transitionTime + 0.5f)); transitionBase.TransitionIn(); }
public static long CalculateDuration(this TransitionBase transition) { if (transition is null) { throw new ArgumentNullException(nameof(transition)); } if (transition.Curve is Spring spring) { const int framesPerSecond = FramesPerSecond; var seconds = spring.Steps(framesPerSecond).Count() / (double)framesPerSecond; return((long)(seconds * 1000)); } return((long)transition.Duration.TotalMilliseconds); }
private const int FramesPerSecond = 60 * 4; //Probably need more than the 60 refresh rate, but 4 per frame may be excessive public static ITimeInterpolator GetInterpolator(this TransitionBase transition) { if (transition is null) { throw new ArgumentNullException(nameof(transition)); } var spring = transition.Curve as Spring; if (spring != null) { return(new SpringInterpolator(spring)); } var easing = transition.Curve as EasingCurve ?? new EasingCurve(); return(new EasingInterpolator(easing)); }
void ITransitionHandler.Attach(TransitionBase transition) { if (ReferenceEquals(_transition, transition)) { return; } if (_transition != null) { _transition.Transitioning -= OnTransitioning; } _transition = transition; if (_transition != null) { _transition.Transitioning += OnTransitioning; } }
public void TransitionBaseCreateTransition() { tlog.Debug(tag, $"TransitionBaseCreateTransition START"); var testingTarget = new TransitionBase(); Assert.IsNotNull(testingTarget, "Can't create success object TransitionBase"); Assert.IsInstanceOf <TransitionBase>(testingTarget, "Should be an instance of TransitionBase type."); using (View view = new View()) { var result = testingTarget.CreateTransition(view, true); Assert.IsNotNull(result, "Can't create success object TransitionItemBase"); Assert.IsInstanceOf <TransitionItemBase>(result, "Should be an instance of TransitionItemBase type."); } testingTarget.Dispose(); tlog.Debug(tag, $"TransitionBaseCreateTransition END (OK)"); }
public void TransitionGroupItemConstructor() { tlog.Debug(tag, $"TransitionGroupItemConstructor START"); using (View view = new View() { Size = new Size(100, 200) }) { using (TimePeriod timePeriod = new TimePeriod(300)) { using (AlphaFunction alphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Default)) { List <TransitionBase> list = new List <TransitionBase>(); using (TransitionBase tb = new TransitionBase()) { tb.TimePeriod = new TimePeriod(300); tb.AlphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.Bounce); list.Add(tb); var testingTarget = new TransitionGroupItem(view, list, true, true, true, true, timePeriod, alphaFunction); Assert.IsNotNull(testingTarget, "Can't create success object TransitionGroupItem."); Assert.IsInstanceOf <TransitionGroupItem>(testingTarget, "Should return TransitionGroupItem instance."); tlog.Debug(tag, "TransitionCount : " + testingTarget.TransitionCount); var result = testingTarget.GetTransitionAt(0); tlog.Debug(tag, "GetTransitionAt : " + result); testingTarget.Dispose(); } list = null; } } } tlog.Debug(tag, $"TransitionGroupItemConstructor END (OK)"); }
public void PageDisappearingTransition() { tlog.Debug(tag, $"PageDisappearingTransition START"); var testingTarget = new MyPage(); Assert.IsNotNull(testingTarget, "null handle"); Assert.IsInstanceOf <Page>(testingTarget, "Should return Page instance."); TransitionBase tb = new TransitionBase() { AlphaFunction = new AlphaFunction(Tizen.NUI.AlphaFunction.BuiltinFunctions.EaseOut), TimePeriod = new TimePeriod(300) }; testingTarget.DisappearingTransition = tb; tlog.Debug(tag, "DisappearingTransition : " + testingTarget.DisappearingTransition); testingTarget.Dispose(); tlog.Debug(tag, $"PageDisappearingTransition END (OK)"); }
/// <summary> /// Perform the action /// </summary> /// <returns></returns> protected override void Execute(bool isStart) { // use cached version unless target could be dynamic (TargetType.CollidingGameObject) var targetFinal = _cachedFinalTarget; if (targetFinal == null) { targetFinal = GameActionHelper.ResolveTargetComponent <TransitionBase>(TargetType, this, Target); if (TargetType != GameActionHelper.TargetType.CollidingGameObject) { _cachedFinalTarget = targetFinal; } } if (targetFinal == null) { Debug.LogWarningFormat("No Target is specified for the action {0} on {1}", GetType().Name, Owner.gameObject.name); } if (targetFinal != null) { targetFinal.TransitionOut(); } }
public void ApplicationTransitionManagerApplicationFrameType() { tlog.Debug(tag, $"ApplicationTransitionManagerApplicationFrameType START"); var testingTarget = ApplicationTransitionManager.Instance; Assert.IsNotNull(testingTarget, "Return a null object of FontClient"); Assert.IsInstanceOf <ApplicationTransitionManager>(testingTarget, "Should be an instance of ApplicationTransitionManager type."); testingTarget.ApplicationFrameType = FrameType.FrameBroker; tlog.Debug(tag, "FrameType : " + testingTarget.ApplicationFrameType); using (TransitionBase appearing = new TransitionBase()) { appearing.TimePeriod = new TimePeriod(300); appearing.AlphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.EaseIn); tlog.Debug(tag, "AppearingTransition : " + testingTarget.AppearingTransition); testingTarget.AppearingTransition = appearing; tlog.Debug(tag, "AppearingTransition : " + testingTarget.AppearingTransition); } using (TransitionBase disappearing = new TransitionBase()) { disappearing.TimePeriod = new TimePeriod(300); disappearing.AlphaFunction = new AlphaFunction(AlphaFunction.BuiltinFunctions.EaseInOut); tlog.Debug(tag, "DisappearingTransition : " + testingTarget.DisappearingTransition); testingTarget.DisappearingTransition = disappearing; tlog.Debug(tag, "DisappearingTransition : " + testingTarget.DisappearingTransition); } testingTarget.Dispose(); tlog.Debug(tag, $"ApplicationTransitionManagerApplicationFrameType END (OK)"); }
public void OnShowBegin(TransitionBase transition, TransitionInputParameters transitionParameters, System.Action callback) { if (transition != null) { WindowSystem.AudioPlay(this.window, this.clipType, this.id); transition.SetResetState(transitionParameters, this.window, null); transition.Play(this.window, transitionParameters, null, forward: true, callback: () => { if (callback != null) callback(); }); } else { WindowSystem.AudioPlay(this.window, this.clipType, this.id); if (callback != null) callback(); } }
public override void SetDefaultParameters(TransitionBase.ParametersBase parameters) { this.parameters = new WindowAudioTransitionFade.Parameters(parameters); }
public void OnHideBegin(TransitionBase transition, TransitionInputParameters transitionParameters, System.Action callback) { var newWindow = WindowSystem.GetCurrentWindow(); if (newWindow == null) return; if (transition != null) { if (newWindow.audio.id > 0 || newWindow.audio.playType == PlayType.Replace) { transition.Play(this.window, transitionParameters, null, forward: false, callback: () => { WindowSystem.AudioStop(this.window, this.clipType, this.id); if (callback != null) callback(); }); } } else { if (newWindow.audio.id > 0 || newWindow.audio.playType == PlayType.Replace) WindowSystem.AudioStop(this.window, this.clipType, this.id); if (callback != null) callback(); } }
public ChangeBounds(TransitionBase transition) { _transition = transition ?? throw new ArgumentNullException(nameof(transition)); }
public Parameters(TransitionBase.ParametersBase baseDefaults) : base(baseDefaults) {}
public void OnHideBegin(TransitionBase transition, TransitionInputParameters transitionParameters, System.Action callback) { if (transition != null) { transition.Play(this.window, transitionParameters, null, forward: false, callback: () => { WindowSystem.AudioStop(this.window, this.clipType, this.id); if (callback != null) callback(); }); } else { WindowSystem.AudioStop(this.window, this.clipType, this.id); if (callback != null) callback(); } }
public ChangeRenderTransform(TransitionBase transition) : base(transition) { }
public void DoHideBegin(TransitionBase transition, TransitionInputParameters transitionParameters, AppearanceParameters parameters) { parameters.Call(); }
/* private void TryToPlay(System.Action callback) { var equals = false; var prevWindow = WindowSystem.GetPreviousWindow(); if (prevWindow != null) { equals = (prevWindow.audio.id == this.id || prevWindow.audio.id == 0); if (this.playType == PlayType.RestartIfEquals && equals == true) { WindowSystem.AudioStop(this.window, this.clipType, prevWindow.audio.id); } else if (equals == false) { WindowSystem.AudioStop(this.window, this.clipType, prevWindow.audio.id); } } if (this.playType == PlayType.KeepCurrent && equals == true) { // Keep current } else { if (this.id > 0) { WindowSystem.AudioPlay(this.window, this.clipType, this.id); } } if (callback != null) callback(); }*/ public void Apply(TransitionBase transition, TransitionInputParameters parameters, bool forward, float value, bool reset) { if (reset == true) transition.SetResetState(parameters, this.window, null); transition.Set(this.window, parameters, null, forward: forward, value: value); }
public void SubworkflowPause() { // Arrange var workplan = WorkplanDummy.CreatePausableSub(); var exits = workplan.Connectors.Where(c => c.Classification.HasFlag(NodeClassification.Exit)).ToArray(); var outputs = new[] { new OutputDescription { MappingValue = (int)exits[0].Id }, }; var trans = new SubworkflowTransition(Workflow.CreateEngine(workplan, new NullContext()), TransitionBase.CreateIndexResolver(outputs)) { Id = 1, Inputs = new[] { _inputs[0] }, Outputs = _outputs }; var triggered = new List <ITransition>(); // Act trans.Initialize(); trans.Triggered += (sender, args) => triggered.Add((ITransition)sender); _inputs[0].Add(_token); trans.Pause(); var state = trans.InternalState; trans.Resume(); // Assert Assert.AreEqual(0, _inputs[0].Tokens.Count()); Assert.AreEqual(_token, _outputs[0].Tokens.First()); Assert.AreEqual(1, triggered.Count); Assert.IsInstanceOf <WorkflowSnapshot>(state); var snapshot = (WorkflowSnapshot)state; Assert.AreEqual(1, snapshot.Holders.Length); var stepId = workplan.Steps.First(s => s is PausableStep).Id; Assert.AreEqual(stepId, snapshot.Holders[0].HolderId); }
public CompositeTransition(TransitionBase transitionOne, params TransitionBase[] transitions) { this.transitionOne = transitionOne; this.transitions = transitions; }
public override void SetDefaultParameters(TransitionBase.ParametersBase parameters) { this.parameters = new WindowAnimationTransitionSlide.Parameters(parameters); }
public ChangeAlpha(TransitionBase transition) : base(transition) { }
protected DelayedTransition(TransitionBase transition) { _transition = transition ?? throw new ArgumentNullException(nameof(transition)); }
public void DoShowBegin(TransitionBase transition, TransitionInputParameters transitionParameters, AppearanceParameters parameters) { var needToPlay = (this.id > 0 || this.playType == PlayType.Replace); if (this.playType == PlayType.Replace) WindowSystem.AudioStop(null, this.clipType, this.id); if (transition != null) { if (needToPlay == true) { WindowSystem.AudioPlay(this.window, this.clipType, this.id, this.playType == PlayType.Replace); transition.SetResetState(transitionParameters, this.window, null); transition.Play(this.window, transitionParameters, null, forward: true, callback: () => { parameters.Call(); }); } } else { if (needToPlay == true) WindowSystem.AudioPlay(this.window, this.clipType, this.id, this.playType == PlayType.Replace); parameters.Call(); } }