Example #1
0
        protected override bool OnKeyDown(InputState state, KeyDownEventArgs args)
        {
            if (state.Keyboard.ControlPressed)
            {
                switch (args.Key)
                {
                case Key.F11:
                    switch (performanceContainer.State)
                    {
                    case FrameStatisticsMode.None:
                        performanceContainer.State = FrameStatisticsMode.Minimal;
                        break;

                    case FrameStatisticsMode.Minimal:
                        performanceContainer.State = FrameStatisticsMode.Full;
                        break;

                    case FrameStatisticsMode.Full:
                        performanceContainer.State = FrameStatisticsMode.None;
                        break;
                    }
                    return(true);

                case Key.F1:
                    DrawVisualiser.ToggleVisibility();
                    return(true);

                case Key.F10:
                    LogOverlay.ToggleVisibility();
                    return(true);
                }
            }

            return(base.OnKeyDown(state, args));
        }
Example #2
0
        public bool OnPressed(FrameworkAction action)
        {
            switch (action)
            {
            case FrameworkAction.CycleFrameStatistics:
                switch (FrameStatistics.Value)
                {
                case FrameStatisticsMode.None:
                    FrameStatistics.Value = FrameStatisticsMode.Minimal;
                    break;

                case FrameStatisticsMode.Minimal:
                    FrameStatistics.Value = FrameStatisticsMode.Full;
                    break;

                case FrameStatisticsMode.Full:
                    FrameStatistics.Value = FrameStatisticsMode.None;
                    break;
                }

                return(true);

            case FrameworkAction.ToggleDrawVisualiser:

                if (drawVisualiser == null)
                {
                    LoadComponentAsync(drawVisualiser = new DrawVisualiser
                    {
                        Depth = float.MinValue / 2,
                    }, AddInternal);
                }

                drawVisualiser.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleLogOverlay:
                if (logOverlay == null)
                {
                    LoadComponentAsync(logOverlay = new LogOverlay
                    {
                        Depth = float.MinValue / 2,
                    }, AddInternal);
                }

                logOverlay.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleFullscreen:
                Window?.CycleMode();
                return(true);
            }

            return(false);
        }
Example #3
0
        private bool globalKeyDown(InputState state, KeyDownEventArgs args)
        {
            if (state.Keyboard.ControlPressed)
            {
                switch (args.Key)
                {
                case Key.F11:
                    switch (FrameStatisticsMode)
                    {
                    case FrameStatisticsMode.None:
                        FrameStatisticsMode = FrameStatisticsMode.Minimal;
                        break;

                    case FrameStatisticsMode.Minimal:
                        FrameStatisticsMode = FrameStatisticsMode.Full;
                        break;

                    case FrameStatisticsMode.Full:
                        FrameStatisticsMode = FrameStatisticsMode.None;
                        break;
                    }
                    return(true);

                case Key.F1:
                    DrawVisualiser.ToggleVisibility();
                    return(true);

                case Key.F10:
                    logOverlay.ToggleVisibility();
                    return(true);
                }
            }

            if (state.Keyboard.AltPressed && args.Key == Key.Enter)
            {
                Window?.CycleMode();
                return(true);
            }

            return(false);
        }
Example #4
0
        public bool OnPressed(FrameworkAction action)
        {
            switch (action)
            {
            case FrameworkAction.CycleFrameStatistics:
                switch (FrameStatistics.Value)
                {
                case FrameStatisticsMode.None:
                    FrameStatistics.Value = FrameStatisticsMode.Minimal;
                    break;

                case FrameStatisticsMode.Minimal:
                    FrameStatistics.Value = FrameStatisticsMode.Full;
                    break;

                case FrameStatisticsMode.Full:
                    FrameStatistics.Value = FrameStatisticsMode.None;
                    break;
                }

                return(true);

            case FrameworkAction.ToggleDrawVisualiser:
                drawVisualiser.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleLogOverlay:
                logOverlay.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleFullscreen:
                Window?.CycleMode();
                return(true);
            }

            return(false);
        }
Example #5
0
        public bool OnPressed(FrameworkAction action)
        {
            switch (action)
            {
            case FrameworkAction.CycleFrameStatistics:
                switch (FrameStatistics.Value)
                {
                case FrameStatisticsMode.None:
                    FrameStatistics.Value = FrameStatisticsMode.Minimal;
                    break;

                case FrameStatisticsMode.Minimal:
                    FrameStatistics.Value = FrameStatisticsMode.Full;
                    break;

                case FrameStatisticsMode.Full:
                    FrameStatistics.Value = FrameStatisticsMode.None;
                    break;
                }

                return(true);

            case FrameworkAction.ToggleGlobalStatistics:

                if (globalStatistics == null)
                {
                    LoadComponentAsync(globalStatistics = new GlobalStatisticsDisplay
                    {
                        Depth    = float.MinValue / 2,
                        Position = new Vector2(100 + ToolWindow.WIDTH, 100)
                    }, AddInternal);
                }

                globalStatistics.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleDrawVisualiser:

                if (drawVisualiser == null)
                {
                    LoadComponentAsync(drawVisualiser = new DrawVisualiser
                    {
                        ToolPosition = new Vector2(100),
                        Depth        = float.MinValue / 2,
                    }, AddInternal);
                }

                drawVisualiser.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleLogOverlay:
                logOverlayVisibility.Value = !logOverlayVisibility.Value;
                return(true);

            case FrameworkAction.ToggleFullscreen:
                Window?.CycleMode();
                return(true);
            }

            return(false);
        }
