Пример #1
0
        public FullScreenMenuController(ScreenScaleController controller, ToolStripMenuItem item)
        {
            this.controller = controller;
            this.item       = item;

            item.Click             += Item_Click;
            controller.SizeChanged += Controller_SizeChanged;
            controller.NtscSet     += Controller_NtscSet;
        }
        public ScreenSizeMenuController(ScreenScaleController controller, ToolStripMenuItem item, ScreenScale scale)
        {
            this.controller = controller;
            this.scale = scale;
            this.item = item;

            item.Click += Item_Click;
            controller.SizeChanged += Controller_SizeChanged;
            controller.NtscSet += Controller_NtscSet;
        }
Пример #3
0
        private void InitializeControllers()
        {
            var b  = new LayerVisibilityMenuController(backgroundToolStripMenuItem, Layers.Background);
            var s1 = new LayerVisibilityMenuController(sprites1ToolStripMenuItem, Layers.Sprite1);
            var s2 = new LayerVisibilityMenuController(sprites2ToolStripMenuItem, Layers.Sprite2);
            var s3 = new LayerVisibilityMenuController(sprites3ToolStripMenuItem, Layers.Sprite3);
            var s4 = new LayerVisibilityMenuController(sprites4ToolStripMenuItem, Layers.Sprite4);
            var f  = new LayerVisibilityMenuController(foregroundToolStripMenuItem, Layers.Foreground);

            var scaleController   = new ScreenScaleController();
            var screen1xControl   = new ScreenSizeMenuController(scaleController, screen1XMenu, ScreenScale.X1);
            var screen2xControl   = new ScreenSizeMenuController(scaleController, screen2XMenu, ScreenScale.X2);
            var screen3xControl   = new ScreenSizeMenuController(scaleController, screen3XMenu, ScreenScale.X3);
            var screen4xControl   = new ScreenSizeMenuController(scaleController, screen4XMenu, ScreenScale.X4);
            var fullScreenControl = new FullScreenMenuController(scaleController, fullScreenToolStripMenuItem);

            var compositeControl = new NtscMenuController(scaleController, ntscComposite, NTSC_Options.Composite);
            var svideoControl    = new NtscMenuController(scaleController, ntscSVideo, NTSC_Options.S_Video);
            var rgbControl       = new NtscMenuController(scaleController, ntscRGB, NTSC_Options.RGB);

            scaleController.SizeChanged += ScaleChanged;
            scaleController.NtscSet     += ScaleController_NtscSet;

            var pixellatedCtrl = new ExclusiveController <PixellatedOrSmoothed>();

            this.controllers = new List <IMenuController>()
            {
                b, s1, s2, s3, s4, f,
                new ActivateAllMenuController(activateAllToolStripMenuItem, b, s1, s2, s3, s4, f),
                new AudioMenuController(sq1MenuItem, 1),
                new AudioMenuController(sq2MenuItem, 2),
                new AudioMenuController(triMenuItem, 3),
                new AudioMenuController(noiseMenuItem, 4),
                screen1xControl,
                screen2xControl,
                screen3xControl,
                screen4xControl,
                compositeControl,
                svideoControl,
                rgbControl,
                fullScreenControl,
                new PixellatedMenuController(pixellatedToolStripMenuItem, PixellatedOrSmoothed.Pixellated, pixellatedCtrl),
                new PixellatedMenuController(smoothedToolStripMenuItem, PixellatedOrSmoothed.Smoothed, pixellatedCtrl)
            };
        }
Пример #4
0
        public NtscMenuController(ScreenScaleController controller, ToolStripMenuItem item, NTSC_Options ntscOption) : base(controller, item, ScreenScale.NTSC)
        {
            this.ntscOption = ntscOption;
            switch (ntscOption)
            {
            case NTSC_Options.Composite:
                this.ntscSetup = snes_ntsc_setup_t.snes_ntsc_composite;
                break;

            case NTSC_Options.RGB:
                this.ntscSetup = snes_ntsc_setup_t.snes_ntsc_rgb;
                break;

            case NTSC_Options.S_Video:
                this.ntscSetup = snes_ntsc_setup_t.snes_ntsc_svideo;
                break;
            }
        }
        public NtscMenuController(ScreenScaleController controller, ToolStripMenuItem item, NTSC_Options ntscOption)
            : base(controller, item, ScreenScale.NTSC)
        {
            this.ntscOption = ntscOption;
            switch (ntscOption)
            {
                case NTSC_Options.Composite:
                    this.ntscSetup = snes_ntsc_setup_t.snes_ntsc_composite;
                    break;

                case NTSC_Options.RGB:
                    this.ntscSetup = snes_ntsc_setup_t.snes_ntsc_rgb;
                    break;

                case NTSC_Options.S_Video:
                    this.ntscSetup = snes_ntsc_setup_t.snes_ntsc_svideo;
                    break;
            }
        }