public PixellatedMenuController(ToolStripMenuItem menuItem, PixellatedOrSmoothed state, ExclusiveController<PixellatedOrSmoothed> controller) { this.menuItem = menuItem; this.state = state; this.controller = controller; menuItem.Click += MenuItem_Click; controller.Changed += Controller_Changed; }
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) }; }