Beispiel #1
0
        private RunNode ParseRunNode(RunCommandType cmdType, RunAction runAction)
        {
            StyleToken  runCommandToken = tokenStream.Current;
            CommandNode command;

            if (AdvanceIfTokenType(StyleTokenType.Animation))
            {
                command = StyleASTNodeFactory.AnimationCommandNode(ParseIdentifierInParentheses(), cmdType, runAction);
            }
            else if (AdvanceIfTokenType(StyleTokenType.Sound))
            {
                command = StyleASTNodeFactory.SoundCommandNode(ParseIdentifierInParentheses(), cmdType, runAction);
            }
            else
            {
                throw new ParseException(runCommandToken,
                                         $"Only animation and sound run commands are supported. Found {runCommandToken}");
            }

            command.WithLocation(tokenStream.Current);
            AssertTokenTypeAndAdvance(StyleTokenType.EndStatement);

            RunNode runNode = StyleASTNodeFactory.RunNode(command);

            runNode.WithLocation(runCommandToken);
            return(runNode);
        }
Beispiel #2
0
        public void Run(UIElement element, RunCommandType runCommandType)
        {
            if (runCommandType == RunCommandType.Exit && cmdType == RunCommandType.EnterExit)
            {
                animationData.options.direction = AnimationDirection.Reverse;
            }

            switch (RunAction)
            {
            case RunAction.Run:
                element.Animator.PlayAnimation(animationData);
                break;

            case RunAction.Pause:
                element.Animator.PauseAnimation(animationData);
                break;

            case RunAction.Resume:
                element.Animator.ResumeAnimation(animationData);
                break;

            case RunAction.Stop:
                element.Animator.StopAnimation(animationData);
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
Beispiel #3
0
        internal static SoundCommandNode SoundCommandNode(StyleASTNode name, RunCommandType cmdType, RunAction runAction)
        {
            SoundCommandNode soundCommandNode = s_SoundCommandNodePool.Get();

            soundCommandNode.name      = name;
            soundCommandNode.cmdType   = cmdType;
            soundCommandNode.runAction = runAction;
            return(soundCommandNode);
        }
Beispiel #4
0
        internal static void RunCommand(RunCommandType runCommandType)
        {
            switch (runCommandType)
            {
            case RunCommandType.ShowSettings:
            {
                if (FlyoutHandler.HasInitialized)
                {
                    FlyoutHandler.ShowSettingsWindow();
                }
                else
                {
                    FlyoutHandler.Initialized += (_, __) => FlyoutHandler.ShowSettingsWindow();
                }
                break;
            }

            case RunCommandType.RestoreDefault:
            {
                if (!DUIHandler.IsDUIAvailable())
                {
                    DUIHandler.GetAllInfos();
                }
                FlyoutHandler.SafelyExitApplication();
                break;
            }

            case RunCommandType.SafeExit:
            {
                FlyoutHandler.SafelyExitApplication();
                break;
            }

            case RunCommandType.AppUpdated:
            {
                if (AppLifecycleManager.IsBuildBetaChannel)
                {
                    MessageBox.Show("App update successfully!", AppName);
                }

                break;
            }

            default:
                break;
            }
        }
Beispiel #5
0
        internal static void RunCommand(RunCommandType runCommandType)
        {
            switch (runCommandType)
            {
            case RunCommandType.ShowSettings:
            {
                if (FlyoutHandler.HasInitialized)
                {
                    FlyoutHandler.ShowSettingsWindow();
                }
                else
                {
                    FlyoutHandler.Initialized += (_, __) => FlyoutHandler.ShowSettingsWindow();
                }
                break;
            }

            case RunCommandType.RestoreDefault:
            {
                NativeFlyoutHandler.Instance.VerifyNativeFlyoutCreated();
                FlyoutHandler.SafelyExitApplication();
                break;
            }

            case RunCommandType.SafeExit:
            {
                FlyoutHandler.SafelyExitApplication();
                break;
            }

            case RunCommandType.AppUpdated:
            {
                //if (AppLifecycleManager.IsBuildBetaChannel)
                //{
                //    MessageBox.Show("App update successfully!", AppName);
                //}

                break;
            }

            default:
                break;
            }
        }
Beispiel #6
0
        internal static void RunCommand(RunCommandType runCommandType)
        {
            switch (runCommandType)
            {
            case RunCommandType.ShowSettings:
            {
                if (FlyoutHandler.HasInitialized)
                {
                    FlyoutHandler.ShowSettingsWindow();
                }
                else
                {
                    FlyoutHandler.Initialized += (_, __) => FlyoutHandler.ShowSettingsWindow();
                }
                break;
            }

            case RunCommandType.RestoreDefault:
            {
                if (!DUIHandler.IsDUIAvailable())
                {
                    DUIHandler.GetAllInfos();
                }
                FlyoutHandler.SafelyExitApplication();
                break;
            }

            case RunCommandType.SafeExit:
            {
                FlyoutHandler.SafelyExitApplication();
                break;
            }

            default:
                break;
            }
        }
Beispiel #7
0
        public void Run(UIElement element, RunCommandType direction)
        {
            switch (RunAction)
            {
            case RunAction.Run:
                element.application.SoundSystem.PlaySound(element, soundData);
                break;

            case RunAction.Pause:
                element.application.SoundSystem.PauseSound(element, soundData);
                break;

            case RunAction.Resume:
                element.application.SoundSystem.SoundResumed(element, soundData);
                break;

            case RunAction.Stop:
                element.application.SoundSystem.StopSound(element, soundData);
                break;

            default:
                throw new ArgumentOutOfRangeException();
            }
        }
Beispiel #8
0
 public AnimationRunCommand(RunCommandType cmdType, RunAction runAction = RunAction.Run)
 {
     this.cmdType = cmdType;
     RunAction    = runAction;
 }
Beispiel #9
0
        internal static AnimationCommandNode AnimationCommandNode(StyleASTNode animationName, RunCommandType cmdType, RunAction runAction)
        {
            AnimationCommandNode animationCommandNode = s_AnimationCommandNodePool.Get();

            animationCommandNode.animationName = animationName;
            animationCommandNode.cmdType       = cmdType;
            animationCommandNode.runAction     = runAction;
            return(animationCommandNode);
        }
Beispiel #10
0
 public SoundRunCommand(RunCommandType cmdType, RunAction runAction = RunAction.Run)
 {
     RunCommandType = cmdType;
     RunAction      = runAction;
 }