/// <summary> /// Creates a popup on the cell of all buildings where a tool is applied. /// </summary> /// <param name="enable">true if the "enable" tool was used, false for "disable".</param> /// <param name="enabled">The enable tool.</param> /// <param name="disabled">The disable tool.</param> /// <param name="cell">The cell where the change occurred.</param> private static void ShowPopup(bool enable, BulkToolMode enabled, BulkToolMode disabled, int cell) { PUtil.CreatePopup(enable ? PopFXManager.Instance.sprite_Plus : PopFXManager. Instance.sprite_Negative, enable ? enabled.PopupText : disabled.PopupText, cell); }
public override void UpdateHoverElements(List <KSelectable> selected) { var hoverInstance = HoverTextScreen.Instance; // Find the active mode var drawer = hoverInstance.BeginDrawing(); var mode = BulkToolMode.FromKey(ToolMenu.Instance.toolParameterMenu. GetLastEnabledFilter()); // Draw the tool title drawer.BeginShadowBar(false); drawer.DrawText(mode?.Title ?? BulkChangeStrings.TOOL_TITLE, ToolTitleTextStyle); // Draw the instructions ActionName = mode?.Name ?? BulkChangeStrings.TOOL_TITLE; DrawInstructions(hoverInstance, drawer); drawer.EndShadowBar(); drawer.EndDrawing(); }
protected override void OnActivateTool() { var menu = ToolMenu.Instance.toolParameterMenu; var modes = ListPool <PToolMode, BulkChangeTool> .Allocate(); base.OnActivateTool(); // Create mode list foreach (var mode in BulkToolMode.AllTools()) { modes.Add(mode.ToToolMode(modes.Count == 0 ? ToolParameterMenu.ToggleState.On : ToolParameterMenu.ToggleState.Off)); } options = PToolMode.PopulateMenu(menu, modes); modes.Recycle(); // When the parameters are changed, update the view settings menu.onParametersChanged += UpdateViewMode; SetMode(Mode.Box); UpdateViewMode(); }