public MenuColorSwapper(Config.Menu menuConfig, MenuLightsManager menuLightsManager, MainFlowCoordinator mainFlowCoordinator, CampaignFlowCoordinator campaignFlowCoordinator, SoloFreePlayFlowCoordinator soloFreePlayFlowCoordinator, PartyFreePlayFlowCoordinator partyFreePlayFlowCoordinator, CenterStageScreenController centerStageScreenController) { _menuConfig = menuConfig; _menuLightsManager = menuLightsManager; _mainFlowCoordinator = mainFlowCoordinator; _campaignFlowCoordinator = campaignFlowCoordinator; _centerStageScreenController = centerStageScreenController; _soloFreePlayFlowCoordinator = soloFreePlayFlowCoordinator; _partyFreePlayFlowCoordinator = partyFreePlayFlowCoordinator; }
/// <summary> /// Ajoute les routes du menu contextuel de maniere dynamique /// (à partir du fichier de conf recuperer via la méthode SetConfiguration()) /// </summary> private void SetMenu() { //remise a jour du menu dans le cas d'une reactualisation contextMenuStrip.Items.Clear(); Log.Debug("Config dynamique du menu"); //recupere le menu de l'application Config.Menu menu = Config.items.menu; int indexItem = 0, indexSubMenu = 0; //Création des sous menus Sinon on fait des sous-menu // Pour chaque item du menuItem on lui assigne son url foreach (Config.SubMenu subMenu in menu.subMenu) { ToolStripMenuItem itemMenu = new ToolStripMenuItem(); itemMenu.Text = subMenu.libelle; itemMenu.Tag = indexSubMenu++; itemMenu.DropDownItemClicked += new System.Windows.Forms.ToolStripItemClickedEventHandler(this.toolStripDropDownItem_DropDownItemClicked); foreach (Config.Item item in subMenu.items) { Console.WriteLine("nom de l'item " + item.libelle); ToolStripItem it = new ToolStripMenuItem(); it.Text = item.libelle; it.Tag = indexItem++; // Blocage de l'item dans le cas ou il n'y a pas d'element if (item.parametres == "" && item.programme == "" && item.url == "") { it.Enabled = false; } // Ajout des items dans le menu if (menu.subMenu.Count == 1) { contextMenuStrip.Items.Add(it); } // Ajout des items dans le sous-menu else { contextMenuStrip.Items.Add(itemMenu); itemMenu.DropDownItems.Add(it); } } } }
public void UpdateColors(Config.Menu menuConfig) { var defaultColor = CachedColor(Color); defaultMenuLights = CreateMenuLights(defaultColor); if (menuConfig.ColorPairs.TryGetValue("PlayersPlaceFeet", out Config.ColorPair playersFeetColorPair)) { feetSprite.color = playersFeetColorPair.Enabled ? playersFeetColorPair.Color : defaultColor.color; } if (menuConfig.ColorPairs.TryGetValue("Freeplay", out Config.ColorPair freeplay)) { if (freeplay.Enabled) { var lights = CreateMenuLights(freeplay.Color); _soloFreePlayFlowCoordinator.SetField("_defaultLightsPreset", lights); _partyFreePlayFlowCoordinator.SetField("_defaultLightsPreset", lights); } else { _soloFreePlayFlowCoordinator.SetField("_defaultLightsPreset", defaultMenuLights); _partyFreePlayFlowCoordinator.SetField("_defaultLightsPreset", defaultMenuLights); } } if (menuConfig.ColorPairs.TryGetValue("Results", out Config.ColorPair results)) { if (results.Enabled) { var lights = CreateMenuLights(results.Color); _soloFreePlayFlowCoordinator.SetField("_resultsClearedLightsPreset", lights); _partyFreePlayFlowCoordinator.SetField("_resultsClearedLightsPreset", lights); } else { _soloFreePlayFlowCoordinator.SetField("_resultsClearedLightsPreset", defaultMenuLights); _partyFreePlayFlowCoordinator.SetField("_resultsClearedLightsPreset", defaultMenuLights); } } if (menuConfig.ColorPairs.TryGetValue("Campaigns", out Config.ColorPair campaigns)) { if (campaigns.Enabled) { var lights = CreateMenuLights(campaigns.Color); _campaignFlowCoordinator.SetField("_defaultLightsPreset", lights); } else { _campaignFlowCoordinator.SetField("_defaultLightsPreset", defaultMenuLights); } } _centerStageScreenController.SetField("_defaultMenuLightsPreset", defaultMenuLights); if (menuConfig.ColorPairs.TryGetValue("Multiplayer", out Config.ColorPair multiplayer)) { if (multiplayer.Enabled) { var lights = CreateMenuLights(multiplayer.Color); _centerStageScreenController.SetField("_lobbyLightsPreset", lights); } } if (menuConfig.ColorPairs.TryGetValue("MultiplayerCountdown", out Config.ColorPair multiplayerCountdown)) { if (multiplayerCountdown.Enabled) { var lights = CreateMenuLights(multiplayerCountdown.Color); _centerStageScreenController.SetField("_countdownMenuLightsPreset", lights); } } _mainFlowCoordinator.SetField("_defaultLightsPreset", defaultMenuLights); }
public SignColorSwapper(Config.Menu config, MenuEnvironmentManager menuEnvironmentManager) { _config = config; _menuEnvironmentManager = menuEnvironmentManager; _flickeringNeonSign = menuEnvironmentManager.transform.GetComponentInChildren <FlickeringNeonSign>(); }