From a89f576fb9ae7ed6dfe5608b45a60656796643c3 Mon Sep 17 00:00:00 2001 From: Paul Chote Date: Sun, 11 Apr 2010 17:13:29 +1200 Subject: [PATCH] Unify the perf info visibility --- OpenRA.Game/GameRules/UserSettings.cs | 3 +-- OpenRA.Game/Widgets/BackgroundWidget.cs | 2 +- OpenRA.Game/Widgets/ButtonWidget.cs | 2 +- OpenRA.Game/Widgets/CheckboxWidget.cs | 2 +- .../Widgets/Delegates/PerfDebugDelegate.cs | 6 +----- .../Widgets/Delegates/SettingsMenuDelegate.cs | 15 ++++----------- OpenRA.Game/Widgets/Widget.cs | 4 ++-- mods/cnc/menus.yaml | 14 +++----------- mods/ra/menus.yaml | 14 +++----------- 9 files changed, 17 insertions(+), 45 deletions(-) diff --git a/OpenRA.Game/GameRules/UserSettings.cs b/OpenRA.Game/GameRules/UserSettings.cs index 1a8ab88654..114aefbeb3 100644 --- a/OpenRA.Game/GameRules/UserSettings.cs +++ b/OpenRA.Game/GameRules/UserSettings.cs @@ -25,8 +25,7 @@ namespace OpenRA.GameRules // Debug settings public bool UnitDebug = false; public bool PathDebug = false; - public bool PerfGraph = true; - public bool PerfText = true; + public bool PerfDebug = true; public bool IndexDebug = false; // Window settings diff --git a/OpenRA.Game/Widgets/BackgroundWidget.cs b/OpenRA.Game/Widgets/BackgroundWidget.cs index de336693ae..4e59de80a4 100644 --- a/OpenRA.Game/Widgets/BackgroundWidget.cs +++ b/OpenRA.Game/Widgets/BackgroundWidget.cs @@ -25,7 +25,7 @@ namespace OpenRA.Widgets public readonly string Background = "dialog"; public override void Draw(World world) { - if (!Visible) + if (!IsVisible()) { base.Draw(world); return; diff --git a/OpenRA.Game/Widgets/ButtonWidget.cs b/OpenRA.Game/Widgets/ButtonWidget.cs index 5c729e992f..f7591f6647 100644 --- a/OpenRA.Game/Widgets/ButtonWidget.cs +++ b/OpenRA.Game/Widgets/ButtonWidget.cs @@ -63,7 +63,7 @@ namespace OpenRA.Widgets public override void Draw(World world) { - if (!Visible) + if (!IsVisible()) { base.Draw(world); return; diff --git a/OpenRA.Game/Widgets/CheckboxWidget.cs b/OpenRA.Game/Widgets/CheckboxWidget.cs index 9ce32df0aa..1d36ef4337 100644 --- a/OpenRA.Game/Widgets/CheckboxWidget.cs +++ b/OpenRA.Game/Widgets/CheckboxWidget.cs @@ -30,7 +30,7 @@ namespace OpenRA.Widgets public override void Draw(World world) { - if (!Visible) + if (!IsVisible()) { base.Draw(world); return; diff --git a/OpenRA.Game/Widgets/Delegates/PerfDebugDelegate.cs b/OpenRA.Game/Widgets/Delegates/PerfDebugDelegate.cs index 0e07b73d0a..018263a531 100644 --- a/OpenRA.Game/Widgets/Delegates/PerfDebugDelegate.cs +++ b/OpenRA.Game/Widgets/Delegates/PerfDebugDelegate.cs @@ -29,6 +29,7 @@ namespace OpenRA.Widgets.Delegates { var r = Chrome.rootWidget; var perfRoot = r.GetWidget("PERF_BG"); + perfRoot.IsVisible = () => {return (perfRoot.Visible && Game.Settings.PerfDebug);}; // Perf text var perfText = perfRoot.GetWidget("TEXT"); @@ -40,11 +41,6 @@ namespace OpenRA.Widgets.Delegates PerfHistory.items["tick_time"].LastValue, Game.LocalTick); }; - perfText.IsVisible = () => {return (perfText.Visible && Game.Settings.PerfText);}; - - // Perf graph - var perfGraph = perfRoot.GetWidget("GRAPH"); - perfGraph.IsVisible = () => {return (perfGraph.Visible && Game.Settings.PerfGraph);}; } } } diff --git a/OpenRA.Game/Widgets/Delegates/SettingsMenuDelegate.cs b/OpenRA.Game/Widgets/Delegates/SettingsMenuDelegate.cs index f24f85dd7b..6796e8a971 100644 --- a/OpenRA.Game/Widgets/Delegates/SettingsMenuDelegate.cs +++ b/OpenRA.Game/Widgets/Delegates/SettingsMenuDelegate.cs @@ -30,19 +30,12 @@ namespace OpenRA.Widgets.Delegates return true; }; - r.GetWidget("SETTINGS_CHECKBOX_PERFGRAPH").Checked = () => {return Game.Settings.PerfGraph;}; - r.GetWidget("SETTINGS_CHECKBOX_PERFGRAPH").OnMouseDown = mi => { - Game.Settings.PerfGraph = !Game.Settings.PerfGraph; + r.GetWidget("SETTINGS_CHECKBOX_PERFDEBUG").Checked = () => {return Game.Settings.PerfDebug;}; + r.GetWidget("SETTINGS_CHECKBOX_PERFDEBUG").OnMouseDown = mi => { + Game.Settings.PerfDebug = !Game.Settings.PerfDebug; return true; }; - - r.GetWidget("SETTINGS_CHECKBOX_PERFTEXT").Checked = () => {return Game.Settings.PerfText;}; - r.GetWidget("SETTINGS_CHECKBOX_PERFTEXT").OnMouseDown = mi => { - Game.Settings.PerfText = !Game.Settings.PerfText; - return true; - }; - - + // Menu Buttons r.GetWidget("MAINMENU_BUTTON_SETTINGS").OnMouseUp = mi => { r.ShowMenu("SETTINGS_BG"); diff --git a/OpenRA.Game/Widgets/Widget.cs b/OpenRA.Game/Widgets/Widget.cs index 53d9a8d0cb..11b0ff7d67 100644 --- a/OpenRA.Game/Widgets/Widget.cs +++ b/OpenRA.Game/Widgets/Widget.cs @@ -107,7 +107,7 @@ namespace OpenRA.Widgets public virtual bool HandleInput(MouseInput mi) { // Are we able to handle this event? - if (!Visible || !GetEventBounds().Contains(mi.Location.X,mi.Location.Y)) + if (!IsVisible() || !GetEventBounds().Contains(mi.Location.X,mi.Location.Y)) return false; // Can any of our children handle this? @@ -131,7 +131,7 @@ namespace OpenRA.Widgets public virtual void Draw(World world) { - if (Visible) + if (IsVisible()) foreach (var child in Children) child.Draw(world); } diff --git a/mods/cnc/menus.yaml b/mods/cnc/menus.yaml index b007e61dfe..45b080cc28 100644 --- a/mods/cnc/menus.yaml +++ b/mods/cnc/menus.yaml @@ -121,20 +121,13 @@ Container: Width:300 Height:20 Text:Show Spatial Index Debug - Checkbox@SETTINGS_CHECKBOX_PERFGRAPH: - Id:SETTINGS_CHECKBOX_PERFGRAPH + Checkbox@SETTINGS_CHECKBOX_PERFDEBUG: + Id:SETTINGS_CHECKBOX_PERFDEBUG X:100 Y:150 Width:300 Height:20 - Text:Show Performance Graph - Checkbox@SETTINGS_CHECKBOX_PERFTEXT: - Id:SETTINGS_CHECKBOX_PERFTEXT - X:100 - Y:180 - Width:300 - Height:20 - Text:Show Performance Text + Text:Show Performance Information Button@SETTINGS_BUTTON_OK: Id:SETTINGS_BUTTON_OK X:PARENT_RIGHT - 180 @@ -306,7 +299,6 @@ Container: Y:WINDOW_BOTTOM - 250 Width: 210 Height: 250 - Visible: true Children: PerfGraph@GRAPH: ClickThrough:true diff --git a/mods/ra/menus.yaml b/mods/ra/menus.yaml index b007e61dfe..45b080cc28 100644 --- a/mods/ra/menus.yaml +++ b/mods/ra/menus.yaml @@ -121,20 +121,13 @@ Container: Width:300 Height:20 Text:Show Spatial Index Debug - Checkbox@SETTINGS_CHECKBOX_PERFGRAPH: - Id:SETTINGS_CHECKBOX_PERFGRAPH + Checkbox@SETTINGS_CHECKBOX_PERFDEBUG: + Id:SETTINGS_CHECKBOX_PERFDEBUG X:100 Y:150 Width:300 Height:20 - Text:Show Performance Graph - Checkbox@SETTINGS_CHECKBOX_PERFTEXT: - Id:SETTINGS_CHECKBOX_PERFTEXT - X:100 - Y:180 - Width:300 - Height:20 - Text:Show Performance Text + Text:Show Performance Information Button@SETTINGS_BUTTON_OK: Id:SETTINGS_BUTTON_OK X:PARENT_RIGHT - 180 @@ -306,7 +299,6 @@ Container: Y:WINDOW_BOTTOM - 250 Width: 210 Height: 250 - Visible: true Children: PerfGraph@GRAPH: ClickThrough:true