Example #6
0
        public bool OnPressed(KeyBindingPressEvent <FrameworkAction> e)
        {
            switch (e.Action)
            {
            case FrameworkAction.CycleFrameStatistics:

                switch (FrameStatistics.Value)
                {
                case FrameStatisticsMode.None:
                    FrameStatistics.Value = FrameStatisticsMode.Minimal;
                    break;

                case FrameStatisticsMode.Minimal:
                    FrameStatistics.Value = FrameStatisticsMode.Full;
                    break;

                case FrameStatisticsMode.Full:
                    FrameStatistics.Value = FrameStatisticsMode.None;
                    break;
                }

                return(true);

            case FrameworkAction.ToggleDrawVisualiser:

                if (drawVisualiser == null)
                {
                    LoadComponentAsync(drawVisualiser = new DrawVisualiser
                    {
                        ToolPosition = getCascadeLocation(0),
                        Depth        = float.MinValue / 2,
                    }, AddInternal);
                }

                drawVisualiser.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleGlobalStatistics:

                if (globalStatistics == null)
                {
                    LoadComponentAsync(globalStatistics = new GlobalStatisticsDisplay
                    {
                        Depth    = float.MinValue / 2,
                        Position = getCascadeLocation(1),
                    }, AddInternal);
                }

                globalStatistics.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleAtlasVisualiser:

                if (textureVisualiser == null)
                {
                    LoadComponentAsync(textureVisualiser = new TextureVisualiser
                    {
                        Position = getCascadeLocation(2),
                        Depth    = float.MinValue / 2,
                    }, AddInternal);
                }

                textureVisualiser.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleAudioMixerVisualiser:
                if (audioMixerVisualiser == null)
                {
                    LoadComponentAsync(audioMixerVisualiser = new AudioMixerVisualiser
                    {
                        Position = getCascadeLocation(3),
                        Depth    = float.MinValue / 2,
                    }, AddInternal);
                }

                audioMixerVisualiser.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleLogOverlay:
                logOverlayVisibility.Value = !logOverlayVisibility.Value;
                return(true);

            case FrameworkAction.ToggleFullscreen:
                Window?.CycleMode();
                return(true);

            case FrameworkAction.CycleFrameSync:
                var nextFrameSync = frameSyncMode.Value + 1;

                if (nextFrameSync > FrameSync.Unlimited)
                {
                    nextFrameSync = FrameSync.VSync;
                }

                frameSyncMode.Value = nextFrameSync;
                break;

            case FrameworkAction.CycleExecutionMode:
                var nextExecutionMode = executionMode.Value + 1;

                if (nextExecutionMode > ExecutionMode.MultiThreaded)
                {
                    nextExecutionMode = ExecutionMode.SingleThread;
                }

                executionMode.Value = nextExecutionMode;
                break;
            }

            return(false);

            Vector2 getCascadeLocation(int index)
            => new Vector2(100 + index * (TitleBar.HEIGHT + 10));
        }
Example #7
0
        public bool OnPressed(FrameworkAction action)
        {
            switch (action)
            {
            case FrameworkAction.CycleFrameStatistics:
                switch (FrameStatistics.Value)
                {
                case FrameStatisticsMode.None:
                    FrameStatistics.Value = FrameStatisticsMode.Minimal;
                    break;

                case FrameStatisticsMode.Minimal:
                    FrameStatistics.Value = FrameStatisticsMode.Full;
                    break;

                case FrameStatisticsMode.Full:
                    FrameStatistics.Value = FrameStatisticsMode.None;
                    break;
                }

                return(true);

            case FrameworkAction.ToggleGlobalStatistics:

                if (globalStatistics == null)
                {
                    LoadComponentAsync(globalStatistics = new GlobalStatisticsDisplay
                    {
                        Depth    = float.MinValue / 2,
                        Position = new Vector2(100 + ToolWindow.WIDTH, 100)
                    }, AddInternal);
                }

                globalStatistics.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleDrawVisualiser:

                if (drawVisualiser == null)
                {
                    LoadComponentAsync(drawVisualiser = new DrawVisualiser
                    {
                        ToolPosition = new Vector2(100),
                        Depth        = float.MinValue / 2,
                    }, AddInternal);
                }

                drawVisualiser.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleAtlasVisualiser:

                if (textureVisualiser == null)
                {
                    LoadComponentAsync(textureVisualiser = new TextureVisualiser
                    {
                        Position = new Vector2(100 + 2 * ToolWindow.WIDTH, 100),
                        Depth    = float.MinValue / 2,
                    }, AddInternal);
                }

                textureVisualiser.ToggleVisibility();
                return(true);

            case FrameworkAction.ToggleLogOverlay:
                logOverlayVisibility.Value = !logOverlayVisibility.Value;
                return(true);

            case FrameworkAction.ToggleFullscreen:
                Window?.CycleMode();
                return(true);

            case FrameworkAction.CycleFrameSync:
                var nextFrameSync = frameSyncMode.Value + 1;

                if (nextFrameSync > FrameSync.Unlimited)
                {
                    nextFrameSync = FrameSync.VSync;
                }

                frameSyncMode.Value = nextFrameSync;
                break;

            case FrameworkAction.CycleExecutionMode:
                var nextExecutionMode = executionMode.Value + 1;

                if (nextExecutionMode > ExecutionMode.MultiThreaded)
                {
                    nextExecutionMode = ExecutionMode.SingleThread;
                }

                executionMode.Value = nextExecutionMode;
                break;
            }

            return(false);
        }