From 5d5979c58bff3d89f499c8da99d335c23d0b9076 Mon Sep 17 00:00:00 2001 From: Joonas Rikkonen Date: Mon, 8 Apr 2019 19:15:54 +0300 Subject: [PATCH] (a69e7b9c1) Moved delete button to the top of submarine list in submarine editor load window, to minimize accidental clicks --- .../Source/GameSession/CrewManager.cs | 3 -- .../Source/Screens/SubEditorScreen.cs | 42 ++++++++++--------- 2 files changed, 22 insertions(+), 23 deletions(-) diff --git a/Barotrauma/BarotraumaClient/Source/GameSession/CrewManager.cs b/Barotrauma/BarotraumaClient/Source/GameSession/CrewManager.cs index 6b9d55aee..1a7eaf05b 100644 --- a/Barotrauma/BarotraumaClient/Source/GameSession/CrewManager.cs +++ b/Barotrauma/BarotraumaClient/Source/GameSession/CrewManager.cs @@ -276,9 +276,6 @@ namespace Barotrauma characterInfos.Add(characterInfo); } - characterInfos.Add(characterInfo); - } - /// /// Remove the character from the crew (and crew menus). /// diff --git a/Barotrauma/BarotraumaClient/Source/Screens/SubEditorScreen.cs b/Barotrauma/BarotraumaClient/Source/Screens/SubEditorScreen.cs index f31eae330..1490f9866 100644 --- a/Barotrauma/BarotraumaClient/Source/Screens/SubEditorScreen.cs +++ b/Barotrauma/BarotraumaClient/Source/Screens/SubEditorScreen.cs @@ -1272,17 +1272,17 @@ namespace Barotrauma }; var innerFrame = new GUIFrame(new RectTransform(new Vector2(0.2f, 0.36f), loadFrame.RectTransform, Anchor.Center) { MinSize = new Point(350, 500) }); - GUIFrame paddedLoadFrame = new GUIFrame(new RectTransform(new Vector2(0.9f, 0.9f), innerFrame.RectTransform, Anchor.Center), style: null); - var subList = new GUIListBox(new RectTransform(new Vector2(1.0f, 0.9f), paddedLoadFrame.RectTransform)) + var paddedLoadFrame = new GUILayoutGroup(new RectTransform(new Vector2(0.9f, 0.9f), innerFrame.RectTransform, Anchor.Center)) { Stretch = true, RelativeSpacing = 0.05f }; + + var deleteButtonHolder = new GUILayoutGroup(new RectTransform(new Vector2(1.0f, 0.1f), paddedLoadFrame.RectTransform, Anchor.Center)); + + var subList = new GUIListBox(new RectTransform(new Vector2(1.0f, 1.0f), paddedLoadFrame.RectTransform)) { + ScrollBarVisible = true, OnSelected = (GUIComponent selected, object userData) => { - Submarine sub = userData as Submarine; - if (paddedLoadFrame.FindChild("delete") is GUIButton deleteBtn) - { - deleteBtn.Enabled = !sub.IsVanillaSubmarine(); - } + if (deleteButtonHolder.FindChild("delete") is GUIButton deleteBtn) deleteBtn.Enabled = true; return true; } }; @@ -1307,17 +1307,7 @@ namespace Barotrauma } } - new GUIButton(new RectTransform(new Vector2(0.3f, 0.05f), paddedLoadFrame.RectTransform, Anchor.BottomLeft), - TextManager.Get("Cancel"), style: "GUIButtonLarge") - { - OnClicked = (GUIButton btn, object userdata) => - { - loadFrame = null; - return true; - } - }; - - var deleteButton = new GUIButton(new RectTransform(new Vector2(0.3f, 0.05f), paddedLoadFrame.RectTransform, Anchor.BottomRight) { RelativeOffset = new Vector2(0.31f, 0.0f) }, + var deleteButton = new GUIButton(new RectTransform(new Vector2(1.0f, 1.0f), deleteButtonHolder.RectTransform, Anchor.TopCenter), TextManager.Get("Delete"), style: "GUIButtonLarge") { Enabled = false, @@ -1331,11 +1321,23 @@ namespace Barotrauma } deleteButton.Enabled = false; - + return true; }; - new GUIButton(new RectTransform(new Vector2(0.3f, 0.05f), paddedLoadFrame.RectTransform, Anchor.BottomRight), + var controlBtnHolder = new GUILayoutGroup(new RectTransform(new Vector2(1.0f, 0.1f), paddedLoadFrame.RectTransform), isHorizontal: true) { RelativeSpacing = 0.2f, Stretch = true }; + + new GUIButton(new RectTransform(new Vector2(0.5f, 1.0f), controlBtnHolder.RectTransform, Anchor.BottomLeft), + TextManager.Get("Cancel"), style: "GUIButtonLarge") + { + OnClicked = (GUIButton btn, object userdata) => + { + loadFrame = null; + return true; + } + }; + + new GUIButton(new RectTransform(new Vector2(0.5f, 1.0f), controlBtnHolder.RectTransform, Anchor.BottomRight), TextManager.Get("Load"), style: "GUIButtonLarge") { OnClicked = LoadSub