From 3ecaf76804e58734b9703773318ff1a0c3a5fc1a Mon Sep 17 00:00:00 2001 From: Ivaylo Draganov Date: Wed, 22 Sep 2021 16:59:36 +0300 Subject: [PATCH] Overhaul settings panel layout - make the panel larger - place settings widgets in a scroll panel - arrange settings widgets in two columns - make tabs in TD vertical --- .../Logic/Settings/AdvancedSettingsLogic.cs | 12 +- .../Logic/Settings/AudioSettingsLogic.cs | 27 +- .../Logic/Settings/DisplaySettingsLogic.cs | 25 +- .../Logic/Settings/HotkeysSettingsLogic.cs | 13 +- .../Logic/Settings/InputSettingsLogic.cs | 3 + .../Widgets/Logic/Settings/SettingsLogic.cs | 2 +- .../Widgets/Logic/Settings/SettingsUtils.cs | 25 + mods/cnc/chrome.yaml | 3 + mods/cnc/chrome/settings-advanced.yaml | 299 ++++++---- mods/cnc/chrome/settings-audio.yaml | 221 +++++--- mods/cnc/chrome/settings-display.yaml | 515 ++++++++++------- mods/cnc/chrome/settings-hotkeys.yaml | 134 ++--- mods/cnc/chrome/settings-input.yaml | 473 +++++++++------- mods/cnc/chrome/settings.yaml | 42 +- mods/common/chrome/settings-advanced.yaml | 295 ++++++---- mods/common/chrome/settings-audio.yaml | 217 ++++--- mods/common/chrome/settings-display.yaml | 531 ++++++++++-------- mods/common/chrome/settings-hotkeys.yaml | 118 ++-- mods/common/chrome/settings-input.yaml | 471 +++++++++------- mods/common/chrome/settings.yaml | 20 +- mods/d2k/chrome.yaml | 3 + mods/ra/chrome.yaml | 3 + mods/ts/chrome.yaml | 3 + mods/ts/chrome/settings-hotkeys.yaml | 119 ++-- 24 files changed, 2009 insertions(+), 1565 deletions(-) diff --git a/OpenRA.Mods.Common/Widgets/Logic/Settings/AdvancedSettingsLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Settings/AdvancedSettingsLogic.cs index 9edd1bca08..bbddd85eeb 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Settings/AdvancedSettingsLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Settings/AdvancedSettingsLogic.cs @@ -35,6 +35,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic var ds = Game.Settings.Debug; var ss = Game.Settings.Server; var gs = Game.Settings.Game; + var scrollPanel = panel.Get("SETTINGS_SCROLLPANEL"); // Advanced SettingsUtils.BindCheckboxPref(panel, "NAT_DISCOVERY", ss, "DiscoverNatDevices"); @@ -55,8 +56,15 @@ namespace OpenRA.Mods.Common.Widgets.Logic SettingsUtils.BindCheckboxPref(panel, "CHECKBOTSYNC_CHECKBOX", ds, "SyncCheckBotModuleCode"); SettingsUtils.BindCheckboxPref(panel, "PERFLOGGING_CHECKBOX", ds, "EnableSimulationPerfLogging"); - panel.Get("DEBUG_OPTIONS").IsVisible = () => ds.DisplayDeveloperSettings; - panel.Get("DEBUG_HIDDEN_LABEL").IsVisible = () => !ds.DisplayDeveloperSettings; + panel.Get("BOTDEBUG_CHECKBOX_CONTAINER").IsVisible = () => ds.DisplayDeveloperSettings; + panel.Get("CHECKUNSYNCED_CHECKBOX_CONTAINER").IsVisible = () => ds.DisplayDeveloperSettings; + panel.Get("CHECKBOTSYNC_CHECKBOX_CONTAINER").IsVisible = () => ds.DisplayDeveloperSettings; + panel.Get("LUADEBUG_CHECKBOX_CONTAINER").IsVisible = () => ds.DisplayDeveloperSettings; + panel.Get("REPLAY_COMMANDS_CHECKBOX_CONTAINER").IsVisible = () => ds.DisplayDeveloperSettings; + panel.Get("PERFLOGGING_CHECKBOX_CONTAINER").IsVisible = () => ds.DisplayDeveloperSettings; + panel.Get("DEBUG_HIDDEN_CONTAINER").IsVisible = () => !ds.DisplayDeveloperSettings; + + SettingsUtils.AdjustSettingsScrollPanelLayout(scrollPanel); return () => ss.DiscoverNatDevices != OriginalServerDiscoverNatDevices; } diff --git a/OpenRA.Mods.Common/Widgets/Logic/Settings/AudioSettingsLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Settings/AudioSettingsLogic.cs index ebb1fa4f53..81ef0b3e6b 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Settings/AudioSettingsLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Settings/AudioSettingsLogic.cs @@ -43,6 +43,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic { var musicPlaylist = worldRenderer.World.WorldActor.Trait(); var ss = Game.Settings.Sound; + var scrollPanel = panel.Get("SETTINGS_SCROLLPANEL"); SettingsUtils.BindCheckboxPref(panel, "CASH_TICKS", ss, "CashTicks"); SettingsUtils.BindCheckboxPref(panel, "MUTE_SOUND", ss, "Mute"); @@ -81,13 +82,16 @@ namespace OpenRA.Mods.Common.Widgets.Logic }; // Replace controls with a warning label if sound is disabled - var noDeviceLabel = panel.GetOrNull("NO_AUDIO_DEVICE"); + var noDeviceLabel = panel.GetOrNull("NO_AUDIO_DEVICE_CONTAINER"); if (noDeviceLabel != null) noDeviceLabel.Visible = Game.Sound.DummyEngine; - var controlsContainer = panel.GetOrNull("AUDIO_CONTROLS"); - if (controlsContainer != null) - controlsContainer.Visible = !Game.Sound.DummyEngine; + panel.Get("CASH_TICKS_CONTAINER").Visible = !Game.Sound.DummyEngine; + panel.Get("MUTE_SOUND_CONTAINER").Visible = !Game.Sound.DummyEngine; + panel.Get("MUTE_BACKGROUND_MUSIC_CONTAINER").Visible = !Game.Sound.DummyEngine; + panel.Get("SOUND_VOLUME_CONTAINER").Visible = !Game.Sound.DummyEngine; + panel.Get("MUSIC_VOLUME_CONTAINER").Visible = !Game.Sound.DummyEngine; + panel.Get("VIDEO_VOLUME_CONTAINER").Visible = !Game.Sound.DummyEngine; var soundVolumeSlider = panel.Get("SOUND_VOLUME"); soundVolumeSlider.OnChange += x => Game.Sound.SoundVolume = x; @@ -102,13 +106,18 @@ namespace OpenRA.Mods.Common.Widgets.Logic soundDevice = devices.FirstOrDefault(d => d.Device == ss.Device) ?? devices.First(); var audioDeviceDropdown = panel.Get("AUDIO_DEVICE"); - audioDeviceDropdown.OnMouseDown = _ => ShowAudioDeviceDropdown(audioDeviceDropdown, devices); + audioDeviceDropdown.OnMouseDown = _ => ShowAudioDeviceDropdown(audioDeviceDropdown, devices, scrollPanel); var deviceFont = Game.Renderer.Fonts[audioDeviceDropdown.Font]; var deviceLabel = new CachedTransform( s => WidgetUtils.TruncateText(s.Label, audioDeviceDropdown.UsableWidth, deviceFont)); audioDeviceDropdown.GetText = () => deviceLabel.Update(soundDevice); + var restartDesc = panel.Get("RESTART_REQUIRED_DESC"); + restartDesc.IsVisible = () => soundDevice.Device != OriginalSoundDevice; + + SettingsUtils.AdjustSettingsScrollPanelLayout(scrollPanel); + return () => { ss.Device = soundDevice.Device; @@ -142,7 +151,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic }; } - void ShowAudioDeviceDropdown(DropDownButtonWidget dropdown, SoundDevice[] devices) + void ShowAudioDeviceDropdown(DropDownButtonWidget dropdown, SoundDevice[] devices, ScrollPanelWidget scrollPanel) { var i = 0; var options = devices.ToDictionary(d => (i++).ToString(), d => d); @@ -151,7 +160,11 @@ namespace OpenRA.Mods.Common.Widgets.Logic { var item = ScrollItemWidget.Setup(itemTemplate, () => soundDevice == options[o], - () => soundDevice = options[o]); + () => + { + soundDevice = options[o]; + SettingsUtils.AdjustSettingsScrollPanelLayout(scrollPanel); + }); var deviceLabel = item.Get("LABEL"); var font = Game.Renderer.Fonts[deviceLabel.Font]; diff --git a/OpenRA.Mods.Common/Widgets/Logic/Settings/DisplaySettingsLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Settings/DisplaySettingsLogic.cs index 2d3f2ec5ff..954ab95bef 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Settings/DisplaySettingsLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Settings/DisplaySettingsLogic.cs @@ -64,6 +64,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic { var ds = Game.Settings.Graphics; var gs = Game.Settings.Game; + var scrollPanel = panel.Get("SETTINGS_SCROLLPANEL"); SettingsUtils.BindCheckboxPref(panel, "CURSORDOUBLE_CHECKBOX", ds, "CursorDouble"); SettingsUtils.BindCheckboxPref(panel, "VSYNC_CHECKBOX", ds, "VSync"); @@ -74,7 +75,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic SettingsUtils.BindCheckboxPref(panel, "PAUSE_SHELLMAP_CHECKBOX", gs, "PauseShellmap"); var windowModeDropdown = panel.Get("MODE_DROPDOWN"); - windowModeDropdown.OnMouseDown = _ => ShowWindowModeDropdown(windowModeDropdown, ds); + windowModeDropdown.OnMouseDown = _ => ShowWindowModeDropdown(windowModeDropdown, ds, scrollPanel); windowModeDropdown.GetText = () => ds.Mode == WindowMode.Windowed ? "Windowed" : ds.Mode == WindowMode.Fullscreen ? "Fullscreen (Legacy)" : "Fullscreen"; @@ -130,8 +131,8 @@ namespace OpenRA.Mods.Common.Widgets.Logic uiScaleDropdown.IsDisabled = () => disableUIScale; - panel.Get("DISPLAY_SELECTION").IsVisible = () => ds.Mode != WindowMode.Windowed; - panel.Get("WINDOW_RESOLUTION").IsVisible = () => ds.Mode == WindowMode.Windowed; + panel.Get("DISPLAY_SELECTION_CONTAINER").IsVisible = () => ds.Mode != WindowMode.Windowed; + panel.Get("WINDOW_RESOLUTION_CONTAINER").IsVisible = () => ds.Mode == WindowMode.Windowed; var windowWidth = panel.Get("WINDOW_WIDTH"); var origWidthText = windowWidth.Text = ds.WindowedSize.X.ToString(); @@ -148,6 +149,8 @@ namespace OpenRA.Mods.Common.Widgets.Logic var frameLimitLabel = new CachedTransform(fps => frameLimitOrigLabel + $" ({fps} FPS)"); frameLimitCheckbox.GetText = () => frameLimitLabel.Update(ds.MaxFramerate); + panel.Get("FRAME_LIMIT_SLIDER").IsDisabled = () => !frameLimitCheckbox.IsChecked(); + // Player profile var ps = Game.Settings.Player; @@ -194,6 +197,8 @@ namespace OpenRA.Mods.Common.Widgets.Logic }); colorDropdown.Get("COLORBLOCK").GetColor = () => ps.Color; + SettingsUtils.AdjustSettingsScrollPanelLayout(scrollPanel); + return () => { Exts.TryParseIntegerInvariant(windowWidth.Text, out var x); @@ -244,7 +249,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic }; } - static void ShowWindowModeDropdown(DropDownButtonWidget dropdown, GraphicSettings s) + static void ShowWindowModeDropdown(DropDownButtonWidget dropdown, GraphicSettings s, ScrollPanelWidget scrollPanel) { var options = new Dictionary() { @@ -257,7 +262,11 @@ namespace OpenRA.Mods.Common.Widgets.Logic { var item = ScrollItemWidget.Setup(itemTemplate, () => s.Mode == options[o], - () => s.Mode = options[o]); + () => + { + s.Mode = options[o]; + SettingsUtils.AdjustSettingsScrollPanelLayout(scrollPanel); + }); item.Get("LABEL").GetText = () => o; return item; @@ -393,9 +402,9 @@ namespace OpenRA.Mods.Common.Widgets.Logic // HACK: Recalculate the widget bounds to fit within the new effective window bounds // This is fragile, and only works when called when Settings is opened via the main menu. - // HACK: Skip children badges container on the main menu - // This has a fixed size, with calculated size and children positions that break if we adjust them here - if (w.Id == "BADGES_CONTAINER") + // HACK: Skip children badges container on the main menu and settings tab container + // These have a fixed size, with calculated size and children positions that break if we adjust them here + if (w.Id == "BADGES_CONTAINER" || w.Id == "SETTINGS_TAB_CONTAINER") return; var parentBounds = w.Parent == null diff --git a/OpenRA.Mods.Common/Widgets/Logic/Settings/HotkeysSettingsLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Settings/HotkeysSettingsLogic.cs index 3dcf55fcc0..e63c05feea 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Settings/HotkeysSettingsLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Settings/HotkeysSettingsLogic.cs @@ -86,31 +86,26 @@ namespace OpenRA.Mods.Common.Widgets.Logic { hotkeyList = panel.Get("HOTKEY_LIST"); hotkeyList.Layout = new GridLayout(hotkeyList); - var hotkeyHeader = hotkeyList.Get("HEADER"); - var templates = hotkeyList.Get("TEMPLATES"); + var headerTemplate = hotkeyList.Get("HEADER"); + var template = hotkeyList.Get("TEMPLATE"); hotkeyList.RemoveChildren(); - Func returnTrue = () => true; - Action doNothing = () => { }; - if (logicArgs.TryGetValue("HotkeyGroups", out var hotkeyGroups)) { InitHotkeyRemapDialog(panel); foreach (var hg in hotkeyGroups.Nodes) { - var templateNode = hg.Value.Nodes.FirstOrDefault(n => n.Key == "Template"); var typesNode = hg.Value.Nodes.FirstOrDefault(n => n.Key == "Types"); - if (templateNode == null || typesNode == null) + if (typesNode == null) continue; - var header = ScrollItemWidget.Setup(hotkeyHeader, returnTrue, doNothing); + var header = headerTemplate.Clone(); header.Get("LABEL").GetText = () => hg.Key; hotkeyList.AddChild(header); var types = FieldLoader.GetValue("Types", typesNode.Value.Value); var added = new HashSet(); - var template = templates.Get(templateNode.Value.Value); foreach (var t in types) { diff --git a/OpenRA.Mods.Common/Widgets/Logic/Settings/InputSettingsLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Settings/InputSettingsLogic.cs index 8f224eb6c6..ffc388b753 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Settings/InputSettingsLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Settings/InputSettingsLogic.cs @@ -28,6 +28,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic Func InitPanel(Widget panel) { var gs = Game.Settings.Game; + var scrollPanel = panel.Get("SETTINGS_SCROLLPANEL"); SettingsUtils.BindCheckboxPref(panel, "ALTERNATE_SCROLL_CHECKBOX", gs, "UseAlternateScrollButton"); SettingsUtils.BindCheckboxPref(panel, "EDGESCROLL_CHECKBOX", gs, "ViewportEdgeScroll"); @@ -89,6 +90,8 @@ namespace OpenRA.Mods.Common.Widgets.Logic zoomModifierDropdown.OnMouseDown = _ => ShowZoomModifierDropdown(zoomModifierDropdown, gs); zoomModifierDropdown.GetText = () => gs.ZoomModifier.ToString(); + SettingsUtils.AdjustSettingsScrollPanelLayout(scrollPanel); + return () => false; } diff --git a/OpenRA.Mods.Common/Widgets/Logic/Settings/SettingsLogic.cs b/OpenRA.Mods.Common/Widgets/Logic/Settings/SettingsLogic.cs index f5e3e30994..db9d51e8c8 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Settings/SettingsLogic.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Settings/SettingsLogic.cs @@ -40,7 +40,7 @@ namespace OpenRA.Mods.Common.Widgets.Logic var panelTemplate = panelContainer.Get("PANEL_TEMPLATE"); panelContainer.RemoveChild(panelTemplate); - tabContainer = widget.Get("TAB_CONTAINER"); + tabContainer = widget.Get("SETTINGS_TAB_CONTAINER"); tabTemplate = tabContainer.Get("BUTTON_TEMPLATE"); tabContainer.RemoveChild(tabTemplate); diff --git a/OpenRA.Mods.Common/Widgets/Logic/Settings/SettingsUtils.cs b/OpenRA.Mods.Common/Widgets/Logic/Settings/SettingsUtils.cs index 5031d33f42..d44c08b94b 100644 --- a/OpenRA.Mods.Common/Widgets/Logic/Settings/SettingsUtils.cs +++ b/OpenRA.Mods.Common/Widgets/Logic/Settings/SettingsUtils.cs @@ -48,5 +48,30 @@ namespace OpenRA.Mods.Common.Widgets.Logic ss.Value = (float)(int)field.GetValue(group); ss.OnChange += x => field.SetValue(group, (int)x); } + + public static void AdjustSettingsScrollPanelLayout(ScrollPanelWidget scrollPanel) + { + foreach (var row in scrollPanel.Children) + { + if (row.Children.Count == 0) + continue; + + var hasVisibleChildren = false; + + foreach (var container in row.Children) + { + if (container.IsVisible()) + { + hasVisibleChildren = true; + break; + } + } + + if (!hasVisibleChildren) + row.Visible = false; + } + + scrollPanel.Layout.AdjustChildren(); + } } } diff --git a/mods/cnc/chrome.yaml b/mods/cnc/chrome.yaml index 3670ce7a35..35c8fd0fb1 100644 --- a/mods/cnc/chrome.yaml +++ b/mods/cnc/chrome.yaml @@ -448,6 +448,9 @@ dropdown-separators: separator-pressed: 129, 34, 1, 19 separator-disabled: 161, 34, 1, 19 +separator: + Inherits: button + # # Common chrome # === diff --git a/mods/cnc/chrome/settings-advanced.yaml b/mods/cnc/chrome/settings-advanced.yaml index 560426df45..5e96736117 100644 --- a/mods/cnc/chrome/settings-advanced.yaml +++ b/mods/cnc/chrome/settings-advanced.yaml @@ -3,128 +3,193 @@ Container@ADVANCED_PANEL: Width: PARENT_RIGHT Height: PARENT_BOTTOM Children: - Label@ADVANCED_TITLE: - Y: 21 - Width: PARENT_RIGHT - Font: Bold - Text: Advanced - Align: Center - Checkbox@NAT_DISCOVERY: - X: 15 - Y: 43 - Width: 200 - Height: 20 - Font: Regular - Text: Enable UPnP/NAT-PMP Discovery - Checkbox@PERFTEXT_CHECKBOX: - X: 15 - Y: 73 - Width: 300 - Height: 20 - Font: Regular - Text: Show Performance Text - Checkbox@PERFGRAPH_CHECKBOX: - X: 15 - Y: 103 - Width: 300 - Height: 20 - Font: Regular - Text: Show Performance Graph - Checkbox@FETCH_NEWS_CHECKBOX: - X: 310 - Y: 43 - Width: 300 - Height: 20 - Font: Regular - Text: Fetch Community News - Checkbox@CHECK_VERSION_CHECKBOX: - X: 310 - Y: 73 - Width: 300 - Height: 20 - Font: Regular - Text: Check for Updates - Checkbox@SENDSYSINFO_CHECKBOX: - X: 310 - Y: 103 - Width: 300 - Height: 20 - Font: Regular - Text: Send System Information - Label@SENDSYSINFO_DESC: - X: 310 - Y: 118 - Width: 255 - Height: 30 - Font: Tiny - WordWrap: True - Text: Your Operating System, OpenGL and .NET runtime versions, and language settings will be sent along with an anonymous ID to help prioritize future development. - Label@DEBUG_TITLE: - Y: 190 - Width: PARENT_RIGHT - Font: Bold - Text: Developer - Align: Center - Container@DEBUG_HIDDEN_LABEL: - Y: 245 - Width: PARENT_RIGHT - Children: - Label@A: - Width: PARENT_RIGHT - Height: 20 - Font: Regular - Text: Additional developer-specific options can be enabled via the - Align: Center - Label@B: - Y: 20 - Width: PARENT_RIGHT - Height: 20 - Font: Regular - Text: Debug.DisplayDeveloperSettings setting or launch flag - Align: Center - Container@DEBUG_OPTIONS: + ScrollPanel@SETTINGS_SCROLLPANEL: Width: PARENT_RIGHT Height: PARENT_BOTTOM + CollapseHiddenChildren: True + TopBottomSpacing: 5 + ItemSpacing: 10 Children: - Checkbox@BOTDEBUG_CHECKBOX: - X: 15 - Y: 213 - Width: 300 + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Advanced + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Show Bot Debug Messages - Checkbox@CHECKUNSYNCED_CHECKBOX: - X: 15 - Y: 243 - Width: 300 + Children: + Container@NAT_DISCOVERY_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@NAT_DISCOVERY: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Enable UPnP/NAT-PMP Discovery + Container@FETCH_NEWS_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@FETCH_NEWS_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Fetch Community News + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Check Sync around Unsynced Code - Checkbox@CHECKBOTSYNC_CHECKBOX: - X: 15 - Y: 273 - Width: 300 + Children: + Container@PERFGRAPH_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@PERFGRAPH_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Show Performance Graph + Container@CHECK_VERSION_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@CHECK_VERSION_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Check for Updates + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@PERFTEXT_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@PERFTEXT_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Show Performance Text + Container@SENDSYSINFO_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@SENDSYSINFO_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Send System Information + Label@SENDSYSINFO_DESC: + Y: 15 + Width: PARENT_RIGHT + Height: 30 + Font: Tiny + WordWrap: True + Text: Your Operating System, OpenGL and .NET runtime versions, and language settings will be sent along with an anonymous ID to help prioritize future development. + Container@SPACER: + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Developer + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 40 + Children: + Container@DEBUG_HIDDEN_CONTAINER: + X: 10 + Width: PARENT_RIGHT - 10 + Children: + Label@A: + Width: PARENT_RIGHT + Height: 20 + Text: Additional developer-specific options can be enabled via the + Align: Center + Label@B: + Y: 20 + Width: PARENT_RIGHT + Height: 20 + Text: Debug.DisplayDeveloperSettings setting or launch flag + Align: Center + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Check Sync around BotModule Code - Checkbox@LUADEBUG_CHECKBOX: - X: 310 - Y: 213 - Width: 300 + Children: + Container@BOTDEBUG_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@BOTDEBUG_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Show Bot Debug Messages + Container@CHECKBOTSYNC_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@CHECKBOTSYNC_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Check Sync around BotModule Code + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Show Map Debug Messages - Checkbox@REPLAY_COMMANDS_CHECKBOX: - X: 310 - Y: 243 - Width: 300 + Children: + Container@LUADEBUG_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@LUADEBUG_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Show Map Debug Messages + Container@CHECKUNSYNCED_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@CHECKUNSYNCED_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Check Sync around Unsynced Code + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Enable Debug Commands in Replays - Checkbox@PERFLOGGING_CHECKBOX: - X: 310 - Y: 273 - Width: 300 - Height: 20 - Font: Regular - Text: Enable Tick Performance Logging + Children: + Container@REPLAY_COMMANDS_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@REPLAY_COMMANDS_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Enable Debug Commands in Replays + Container@PERFLOGGING_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@PERFLOGGING_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Enable Tick Performance Logging diff --git a/mods/cnc/chrome/settings-audio.yaml b/mods/cnc/chrome/settings-audio.yaml index 694e80e108..cf41b30521 100644 --- a/mods/cnc/chrome/settings-audio.yaml +++ b/mods/cnc/chrome/settings-audio.yaml @@ -3,97 +3,140 @@ Container@AUDIO_PANEL: Width: PARENT_RIGHT Height: PARENT_BOTTOM Children: - Label@AUDIO_TITLE: - Y: 21 - Width: PARENT_RIGHT - Font: Bold - Text: Audio - Align: Center - Label@NO_AUDIO_DEVICE: - Y: 50 - Width: PARENT_RIGHT - Align: Center - Text: Audio controls require an active sound device - Container@AUDIO_CONTROLS: + ScrollPanel@SETTINGS_SCROLLPANEL: Width: PARENT_RIGHT Height: PARENT_BOTTOM + CollapseHiddenChildren: True + TopBottomSpacing: 5 + ItemSpacing: 10 Children: - Checkbox@CASH_TICKS: - X: 15 - Y: 43 - Width: 200 + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Audio + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Cash Ticks - Checkbox@MUTE_SOUND: - X: 15 - Y: 73 - Width: 200 + Children: + Container@NO_AUDIO_DEVICE_CONTAINER: + X: 10 + Width: PARENT_RIGHT - 10 + Children: + Label@NO_AUDIO_DEVICE: + Width: PARENT_RIGHT + Height: 20 + Align: Center + Text: Audio controls require an active sound device + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@CASH_TICKS_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@CASH_TICKS: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Cash Ticks + Container@MUTE_SOUND_CONTAINER: + X: 10 + Y: 30 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@MUTE_SOUND: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Mute Sound + Container@SOUND_VOLUME_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@SOUND_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Sound Volume: + ExponentialSlider@SOUND_VOLUME: + Y: 30 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@MUTE_BACKGROUND_MUSIC_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@MUTE_BACKGROUND_MUSIC: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Mute Background Music + Container@MUSIC_VOLUME_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@MUSIC_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Music Volume: + ExponentialSlider@MUSIC_VOLUME: + Y: 25 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@AUDIO_DEVICE_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@AUDIO_DEVICE_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Audio Device: + DropDownButton@AUDIO_DEVICE: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Container@VIDEO_VOLUME_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@VIDEO_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Video Volume: + ExponentialSlider@VIDEO_VOLUME: + Y: 25 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Mute Sound - Checkbox@MUTE_BACKGROUND_MUSIC: - X: 15 - Y: 103 - Width: 200 - Height: 20 - Font: Regular - Text: Mute Background Music - Label@SOUND_LABEL: - X: PARENT_RIGHT - WIDTH - 270 - Y: 40 - Width: 95 - Height: 25 - Align: Right - Text: Sound Volume: - ExponentialSlider@SOUND_VOLUME: - X: PARENT_RIGHT - WIDTH - 15 - Y: 45 - Width: 250 - Height: 20 - Ticks: 7 - Label@MUSIC_LABEL: - X: PARENT_RIGHT - WIDTH - 270 - Y: 70 - Width: 95 - Height: 25 - Align: Right - Text: Music Volume: - ExponentialSlider@MUSIC_VOLUME: - X: PARENT_RIGHT - WIDTH - 15 - Y: 75 - Width: 250 - Height: 20 - Ticks: 7 - Label@VIDEO_LABEL: - X: PARENT_RIGHT - WIDTH - 270 - Y: 100 - Width: 95 - Height: 25 - Align: Right - Text: Video Volume: - ExponentialSlider@VIDEO_VOLUME: - X: PARENT_RIGHT - WIDTH - 15 - Y: 105 - Width: 250 - Height: 20 - Ticks: 7 - Label@AUDIO_DEVICE_LABEL: - X: 190 - WIDTH - 5 - Y: 240 - Width: 75 - Height: 25 - Align: Right - Text: Audio Device: - DropDownButton@AUDIO_DEVICE: - X: 190 - Y: 240 - Width: 300 - Height: 25 - Label@AUDIO_DEVICE_DESC: - Y: 261 - Width: PARENT_RIGHT - Height: 25 - Font: Tiny - Align: Center - Text: Device changes will be applied after the game is restarted + Children: + Container@RESTART_REQUIRED_CONTAINER: + X: 10 + Width: PARENT_RIGHT - 10 + Children: + Label@RESTART_REQUIRED_DESC: + Width: PARENT_RIGHT + Height: 20 + Font: Tiny + Align: Center + Text: Device changes will be applied after the game is restarted diff --git a/mods/cnc/chrome/settings-display.yaml b/mods/cnc/chrome/settings-display.yaml index a1f4a37515..4fe073ed34 100644 --- a/mods/cnc/chrome/settings-display.yaml +++ b/mods/cnc/chrome/settings-display.yaml @@ -3,221 +3,306 @@ Container@DISPLAY_PANEL: Width: PARENT_RIGHT Height: PARENT_BOTTOM Children: - Label@VIDEO_TITLE: - Y: 21 + ScrollPanel@SETTINGS_SCROLLPANEL: Width: PARENT_RIGHT - Font: Bold - Text: Display - Align: Center - Label@PLAYER: - Text: Player Name: - X: 15 - Y: 40 - Width: 120 - Height: 25 - Align: Right - TextField@PLAYERNAME: - Text: Name - X: 140 - Y: 40 - Width: 160 - Height: 25 - MaxLength: 16 - Label@COLOR: - X: 265 - Y: 40 - Width: 145 - Height: 25 - Text: Preferred Color: - Align: Right - DropDownButton@PLAYERCOLOR: - X: 415 - Y: 40 - Width: 75 - Height: 25 - IgnoreChildMouseOver: true - PanelAlign: Right + Height: PARENT_BOTTOM + CollapseHiddenChildren: True + TopBottomSpacing: 5 + ItemSpacing: 10 Children: - ColorBlock@COLORBLOCK: + Background@SECTION_HEADER: X: 5 - Y: 6 - Width: PARENT_RIGHT - 35 - Height: PARENT_BOTTOM - 12 - Label@BATTLEFIELD_CAMERA: - X: 15 - Y: 70 - Width: 120 - Height: 25 - Text: Battlefield Camera: - Align: Right - DropDownButton@BATTLEFIELD_CAMERA_DROPDOWN: - X: 140 - Y: 70 - Width: 160 - Height: 25 - Font: Regular - Label@TARGET_LINES: - X: 265 - Y: 70 - Width: 145 - Height: 25 - Text: Target Lines: - Align: Right - DropDownButton@TARGET_LINES_DROPDOWN: - X: 415 - Y: 70 - Width: 160 - Height: 25 - Font: Regular - Label@UI_SCALE: - X: 15 - Y: 100 - Width: 120 - Height: 25 - Text: UI Scale: - Align: Right - DropDownButton@UI_SCALE_DROPDOWN: - X: 140 - Y: 100 - Width: 160 - Height: 25 - Font: Regular - Label@STATUS_BARS: - X: 265 - Y: 100 - Width: 145 - Height: 25 - Text: Status Bars: - Align: Right - DropDownButton@STATUS_BAR_DROPDOWN: - X: 415 - Y: 100 - Width: 160 - Height: 25 - Font: Regular - Checkbox@CURSORDOUBLE_CHECKBOX: - X: 15 - Y: 133 - Width: 200 - Height: 20 - Font: Regular - Text: Increase Cursor Size - Checkbox@PLAYER_STANCE_COLORS_CHECKBOX: - X: 310 - Y: 133 - Width: 200 - Height: 20 - Font: Regular - Text: Player Stance Colors - Checkbox@UI_FEEDBACK_CHECKBOX: - X: 15 - Y: 163 - Width: 200 - Height: 20 - Font: Regular - Text: UI Feedback in Transients Panel - Label@VIDEO_TITLE: - Y: 190 - Width: PARENT_RIGHT - Font: Bold - Text: Video - Align: Center - Label@VIDEO_MODE: - X: 15 - Y: 210 - Width: 120 - Height: 25 - Align: Right - Text: Video Mode: - DropDownButton@MODE_DROPDOWN: - X: 140 - Y: 210 - Width: 160 - Height: 25 - Font: Regular - Text: Windowed - Container@WINDOW_RESOLUTION: - Y: 240 - Children: - Label@WINDOW_SIZE: - X: 15 - Height: 25 - Width: 120 - Align: Right - Text: Window Size: - TextField@WINDOW_WIDTH: - X: 140 - Width: 55 - Height: 25 - MaxLength: 5 - Type: Integer - Label@X: - Text: x - Font: Bold - X: 195 - Height: 25 - Width: 15 - Align: Center - TextField@WINDOW_HEIGHT: - X: 210 - Width: 55 - Height: 25 - MaxLength: 5 - Type: Integer - Container@DISPLAY_SELECTION: - Y: 240 - Children: - Label@DISPLAY_SELECTION_LABEL: - X: 15 - Height: 25 - Width: 120 - Align: Right - Text: Select Display: - DropDownButton@DISPLAY_SELECTION_DROPDOWN: - X: 140 - Width: 160 - Height: 25 - Font: Regular - Checkbox@VSYNC_CHECKBOX: - X: 310 - Y: 210 - Width: 200 - Height: 20 - Font: Regular - Text: Enable VSync - Checkbox@FRAME_LIMIT_CHECKBOX: - X: 310 - Y: 243 - Width: 200 - Height: 20 - Font: Regular - Text: Enable Frame Limiter - Slider@FRAME_LIMIT_SLIDER: - X: 340 - Y: 265 - Width: 200 - Height: 20 - Ticks: 20 - MinimumValue: 50 - MaximumValue: 240 - Label@GL_PROFILE: - X: 15 - Y: 270 - Width: 120 - Height: 25 - Align: Right - Text: OpenGL Profile: - DropDownButton@GL_PROFILE_DROPDOWN: - X: 140 - Y: 270 - Width: 160 - Height: 25 - Font: Regular - Label@RESTART_REQUIRED_DESC: - X: 300 - Y: PARENT_BOTTOM + 10 - Width: PARENT_RIGHT - 300 - Height: 15 - Font: TinyBold - Text: Display and OpenGL changes require restart - Align: Center + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Profile + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@PLAYER_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@PLAYER: + Width: PARENT_RIGHT + Height: 20 + Text: Player Name: + TextField@PLAYERNAME: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + MaxLength: 16 + Text: Name + Container@PLAYERCOLOR_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@COLOR: + Width: PARENT_RIGHT + Height: 20 + Text: Preferred Color: + DropDownButton@PLAYERCOLOR: + Y: 25 + Width: 75 + Height: 25 + IgnoreChildMouseOver: true + PanelAlign: Right + Children: + ColorBlock@COLORBLOCK: + X: 5 + Y: 6 + Width: PARENT_RIGHT - 35 + Height: PARENT_BOTTOM - 12 + Container@SPACER: + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Display + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@BATTLEFIELD_CAMERA_DROPDOWN_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@BATTLEFIELD_CAMERA: + Width: PARENT_RIGHT + Height: 20 + Text: Battlefield Camera: + DropDownButton@BATTLEFIELD_CAMERA_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@TARGET_LINES_DROPDOWN_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@TARGET_LINES: + Width: PARENT_RIGHT + Height: 20 + Text: Target Lines: + DropDownButton@TARGET_LINES_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@UI_SCALE_DROPDOWN_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@UI_SCALE: + Width: PARENT_RIGHT + Height: 20 + Text: UI Scale: + DropDownButton@UI_SCALE_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@STATUS_BAR_DROPDOWN_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@STATUS_BARS: + Width: PARENT_RIGHT + Height: 20 + Text: Status Bars: + DropDownButton@STATUS_BAR_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 20 + Children: + Container@CURSORDOUBLE_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@CURSORDOUBLE_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Increase Cursor Size + Container@PLAYER_STANCE_COLORS_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@PLAYER_STANCE_COLORS_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Player Stance Colors + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 20 + Children: + Container@UI_FEEDBACK_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@UI_FEEDBACK_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: UI Feedback in Transients Panel + Container@SPACER: + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Video + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@VIDEO_MODE_DROPDOWN_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@VIDEO_MODE: + Width: PARENT_RIGHT + Height: 20 + Text: Video Mode: + DropDownButton@MODE_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Text: Windowed + Container@WINDOW_RESOLUTION_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@WINDOW_SIZE: + Width: PARENT_RIGHT + Height: 20 + Text: Window Size: + TextField@WINDOW_WIDTH: + Y: 25 + Width: 55 + Height: 25 + MaxLength: 5 + Type: Integer + Label@X: + X: 55 + Y: 25 + Text: x + Font: Bold + Height: 25 + Width: 15 + Align: Center + TextField@WINDOW_HEIGHT: + X: 70 + Y: 25 + Width: 55 + Height: 25 + MaxLength: 5 + Type: Integer + Container@DISPLAY_SELECTION_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@DISPLAY_SELECTION_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Select Display: + DropDownButton@DISPLAY_SELECTION_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Text: Standard + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@FRAME_LIMIT_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@FRAME_LIMIT_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Enable Frame Limiter + Container@FRAME_LIMIT_SLIDER_CONTAINER: + Width: PARENT_RIGHT / 2 - 20 + Children: + Slider@FRAME_LIMIT_SLIDER: + X: 20 + Y: 25 + Width: PARENT_RIGHT - 20 + Height: 20 + Ticks: 20 + MinimumValue: 50 + MaximumValue: 240 + Container@VSYNC_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@VSYNC_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Enable VSync + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@GL_PROFILE_DROPDOWN_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@GL_PROFILE: + Width: PARENT_RIGHT + Height: 20 + Text: OpenGL Profile: + DropDownButton@GL_PROFILE_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 30 + Children: + Container@RESTART_REQUIRED_CONTAINER: + X: 10 + Width: PARENT_RIGHT - 20 + Children: + Label@RESTART_REQUIRED_DESC: + Width: PARENT_RIGHT + Height: 20 + Font: Tiny + Text: Display and OpenGL changes require restart + Align: Center diff --git a/mods/cnc/chrome/settings-hotkeys.yaml b/mods/cnc/chrome/settings-hotkeys.yaml index 95e789df68..e304aca69a 100644 --- a/mods/cnc/chrome/settings-hotkeys.yaml +++ b/mods/cnc/chrome/settings-hotkeys.yaml @@ -2,171 +2,123 @@ Container@HOTKEYS_PANEL: Logic: HotkeysSettingsLogic HotkeyGroups: Game Commands: - Template: TWO_COLUMN Types: OrderGenerator, World, Menu Viewport Commands: - Template: TWO_COLUMN Types: Viewport Observer / Replay Commands: - Template: TWO_COLUMN Types: Observer, Replay Unit Commands: - Template: THREE_COLUMN Types: Unit Unit Stance Commands: - Template: TWO_COLUMN Types: Stance Production Commands: - Template: THREE_COLUMN Types: Production, ProductionSlot Support Power Commands: - Template: THREE_COLUMN Types: SupportPower Music Commands: - Template: TWO_COLUMN Types: Music Chat Commands: - Template: TWO_COLUMN Types: Chat Width: PARENT_RIGHT Height: PARENT_BOTTOM Children: - Label@HOTKEY_TITLE: - Y: 21 - Width: PARENT_RIGHT - Font: Bold - Text: Hotkeys - Align: Center ScrollPanel@HOTKEY_LIST: - X: 15 - Y: 40 - Width: PARENT_RIGHT - 30 - TopBottomSpacing: 4 - ItemSpacing: 4 - Height: 191 + Width: PARENT_RIGHT + Height: PARENT_BOTTOM - 65 + TopBottomSpacing: 5 + ItemSpacing: 5 Children: - ScrollItem@HEADER: - Width: 528 - Height: 13 - Visible: false + Container@HEADER: + Width: PARENT_RIGHT - 24 - 10 + Height: 18 Children: - Label@LABEL: - Font: TinyBold + Background@BACKGROUND: Width: PARENT_RIGHT Height: 13 + Background: separator + Label@LABEL: + Width: PARENT_RIGHT + Height: 13 + Font: TinyBold Align: Center - Container@TEMPLATES: + Container@TEMPLATE: + Width: (PARENT_RIGHT - 24) / 2 - 10 + Height: 30 + Visible: false Children: - Container@TWO_COLUMN: - Width: 262 + Label@FUNCTION: + Y: 0 - 1 + Width: PARENT_RIGHT - 90 - 5 Height: 25 - Visible: false - Children: - Label@FUNCTION: - Y: 0 - Width: PARENT_RIGHT - 85 - Height: 25 - Align: Right - Button@HOTKEY: - X: PARENT_RIGHT - WIDTH - Width: 80 - Height: 25 - Align: Left - TooltipContainer: SETTINGS_TOOLTIP_CONTAINER - Container@THREE_COLUMN: - Width: 173 + Align: Right + Button@HOTKEY: + X: PARENT_RIGHT - WIDTH + Width: 90 Height: 25 - Visible: false - Children: - Label@FUNCTION: - Y: 0 - 1 - Width: PARENT_RIGHT - 84 - Height: 25 - Align: Right - Button@HOTKEY: - X: PARENT_RIGHT - WIDTH + 1 - Width: 80 - Height: 25 - Align: Left - TooltipContainer: SETTINGS_TOOLTIP_CONTAINER + TooltipContainer: SETTINGS_TOOLTIP_CONTAINER Background@HOTKEY_DIALOG_ROOT: - X: 15 - Y: 230 - Width: PARENT_RIGHT - 30 - Height: 65 + Y: PARENT_BOTTOM - HEIGHT - 1 + Width: PARENT_RIGHT + Height: 65 + 1 Background: panel-gray Children: Label@HOTKEY_LABEL: X: 15 Y: 19 - Width: 220 - 15 - 10 + Width: 200 Height: 25 Font: Bold Align: Right HotkeyEntry@HOTKEY_ENTRY: - X: 220 + X: 15 + 200 + 5 Y: 20 - Width: 254 + Width: 220 Height: 25 Container@NOTICES: - X: 220 + X: 15 + 200 + 5 Y: 42 - Width: 254 + Width: 220 Height: 25 Children: Label@DEFAULT_NOTICE: Width: PARENT_RIGHT Height: PARENT_BOTTOM Font: Tiny - Align: Left Text: This is the default Label@ORIGINAL_NOTICE: Width: PARENT_RIGHT Height: PARENT_BOTTOM Font: Tiny - Align: Left Text: The default is "{0}" Label@DUPLICATE_NOTICE: Width: PARENT_RIGHT Height: PARENT_BOTTOM Font: Tiny - Align: Left Text: This is already used for "{0}" Button@OVERRIDE_HOTKEY_BUTTON: - X: PARENT_RIGHT - 50 - 15 - WIDTH - 20 + X: PARENT_RIGHT - 3 * WIDTH - 30 Y: 20 Width: 70 Height: 25 Text: Override + Font: Bold Button@CLEAR_HOTKEY_BUTTON: - X: PARENT_RIGHT - 25 - 15 - WIDTH - 10 + X: PARENT_RIGHT - 2 * WIDTH - 30 Y: 20 - Width: 25 + Width: 65 Height: 25 + Text: Clear + Font: Bold TooltipText: Unbind the hotkey TooltipContainer: SETTINGS_TOOLTIP_CONTAINER TooltipTemplate: SIMPLE_TOOLTIP - Children: - Image: - ImageCollection: lobby-bits - ImageName: kick - X: 7 - Y: 8 - IgnoreMouseOver: True Button@RESET_HOTKEY_BUTTON: - X: PARENT_RIGHT - WIDTH - 15 + X: PARENT_RIGHT - WIDTH - 20 Y: 20 - Width: 25 + Width: 65 Height: 25 + Text: Reset + Font: Bold TooltipText: Reset to default TooltipContainer: SETTINGS_TOOLTIP_CONTAINER TooltipTemplate: SIMPLE_TOOLTIP - Children: - Image@IMAGE_RELOAD: - X: 5 - Y: 5 - Width: 16 - Height: 16 - ImageCollection: reload-icon - ImageName: enabled - IgnoreMouseOver: True diff --git a/mods/cnc/chrome/settings-input.yaml b/mods/cnc/chrome/settings-input.yaml index cc428950df..837b96a4e6 100644 --- a/mods/cnc/chrome/settings-input.yaml +++ b/mods/cnc/chrome/settings-input.yaml @@ -3,217 +3,266 @@ Container@INPUT_PANEL: Width: PARENT_RIGHT Height: PARENT_BOTTOM Children: - Label@INPUT_TITLE: - Y: 21 + ScrollPanel@SETTINGS_SCROLLPANEL: Width: PARENT_RIGHT - Font: Bold - Text: Input - Align: Center - Label@MOUSE_CONTROL_LABEL: - X: 15 - Y: 40 - Width: 110 - Height: 25 - Font: Regular - Text: Control Scheme: - Align: Right - DropDownButton@MOUSE_CONTROL_DROPDOWN: - X: 130 - Y: 40 - Width: 150 - Height: 25 - Font: Regular - Container@MOUSE_CONTROL_DESC_CLASSIC: - X: 25 - Y: 70 - Width: 300 + Height: PARENT_BOTTOM + CollapseHiddenChildren: True + TopBottomSpacing: 5 + ItemSpacing: 10 Children: - LabelWithHighlight@DESC_SELECTION: - Height: 16 - Font: Small - Text: - Select units using the {Left} mouse button - LabelWithHighlight@DESC_COMMANDS: - Y: 17 - Height: 16 - Font: Small - Text: - Command units using the {Left} mouse button - LabelWithHighlight@DESC_BUILDIGS: - Y: 34 - Height: 16 - Font: Small - Text: - Place structures using the {Left} mouse button - LabelWithHighlight@DESC_SUPPORT: - Y: 51 - Height: 16 - Font: Small - Text: - Target support powers using the {Left} mouse button - LabelWithHighlight@DESC_ZOOM: - Y: 68 - Height: 16 - Font: Small - Text: - Zoom the battlefield using the {Scroll Wheel} - LabelWithHighlight@DESC_ZOOM_MODIFIER: - Y: 68 - Height: 16 - Font: Small - Text: - Zoom the battlefield using {MODIFIER + Scroll Wheel} - LabelWithHighlight@DESC_SCROLL_RIGHT: - Y: 85 - Height: 16 - Font: Small - Text: - Pan the battlefield using the {Right} mouse button - LabelWithHighlight@DESC_SCROLL_MIDDLE: - Y: 85 - Height: 16 - Font: Small - Text: - Pan the battlefield using the {Middle} mouse button - Label@DESC_EDGESCROLL: - X: 9 - Y: 102 - Height: 16 - Font: Small - Text: or by moving the cursor to the edge of the screen - Container@MOUSE_CONTROL_DESC_MODERN: - X: 25 - Y: 70 - Width: 300 - Children: - LabelWithHighlight@DESC_SELECTION: - Height: 16 - Font: Small - Text: - Select units using the {Left} mouse button - LabelWithHighlight@DESC_COMMANDS: - Y: 17 - Height: 16 - Font: Small - Text: - Command units using the {Right} mouse button - LabelWithHighlight@DESC_BUILDIGS: - Y: 34 - Height: 16 - Font: Small - Text: - Place structures using the {Left} mouse button - LabelWithHighlight@DESC_SUPPORT: - Y: 51 - Height: 16 - Font: Small - Text: - Target support powers using the {Left} mouse button - LabelWithHighlight@DESC_ZOOM: - Y: 68 - Height: 16 - Font: Small - Text: - Zoom the battlefield using the {Scroll Wheel} - LabelWithHighlight@DESC_ZOOM_MODIFIER: - Y: 68 - Height: 16 - Font: Small - Text: - Zoom the battlefield using {MODIFIER + Scroll Wheel} - LabelWithHighlight@DESC_SCROLL_RIGHT: - Y: 85 - Height: 16 - Font: Small - Text: - Pan the battlefield using the {Right} mouse button - LabelWithHighlight@DESC_SCROLL_MIDDLE: - Y: 85 - Height: 16 - Font: Small - Text: - Pan the battlefield using the {Middle} mouse button - Label@DESC_EDGESCROLL: - X: 9 - Y: 102 - Height: 16 - Font: Small - Text: or by moving the cursor to the edge of the screen - Label@MOUSE_SCROLL_TYPE_LABEL: - X: 15 - Y: 210 - Width: 110 - Height: 25 - Font: Regular - Text: Pan Behaviour: - Align: Right - DropDownButton@MOUSE_SCROLL_TYPE_DROPDOWN: - X: 130 - Y: 210 - Width: 150 - Height: 25 - Font: Regular - Checkbox@LOCKMOUSE_CHECKBOX: - X: 15 - Y: 243 - Width: 190 - Height: 20 - Font: Regular - Text: Lock Mouse to Window - Label@ZOOM_MODIFIER_LABEL: - X: 350 - Y: 70 - Width: 70 - Height: 25 - Font: Regular - Text: Zoom Modifier: - Align: Right - DropDownButton@ZOOM_MODIFIER: - X: 425 - Y: 70 - Width: 150 - Height: 25 - Font: Regular - Checkbox@EDGESCROLL_CHECKBOX: - X: 360 - Y: 103 - Width: 180 - Height: 20 - Font: Regular - Text: Screen Edge Panning - Checkbox@ALTERNATE_SCROLL_CHECKBOX: - X: 360 - Y: 133 - Width: 180 - Height: 20 - Font: Regular - Text: Alternate Mouse Panning - Label@SCROLL_SPEED_LABEL: - X: 310 - Y: 210 - Width: 100 - Height: 25 - Text: Pan Speed: - Align: Right - Slider@SCROLLSPEED_SLIDER: - X: 415 - Y: 215 - Width: 160 - Height: 20 - Ticks: 5 - MinimumValue: 10 - MaximumValue: 50 - Label@ZOOM_SPEED_LABEL: - X: 310 - Y: 240 - Width: 100 - Height: 25 - Text: Zoom Speed: - Align: Right - ExponentialSlider@ZOOMSPEED_SLIDER: - X: 415 - Y: 245 - Width: 160 - Height: 20 - Ticks: 5 - MinimumValue: 0.01 - MaximumValue: 0.4 - Label@UI_SCROLL_SPEED_LABEL: - X: 310 - Y: 270 - Width: 100 - Height: 25 - Text: UI Scroll Speed: - Align: Right - Slider@UI_SCROLLSPEED_SLIDER: - X: 415 - Y: 275 - Width: 160 - Height: 20 - Ticks: 5 - MinimumValue: 1 - MaximumValue: 100 + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Input + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@MOUSE_CONTROL_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@MOUSE_CONTROL_LABEL: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Control Scheme: + DropDownButton@MOUSE_CONTROL_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@ZOOM_MODIFIER_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@ZOOM_MODIFIER_LABEL: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Zoom Modifier: + DropDownButton@ZOOM_MODIFIER: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@MOUSE_CONTROL_DESC_CLASSIC: + X: 10 + Y: 55 + Width: PARENT_RIGHT + Children: + LabelWithHighlight@DESC_SELECTION: + Height: 16 + Font: Small + Text: - Select units using the {Left} mouse button + LabelWithHighlight@DESC_COMMANDS: + Y: 17 + Height: 16 + Font: Small + Text: - Command units using the {Left} mouse button + LabelWithHighlight@DESC_BUILDIGS: + Y: 34 + Height: 16 + Font: Small + Text: - Place structures using the {Left} mouse button + LabelWithHighlight@DESC_SUPPORT: + Y: 51 + Height: 16 + Font: Small + Text: - Target support powers using the {Left} mouse button + LabelWithHighlight@DESC_ZOOM: + Y: 68 + Height: 16 + Font: Small + Text: - Zoom the battlefield using the {Scroll Wheel} + LabelWithHighlight@DESC_ZOOM_MODIFIER: + Y: 68 + Height: 16 + Font: Small + Text: - Zoom the battlefield using {MODIFIER + Scroll Wheel} + LabelWithHighlight@DESC_SCROLL_RIGHT: + Y: 85 + Height: 16 + Font: Small + Text: - Pan the battlefield using the {Right} mouse button + LabelWithHighlight@DESC_SCROLL_MIDDLE: + Y: 85 + Height: 16 + Font: Small + Text: - Pan the battlefield using the {Middle} mouse button + Label@DESC_EDGESCROLL: + X: 9 + Y: 102 + Height: 16 + Font: Small + Text: or by moving the cursor to the edge of the screen + Container@MOUSE_CONTROL_DESC_MODERN: + X: 10 + Y: 55 + Width: PARENT_RIGHT / 2 - 20 + Children: + LabelWithHighlight@DESC_SELECTION: + Height: 16 + Font: Small + Text: - Select units using the {Left} mouse button + LabelWithHighlight@DESC_COMMANDS: + Y: 17 + Height: 16 + Font: Small + Text: - Command units using the {Right} mouse button + LabelWithHighlight@DESC_BUILDIGS: + Y: 34 + Height: 16 + Font: Small + Text: - Place structures using the {Left} mouse button + LabelWithHighlight@DESC_SUPPORT: + Y: 51 + Height: 16 + Font: Small + Text: - Target support powers using the {Left} mouse button + LabelWithHighlight@DESC_ZOOM: + Y: 68 + Height: 16 + Font: Small + Text: - Zoom the battlefield using the {Scroll Wheel} + LabelWithHighlight@DESC_ZOOM_MODIFIER: + Y: 68 + Height: 16 + Font: Small + Text: - Zoom the battlefield using {MODIFIER + Scroll Wheel} + LabelWithHighlight@DESC_SCROLL_RIGHT: + Y: 85 + Height: 16 + Font: Small + Text: - Pan the battlefield using the {Right} mouse button + LabelWithHighlight@DESC_SCROLL_MIDDLE: + Y: 85 + Height: 16 + Font: Small + Text: - Pan the battlefield using the {Middle} mouse button + Label@DESC_EDGESCROLL: + X: 9 + Y: 102 + Height: 16 + Font: Small + Text: or by moving the cursor to the edge of the screen + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 20 + Children: + Container@EDGESCROLL_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@EDGESCROLL_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Screen Edge Panning + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 20 + Children: + Container@ALTERNATE_SCROLL_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@ALTERNATE_SCROLL_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Alternate Mouse Panning + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 20 + Children: + Container@LOCKMOUSE_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@LOCKMOUSE_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Lock Mouse to Window + Container@SPACER: + Height: 30 + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@MOUSE_SCROLL_TYPE_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@MOUSE_SCROLL_TYPE_LABEL: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Pan Behaviour: + DropDownButton@MOUSE_SCROLL_TYPE_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@SCROLLSPEED_SLIDER_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@SCROLL_SPEED_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Pan Speed: + Slider@SCROLLSPEED_SLIDER: + Y: 25 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + MinimumValue: 10 + MaximumValue: 50 + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@ZOOMSPEED_SLIDER_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@ZOOM_SPEED_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Zoom Speed: + ExponentialSlider@ZOOMSPEED_SLIDER: + Y: 25 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + MinimumValue: 0.01 + MaximumValue: 0.4 + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@UI_SCROLLSPEED_SLIDER_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@UI_SCROLL_SPEED_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: UI Scroll Speed: + Slider@UI_SCROLLSPEED_SLIDER: + Y: 25 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + MinimumValue: 1 + MaximumValue: 100 diff --git a/mods/cnc/chrome/settings.yaml b/mods/cnc/chrome/settings.yaml index e235f00233..ba96bd366e 100644 --- a/mods/cnc/chrome/settings.yaml +++ b/mods/cnc/chrome/settings.yaml @@ -1,6 +1,6 @@ Container@SETTINGS_PANEL: Logic: SettingsLogic - ButtonStride: 120, 0 + ButtonStride: 0, 45 Panels: DISPLAY_PANEL: Display AUDIO_PANEL: Audio @@ -9,40 +9,42 @@ Container@SETTINGS_PANEL: ADVANCED_PANEL: Advanced X: (WINDOW_RIGHT - WIDTH) / 2 Y: (WINDOW_BOTTOM - HEIGHT) / 2 - Width: 590 - Height: 328 + Width: 640 + Height: 435 Children: Label@TITLE: - Width: 590 + Width: PARENT_RIGHT Y: 0 - 22 Font: BigBold Contrast: true Align: Center Text: Settings - Container@TAB_CONTAINER: - Children: - Button@BUTTON_TEMPLATE: - Width: 110 - Height: 35 - Background@PANEL_CONTAINER: - Y: 34 - Width: 590 - Height: 310 - Background: panel-black - Children: - Container@PANEL_TEMPLATE: - Width: PARENT_RIGHT - Height: PARENT_BOTTOM Button@BACK_BUTTON: Key: escape - Y: 343 + Y: PARENT_BOTTOM - 1 Width: 140 Height: 35 Text: Back Button@RESET_BUTTON: X: 150 - Y: 343 + Y: PARENT_BOTTOM - 1 Width: 140 Height: 35 Text: Reset + Container@SETTINGS_TAB_CONTAINER: + X: 0 - 140 + 1 + Children: + Button@BUTTON_TEMPLATE: + Width: 140 + Height: 35 + Background@PANEL_CONTAINER: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Background: panel-black + Children: + Container@PANEL_TEMPLATE: + X: 15 + Y: 15 + Width: PARENT_RIGHT - 30 + Height: PARENT_BOTTOM - 30 TooltipContainer@SETTINGS_TOOLTIP_CONTAINER: diff --git a/mods/common/chrome/settings-advanced.yaml b/mods/common/chrome/settings-advanced.yaml index 43f5d87d58..5e96736117 100644 --- a/mods/common/chrome/settings-advanced.yaml +++ b/mods/common/chrome/settings-advanced.yaml @@ -1,124 +1,195 @@ Container@ADVANCED_PANEL: Logic: AdvancedSettingsLogic - Width: PARENT_RIGHT - 10 + Width: PARENT_RIGHT Height: PARENT_BOTTOM Children: - Checkbox@NAT_DISCOVERY: - X: 15 - Y: 43 - Width: 200 - Height: 20 - Font: Regular - Text: Enable UPnP/NAT-PMP Discovery - Checkbox@PERFTEXT_CHECKBOX: - X: 15 - Y: 73 - Width: 300 - Height: 20 - Font: Regular - Text: Show Performance Text - Checkbox@PERFGRAPH_CHECKBOX: - X: 15 - Y: 103 - Width: 300 - Height: 20 - Font: Regular - Text: Show Performance Graph - Checkbox@FETCH_NEWS_CHECKBOX: - X: 310 - Y: 43 - Width: 300 - Height: 20 - Font: Regular - Text: Fetch Community News - Checkbox@CHECK_VERSION_CHECKBOX: - X: 310 - Y: 73 - Width: 300 - Height: 20 - Font: Regular - Text: Check for Updates - Checkbox@SENDSYSINFO_CHECKBOX: - X: 310 - Y: 103 - Width: 300 - Height: 20 - Font: Regular - Text: Send System Information - Label@SENDSYSINFO_DESC: - X: 310 - Y: 118 - Width: 255 - Height: 30 - Font: Tiny - WordWrap: True - Text: Your Operating System, OpenGL and .NET runtime versions, and language settings will be sent along with an anonymous ID to help prioritize future development. - Label@DEBUG_TITLE: - Y: 190 - Width: PARENT_RIGHT - Font: Bold - Text: Developer - Align: Center - Container@DEBUG_HIDDEN_LABEL: - Y: 245 - Width: PARENT_RIGHT - Children: - Label@A: - Width: PARENT_RIGHT - Height: 20 - Font: Regular - Text: Additional developer-specific options can be enabled via the - Align: Center - Label@B: - Y: 20 - Width: PARENT_RIGHT - Height: 20 - Font: Regular - Text: Debug.DisplayDeveloperSettings setting or launch flag - Align: Center - Container@DEBUG_OPTIONS: + ScrollPanel@SETTINGS_SCROLLPANEL: Width: PARENT_RIGHT Height: PARENT_BOTTOM + CollapseHiddenChildren: True + TopBottomSpacing: 5 + ItemSpacing: 10 Children: - Checkbox@BOTDEBUG_CHECKBOX: - X: 15 - Y: 213 - Width: 300 + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Advanced + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Show Bot Debug Messages - Checkbox@CHECKUNSYNCED_CHECKBOX: - X: 15 - Y: 243 - Width: 300 + Children: + Container@NAT_DISCOVERY_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@NAT_DISCOVERY: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Enable UPnP/NAT-PMP Discovery + Container@FETCH_NEWS_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@FETCH_NEWS_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Fetch Community News + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Check Sync around Unsynced Code - Checkbox@CHECKBOTSYNC_CHECKBOX: - X: 15 - Y: 273 - Width: 300 + Children: + Container@PERFGRAPH_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@PERFGRAPH_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Show Performance Graph + Container@CHECK_VERSION_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@CHECK_VERSION_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Check for Updates + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@PERFTEXT_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@PERFTEXT_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Show Performance Text + Container@SENDSYSINFO_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@SENDSYSINFO_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Send System Information + Label@SENDSYSINFO_DESC: + Y: 15 + Width: PARENT_RIGHT + Height: 30 + Font: Tiny + WordWrap: True + Text: Your Operating System, OpenGL and .NET runtime versions, and language settings will be sent along with an anonymous ID to help prioritize future development. + Container@SPACER: + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Developer + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 40 + Children: + Container@DEBUG_HIDDEN_CONTAINER: + X: 10 + Width: PARENT_RIGHT - 10 + Children: + Label@A: + Width: PARENT_RIGHT + Height: 20 + Text: Additional developer-specific options can be enabled via the + Align: Center + Label@B: + Y: 20 + Width: PARENT_RIGHT + Height: 20 + Text: Debug.DisplayDeveloperSettings setting or launch flag + Align: Center + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Check Sync around BotModule Code - Checkbox@LUADEBUG_CHECKBOX: - X: 310 - Y: 213 - Width: 300 + Children: + Container@BOTDEBUG_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@BOTDEBUG_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Show Bot Debug Messages + Container@CHECKBOTSYNC_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@CHECKBOTSYNC_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Check Sync around BotModule Code + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Show Map Debug Messages - Checkbox@REPLAY_COMMANDS_CHECKBOX: - X: 310 - Y: 243 - Width: 300 + Children: + Container@LUADEBUG_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@LUADEBUG_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Show Map Debug Messages + Container@CHECKUNSYNCED_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@CHECKUNSYNCED_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Check Sync around Unsynced Code + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Enable Debug Commands in Replays - Checkbox@PERFLOGGING_CHECKBOX: - X: 310 - Y: 273 - Width: 300 - Height: 20 - Font: Regular - Text: Enable Tick Performance Logging + Children: + Container@REPLAY_COMMANDS_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@REPLAY_COMMANDS_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Enable Debug Commands in Replays + Container@PERFLOGGING_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@PERFLOGGING_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Enable Tick Performance Logging diff --git a/mods/common/chrome/settings-audio.yaml b/mods/common/chrome/settings-audio.yaml index e2b12c25c3..cf41b30521 100644 --- a/mods/common/chrome/settings-audio.yaml +++ b/mods/common/chrome/settings-audio.yaml @@ -1,93 +1,142 @@ Container@AUDIO_PANEL: Logic: AudioSettingsLogic - Width: PARENT_RIGHT - 10 + Width: PARENT_RIGHT Height: PARENT_BOTTOM Children: - Label@NO_AUDIO_DEVICE: - Y: 50 - Width: PARENT_RIGHT - Align: Center - Text: Audio controls require an active sound device - Container@AUDIO_CONTROLS: + ScrollPanel@SETTINGS_SCROLLPANEL: Width: PARENT_RIGHT Height: PARENT_BOTTOM + CollapseHiddenChildren: True + TopBottomSpacing: 5 + ItemSpacing: 10 Children: - Checkbox@CASH_TICKS: - X: 15 - Y: 43 - Width: 200 + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Audio + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Cash Ticks - Checkbox@MUTE_SOUND: - X: 15 - Y: 73 - Width: 200 + Children: + Container@NO_AUDIO_DEVICE_CONTAINER: + X: 10 + Width: PARENT_RIGHT - 10 + Children: + Label@NO_AUDIO_DEVICE: + Width: PARENT_RIGHT + Height: 20 + Align: Center + Text: Audio controls require an active sound device + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@CASH_TICKS_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@CASH_TICKS: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Cash Ticks + Container@MUTE_SOUND_CONTAINER: + X: 10 + Y: 30 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@MUTE_SOUND: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Mute Sound + Container@SOUND_VOLUME_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@SOUND_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Sound Volume: + ExponentialSlider@SOUND_VOLUME: + Y: 30 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@MUTE_BACKGROUND_MUSIC_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@MUTE_BACKGROUND_MUSIC: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Mute Background Music + Container@MUSIC_VOLUME_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@MUSIC_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Music Volume: + ExponentialSlider@MUSIC_VOLUME: + Y: 25 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@AUDIO_DEVICE_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@AUDIO_DEVICE_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Audio Device: + DropDownButton@AUDIO_DEVICE: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Container@VIDEO_VOLUME_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@VIDEO_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Video Volume: + ExponentialSlider@VIDEO_VOLUME: + Y: 25 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + Container@ROW: + Width: PARENT_RIGHT - 24 Height: 20 - Font: Regular - Text: Mute Sound - Checkbox@MUTE_BACKGROUND_MUSIC: - X: 15 - Y: 103 - Width: 200 - Height: 20 - Font: Regular - Text: Mute Background Music - Label@SOUND_LABEL: - X: PARENT_RIGHT - WIDTH - 270 - Y: 40 - Width: 95 - Height: 25 - Align: Right - Text: Sound Volume: - ExponentialSlider@SOUND_VOLUME: - X: PARENT_RIGHT - WIDTH - 15 - Y: 45 - Width: 250 - Height: 20 - Ticks: 7 - Label@MUSIC_LABEL: - X: PARENT_RIGHT - WIDTH - 270 - Y: 70 - Width: 95 - Height: 25 - Align: Right - Text: Music Volume: - ExponentialSlider@MUSIC_VOLUME: - X: PARENT_RIGHT - WIDTH - 15 - Y: 75 - Width: 250 - Height: 20 - Ticks: 7 - Label@VIDEO_LABEL: - X: PARENT_RIGHT - WIDTH - 270 - Y: 100 - Width: 95 - Height: 25 - Align: Right - Text: Video Volume: - ExponentialSlider@VIDEO_VOLUME: - X: PARENT_RIGHT - WIDTH - 15 - Y: 105 - Width: 250 - Height: 20 - Ticks: 7 - Label@AUDIO_DEVICE_LABEL: - X: 190 - WIDTH - 5 - Y: 240 - Width: 75 - Height: 25 - Align: Right - Text: Audio Device: - DropDownButton@AUDIO_DEVICE: - X: 190 - Y: 240 - Width: 300 - Height: 25 - Label@AUDIO_DEVICE_DESC: - Y: 261 - Width: PARENT_RIGHT - Height: 25 - Font: Tiny - Align: Center - Text: Device changes will be applied after the game is restarted + Children: + Container@RESTART_REQUIRED_CONTAINER: + X: 10 + Width: PARENT_RIGHT - 10 + Children: + Label@RESTART_REQUIRED_DESC: + Width: PARENT_RIGHT + Height: 20 + Font: Tiny + Align: Center + Text: Device changes will be applied after the game is restarted diff --git a/mods/common/chrome/settings-display.yaml b/mods/common/chrome/settings-display.yaml index 8f44ef10bb..7431da7624 100644 --- a/mods/common/chrome/settings-display.yaml +++ b/mods/common/chrome/settings-display.yaml @@ -1,224 +1,317 @@ Container@DISPLAY_PANEL: Logic: DisplaySettingsLogic - Width: PARENT_RIGHT - 10 - Height: PARENT_BOTTOM - 50 + Width: PARENT_RIGHT + Height: PARENT_BOTTOM Children: - Label@PLAYER: - Text: Player Name: - X: 15 - Y: 40 - Width: 120 - Height: 25 - Align: Right - TextField@PLAYERNAME: - Text: Name - X: 140 - Y: 40 - Width: 160 - Height: 25 - MaxLength: 16 - Label@COLOR: - X: 265 - Y: 40 - Width: 145 - Height: 25 - Text: Preferred Color: - Align: Right - DropDownButton@PLAYERCOLOR: - X: 415 - Y: 40 - Width: 75 - Height: 25 - IgnoreChildMouseOver: true - PanelAlign: Right + ScrollPanel@SETTINGS_SCROLLPANEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + CollapseHiddenChildren: True + TopBottomSpacing: 5 + ItemSpacing: 10 Children: - ColorBlock@COLORBLOCK: + Background@SECTION_HEADER: X: 5 - Y: 6 - Width: PARENT_RIGHT - 35 - Height: PARENT_BOTTOM - 12 - Label@BATTLEFIELD_CAMERA: - X: 15 - Y: 70 - Width: 120 - Height: 25 - Text: Battlefield Camera: - Align: Right - DropDownButton@BATTLEFIELD_CAMERA_DROPDOWN: - X: 140 - Y: 70 - Width: 160 - Height: 25 - Font: Regular - Label@TARGET_LINES: - X: 265 - Y: 70 - Width: 145 - Height: 25 - Text: Target Lines: - Align: Right - DropDownButton@TARGET_LINES_DROPDOWN: - X: 415 - Y: 70 - Width: 160 - Height: 25 - Font: Regular - Label@UI_SCALE: - X: 15 - Y: 100 - Width: 120 - Height: 25 - Text: UI Scale: - Align: Right - DropDownButton@UI_SCALE_DROPDOWN: - X: 140 - Y: 100 - Width: 160 - Height: 25 - Font: Regular - Label@STATUS_BARS: - X: 265 - Y: 100 - Width: 145 - Height: 25 - Text: Status Bars: - Align: Right - DropDownButton@STATUS_BAR_DROPDOWN: - X: 415 - Y: 100 - Width: 160 - Height: 25 - Font: Regular - Checkbox@CURSORDOUBLE_CHECKBOX: - X: 15 - Y: 133 - Width: 200 - Height: 20 - Font: Regular - Text: Increase Cursor Size - Checkbox@PLAYER_STANCE_COLORS_CHECKBOX: - X: 195 - Y: 133 - Width: 200 - Height: 20 - Font: Regular - Text: Player Stance Colors - Checkbox@PAUSE_SHELLMAP_CHECKBOX: - X: 375 - Y: 133 - Width: 200 - Height: 20 - Font: Regular - Text: Pause Menu Background - Checkbox@UI_FEEDBACK_CHECKBOX: - X: 15 - Y: 163 - Width: 200 - Height: 20 - Font: Regular - Text: UI Feedback in Transients Panel - Label@VIDEO_TITLE: - Y: 190 - Width: PARENT_RIGHT - Font: Bold - Text: Video - Align: Center - Label@VIDEO_MODE: - X: 15 - Y: 210 - Width: 120 - Height: 25 - Align: Right - Text: Video Mode: - DropDownButton@MODE_DROPDOWN: - X: 140 - Y: 210 - Width: 160 - Height: 25 - Font: Regular - Text: Windowed - Checkbox@VSYNC_CHECKBOX: - X: 310 - Y: 213 - Width: 200 - Height: 20 - Font: Regular - Text: Enable VSync - Container@WINDOW_RESOLUTION: - Y: 240 - Children: - Label@WINDOW_SIZE: - X: 15 - Height: 25 - Width: 120 - Align: Right - Text: Window Size: - TextField@WINDOW_WIDTH: - X: 140 - Width: 55 - Height: 25 - MaxLength: 5 - Type: Integer - Label@X: - Text: x - Font: Bold - X: 195 - Height: 25 - Width: 15 - Align: Center - TextField@WINDOW_HEIGHT: - X: 210 - Width: 55 - Height: 25 - MaxLength: 5 - Type: Integer - Container@DISPLAY_SELECTION: - Y: 240 - Children: - Label@DISPLAY_SELECTION_LABEL: - X: 15 - Height: 25 - Width: 120 - Align: Right - Text: Select Display: - DropDownButton@DISPLAY_SELECTION_DROPDOWN: - X: 140 - Width: 160 - Height: 25 - Font: Regular - Text: Standard - Checkbox@FRAME_LIMIT_CHECKBOX: - X: 310 - Y: 243 - Width: 200 - Height: 20 - Font: Regular - Text: Enable Frame Limiter - Slider@FRAME_LIMIT_SLIDER: - X: 340 - Y: 265 - Width: 200 - Height: 20 - Ticks: 20 - MinimumValue: 50 - MaximumValue: 240 - Label@GL_PROFILE: - X: 15 - Y: 270 - Width: 120 - Height: 25 - Align: Right - Text: OpenGL Profile: - DropDownButton@GL_PROFILE_DROPDOWN: - X: 140 - Y: 270 - Width: 160 - Height: 25 - Font: Regular - Label@RESTART_REQUIRED_DESC: - Y: PARENT_BOTTOM - 40 - Width: PARENT_RIGHT - Height: 15 - Font: Tiny - Text: Display and OpenGL changes require restart - Align: Center + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Profile + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@PLAYER_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@PLAYER: + Width: PARENT_RIGHT + Height: 20 + Text: Player Name: + TextField@PLAYERNAME: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + MaxLength: 16 + Text: Name + Container@PLAYERCOLOR_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@COLOR: + Width: PARENT_RIGHT + Height: 20 + Text: Preferred Color: + DropDownButton@PLAYERCOLOR: + Y: 25 + Width: 75 + Height: 25 + IgnoreChildMouseOver: true + PanelAlign: Right + Children: + ColorBlock@COLORBLOCK: + X: 5 + Y: 6 + Width: PARENT_RIGHT - 35 + Height: PARENT_BOTTOM - 12 + Container@SPACER: + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Display + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@BATTLEFIELD_CAMERA_DROPDOWN_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@BATTLEFIELD_CAMERA: + Width: PARENT_RIGHT + Height: 20 + Text: Battlefield Camera: + DropDownButton@BATTLEFIELD_CAMERA_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@TARGET_LINES_DROPDOWN_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@TARGET_LINES: + Width: PARENT_RIGHT + Height: 20 + Text: Target Lines: + DropDownButton@TARGET_LINES_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@UI_SCALE_DROPDOWN_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@UI_SCALE: + Width: PARENT_RIGHT + Height: 20 + Text: UI Scale: + DropDownButton@UI_SCALE_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@STATUS_BAR_DROPDOWN_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@STATUS_BARS: + Width: PARENT_RIGHT + Height: 20 + Text: Status Bars: + DropDownButton@STATUS_BAR_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 20 + Children: + Container@CURSORDOUBLE_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@CURSORDOUBLE_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Increase Cursor Size + Container@PLAYER_STANCE_COLORS_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@PLAYER_STANCE_COLORS_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Player Stance Colors + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 20 + Children: + Container@PAUSE_SHELLMAP_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 10 + Children: + Checkbox@PAUSE_SHELLMAP_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Pause Menu Background + Container@UI_FEEDBACK_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@UI_FEEDBACK_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: UI Feedback in Transients Panel + Container@SPACER: + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Video + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@VIDEO_MODE_DROPDOWN_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@VIDEO_MODE: + Width: PARENT_RIGHT + Height: 20 + Text: Video Mode: + DropDownButton@MODE_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Text: Windowed + Container@WINDOW_RESOLUTION_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@WINDOW_SIZE: + Width: PARENT_RIGHT + Height: 20 + Text: Window Size: + TextField@WINDOW_WIDTH: + Y: 25 + Width: 55 + Height: 25 + MaxLength: 5 + Type: Integer + Label@X: + X: 55 + Y: 25 + Text: x + Font: Bold + Height: 25 + Width: 15 + Align: Center + TextField@WINDOW_HEIGHT: + X: 70 + Y: 25 + Width: 55 + Height: 25 + MaxLength: 5 + Type: Integer + Container@DISPLAY_SELECTION_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@DISPLAY_SELECTION_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Select Display: + DropDownButton@DISPLAY_SELECTION_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Text: Standard + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@FRAME_LIMIT_CHECKBOX_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@FRAME_LIMIT_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Enable Frame Limiter + Container@FRAME_LIMIT_SLIDER_CONTAINER: + Width: PARENT_RIGHT / 2 - 20 + Children: + Slider@FRAME_LIMIT_SLIDER: + X: 20 + Y: 25 + Width: PARENT_RIGHT - 20 + Height: 20 + Ticks: 20 + MinimumValue: 50 + MaximumValue: 240 + Container@VSYNC_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@VSYNC_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Enable VSync + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@GL_PROFILE_DROPDOWN_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@GL_PROFILE: + Width: PARENT_RIGHT + Height: 20 + Text: OpenGL Profile: + DropDownButton@GL_PROFILE_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 30 + Children: + Container@RESTART_REQUIRED_CONTAINER: + X: 10 + Width: PARENT_RIGHT - 20 + Children: + Label@RESTART_REQUIRED_DESC: + Width: PARENT_RIGHT + Height: 20 + Font: Tiny + Text: Display and OpenGL changes require restart + Align: Center diff --git a/mods/common/chrome/settings-hotkeys.yaml b/mods/common/chrome/settings-hotkeys.yaml index 1583478f0d..537de1e3a5 100644 --- a/mods/common/chrome/settings-hotkeys.yaml +++ b/mods/common/chrome/settings-hotkeys.yaml @@ -2,140 +2,98 @@ Container@HOTKEYS_PANEL: Logic: HotkeysSettingsLogic HotkeyGroups: Game Commands: - Template: TWO_COLUMN Types: OrderGenerator, World, Menu Viewport Commands: - Template: TWO_COLUMN Types: Viewport Observer / Replay Commands: - Template: TWO_COLUMN Types: Observer, Replay Unit Commands: - Template: THREE_COLUMN Types: Unit Unit Stance Commands: - Template: TWO_COLUMN Types: Stance Production Commands: - Template: THREE_COLUMN Types: Production, ProductionSlot Support Power Commands: - Template: THREE_COLUMN Types: SupportPower Music Commands: - Template: TWO_COLUMN Types: Music Chat Commands: - Template: TWO_COLUMN Types: Chat - Width: PARENT_RIGHT - 10 + Width: PARENT_RIGHT Height: PARENT_BOTTOM Children: ScrollPanel@HOTKEY_LIST: - X: 15 - Y: 40 - Width: PARENT_RIGHT - 30 - TopBottomSpacing: 4 - ItemSpacing: 4 - Height: 190 + Width: PARENT_RIGHT + Height: PARENT_BOTTOM - 65 + TopBottomSpacing: 5 + ItemSpacing: 5 Children: - ScrollItem@HEADER: - BaseName: scrollheader - Width: 528 - Height: 13 + Container@HEADER: + Width: PARENT_RIGHT - 24 - 10 + Height: 18 + Children: + Background@BACKGROUND: + Width: PARENT_RIGHT + Height: 13 + Background: separator + Label@LABEL: + Width: PARENT_RIGHT + Height: 13 + Font: TinyBold + Align: Center + Container@TEMPLATE: + Width: (PARENT_RIGHT - 24) / 2 - 10 + Height: 30 Visible: false Children: - Label@LABEL: - Font: TinyBold - Width: PARENT_RIGHT - Height: 10 - Align: Center - ScrollItem@HEADER: - Width: 528 - Height: 13 - Visible: false - Children: - Label@LABEL: - Font: TinyBold - Width: PARENT_RIGHT - Height: 10 - Align: Center - Container@TEMPLATES: - Children: - Container@TWO_COLUMN: - Width: 262 - Height: 25 - Visible: false - Children: - Label@FUNCTION: - Y: 0 - 1 - Width: PARENT_RIGHT - 85 - Height: 25 - Align: Right - Button@HOTKEY: - X: PARENT_RIGHT - WIDTH - Width: 80 - Height: 25 - Align: Left - TooltipContainer: SETTINGS_TOOLTIP_CONTAINER - Container@THREE_COLUMN: - Width: 173 - Height: 25 - Visible: false - Children: - Label@FUNCTION: - Y: 0 - 1 - Width: PARENT_RIGHT - 84 - Height: 25 - Align: Right - Button@HOTKEY: - X: PARENT_RIGHT - WIDTH + 1 - Width: 80 - Height: 25 - Align: Left - TooltipContainer: SETTINGS_TOOLTIP_CONTAINER + Label@FUNCTION: + Y: 0 - 1 + Width: PARENT_RIGHT - 120 - 5 + Height: 25 + Align: Right + Button@HOTKEY: + X: PARENT_RIGHT - WIDTH + Width: 120 + Height: 25 + TooltipContainer: SETTINGS_TOOLTIP_CONTAINER Background@HOTKEY_DIALOG_ROOT: - X: 15 - Y: 230 - Width: PARENT_RIGHT - 30 + Y: PARENT_BOTTOM - HEIGHT + Width: PARENT_RIGHT Height: 65 Background: dialog3 Children: Label@HOTKEY_LABEL: X: 15 Y: 19 - Width: 219 - 15 - 10 + Width: 200 Height: 25 Font: Bold Align: Right HotkeyEntry@HOTKEY_ENTRY: - X: 219 + X: 15 + 200 + 5 Y: 20 - Width: 170 + Width: 300 Height: 25 Container@NOTICES: - X: 219 + X: 15 + 200 + 5 Y: 42 - Width: 170 + Width: 300 Height: 25 Children: Label@DEFAULT_NOTICE: Width: PARENT_RIGHT Height: PARENT_BOTTOM Font: Tiny - Align: Left Text: This is the default Label@ORIGINAL_NOTICE: Width: PARENT_RIGHT Height: PARENT_BOTTOM Font: Tiny - Align: Left Text: The default is "{0}" Label@DUPLICATE_NOTICE: Width: PARENT_RIGHT Height: PARENT_BOTTOM Font: Tiny - Align: Left Text: This is already used for "{0}" Button@OVERRIDE_HOTKEY_BUTTON: X: PARENT_RIGHT - 3 * WIDTH - 30 diff --git a/mods/common/chrome/settings-input.yaml b/mods/common/chrome/settings-input.yaml index c93129f2eb..837b96a4e6 100644 --- a/mods/common/chrome/settings-input.yaml +++ b/mods/common/chrome/settings-input.yaml @@ -1,213 +1,268 @@ Container@INPUT_PANEL: Logic: InputSettingsLogic - Width: PARENT_RIGHT - 10 + Width: PARENT_RIGHT Height: PARENT_BOTTOM Children: - Label@MOUSE_CONTROL_LABEL: - X: 15 - Y: 40 - Width: 110 - Height: 25 - Font: Regular - Text: Control Scheme: - Align: Right - DropDownButton@MOUSE_CONTROL_DROPDOWN: - X: 130 - Y: 40 - Width: 150 - Height: 25 - Font: Regular - Container@MOUSE_CONTROL_DESC_CLASSIC: - X: 25 - Y: 70 - Width: 300 + ScrollPanel@SETTINGS_SCROLLPANEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + CollapseHiddenChildren: True + TopBottomSpacing: 5 + ItemSpacing: 10 Children: - LabelWithHighlight@DESC_SELECTION: - Height: 16 - Font: Small - Text: - Select units using the {Left} mouse button - LabelWithHighlight@DESC_COMMANDS: - Y: 17 - Height: 16 - Font: Small - Text: - Command units using the {Left} mouse button - LabelWithHighlight@DESC_BUILDIGS: - Y: 34 - Height: 16 - Font: Small - Text: - Place structures using the {Left} mouse button - LabelWithHighlight@DESC_SUPPORT: - Y: 51 - Height: 16 - Font: Small - Text: - Target support powers using the {Left} mouse button - LabelWithHighlight@DESC_ZOOM: - Y: 68 - Height: 16 - Font: Small - Text: - Zoom the battlefield using the {Scroll Wheel} - LabelWithHighlight@DESC_ZOOM_MODIFIER: - Y: 68 - Height: 16 - Font: Small - Text: - Zoom the battlefield using {MODIFIER + Scroll Wheel} - LabelWithHighlight@DESC_SCROLL_RIGHT: - Y: 85 - Height: 16 - Font: Small - Text: - Pan the battlefield using the {Right} mouse button - LabelWithHighlight@DESC_SCROLL_MIDDLE: - Y: 85 - Height: 16 - Font: Small - Text: - Pan the battlefield using the {Middle} mouse button - Label@DESC_EDGESCROLL: - X: 9 - Y: 102 - Height: 16 - Font: Small - Text: or by moving the cursor to the edge of the screen - Container@MOUSE_CONTROL_DESC_MODERN: - X: 25 - Y: 70 - Width: 300 - Children: - LabelWithHighlight@DESC_SELECTION: - Height: 16 - Font: Small - Text: - Select units using the {Left} mouse button - LabelWithHighlight@DESC_COMMANDS: - Y: 17 - Height: 16 - Font: Small - Text: - Command units using the {Right} mouse button - LabelWithHighlight@DESC_BUILDIGS: - Y: 34 - Height: 16 - Font: Small - Text: - Place structures using the {Left} mouse button - LabelWithHighlight@DESC_SUPPORT: - Y: 51 - Height: 16 - Font: Small - Text: - Target support powers using the {Left} mouse button - LabelWithHighlight@DESC_ZOOM: - Y: 68 - Height: 16 - Font: Small - Text: - Zoom the battlefield using the {Scroll Wheel} - LabelWithHighlight@DESC_ZOOM_MODIFIER: - Y: 68 - Height: 16 - Font: Small - Text: - Zoom the battlefield using {MODIFIER + Scroll Wheel} - LabelWithHighlight@DESC_SCROLL_RIGHT: - Y: 85 - Height: 16 - Font: Small - Text: - Pan the battlefield using the {Right} mouse button - LabelWithHighlight@DESC_SCROLL_MIDDLE: - Y: 85 - Height: 16 - Font: Small - Text: - Pan the battlefield using the {Middle} mouse button - Label@DESC_EDGESCROLL: - X: 9 - Y: 102 - Height: 16 - Font: Small - Text: or by moving the cursor to the edge of the screen - Label@MOUSE_SCROLL_TYPE_LABEL: - X: 15 - Y: 210 - Width: 110 - Height: 25 - Font: Regular - Text: Pan Behaviour: - Align: Right - DropDownButton@MOUSE_SCROLL_TYPE_DROPDOWN: - X: 130 - Y: 210 - Width: 150 - Height: 25 - Font: Regular - Checkbox@LOCKMOUSE_CHECKBOX: - X: 15 - Y: 243 - Width: 190 - Height: 20 - Font: Regular - Text: Lock Mouse to Window - Label@ZOOM_MODIFIER_LABEL: - X: 350 - Y: 70 - Width: 70 - Height: 25 - Font: Regular - Text: Zoom Modifier: - Align: Right - DropDownButton@ZOOM_MODIFIER: - X: 425 - Y: 70 - Width: 150 - Height: 25 - Font: Regular - Checkbox@EDGESCROLL_CHECKBOX: - X: 360 - Y: 103 - Width: 180 - Height: 20 - Font: Regular - Text: Screen Edge Panning - Checkbox@ALTERNATE_SCROLL_CHECKBOX: - X: 360 - Y: 133 - Width: 180 - Height: 20 - Font: Regular - Text: Alternate Mouse Panning - Label@SCROLL_SPEED_LABEL: - X: 305 - Y: 210 - Width: 100 - Height: 25 - Text: Pan Speed: - Align: Right - Slider@SCROLLSPEED_SLIDER: - X: 410 - Y: 215 - Width: 165 - Height: 20 - Ticks: 5 - MinimumValue: 10 - MaximumValue: 50 - Label@ZOOM_SPEED_LABEL: - X: 305 - Y: 240 - Width: 100 - Height: 25 - Text: Zoom Speed: - Align: Right - ExponentialSlider@ZOOMSPEED_SLIDER: - X: 410 - Y: 245 - Width: 165 - Height: 20 - Ticks: 5 - MinimumValue: 0.01 - MaximumValue: 0.4 - Label@UI_SCROLL_SPEED_LABEL: - X: 305 - Y: 270 - Width: 100 - Height: 25 - Text: UI Scroll Speed: - Align: Right - Slider@UI_SCROLLSPEED_SLIDER: - X: 410 - Y: 275 - Width: 165 - Height: 20 - Ticks: 5 - MinimumValue: 1 - MaximumValue: 100 + Background@SECTION_HEADER: + X: 5 + Width: PARENT_RIGHT - 24 - 10 + Height: 13 + Background: separator + Children: + Label@LABEL: + Width: PARENT_RIGHT + Height: PARENT_BOTTOM + Font: TinyBold + Align: Center + Text: Input + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@MOUSE_CONTROL_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@MOUSE_CONTROL_LABEL: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Control Scheme: + DropDownButton@MOUSE_CONTROL_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@ZOOM_MODIFIER_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@ZOOM_MODIFIER_LABEL: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Zoom Modifier: + DropDownButton@ZOOM_MODIFIER: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@MOUSE_CONTROL_DESC_CLASSIC: + X: 10 + Y: 55 + Width: PARENT_RIGHT + Children: + LabelWithHighlight@DESC_SELECTION: + Height: 16 + Font: Small + Text: - Select units using the {Left} mouse button + LabelWithHighlight@DESC_COMMANDS: + Y: 17 + Height: 16 + Font: Small + Text: - Command units using the {Left} mouse button + LabelWithHighlight@DESC_BUILDIGS: + Y: 34 + Height: 16 + Font: Small + Text: - Place structures using the {Left} mouse button + LabelWithHighlight@DESC_SUPPORT: + Y: 51 + Height: 16 + Font: Small + Text: - Target support powers using the {Left} mouse button + LabelWithHighlight@DESC_ZOOM: + Y: 68 + Height: 16 + Font: Small + Text: - Zoom the battlefield using the {Scroll Wheel} + LabelWithHighlight@DESC_ZOOM_MODIFIER: + Y: 68 + Height: 16 + Font: Small + Text: - Zoom the battlefield using {MODIFIER + Scroll Wheel} + LabelWithHighlight@DESC_SCROLL_RIGHT: + Y: 85 + Height: 16 + Font: Small + Text: - Pan the battlefield using the {Right} mouse button + LabelWithHighlight@DESC_SCROLL_MIDDLE: + Y: 85 + Height: 16 + Font: Small + Text: - Pan the battlefield using the {Middle} mouse button + Label@DESC_EDGESCROLL: + X: 9 + Y: 102 + Height: 16 + Font: Small + Text: or by moving the cursor to the edge of the screen + Container@MOUSE_CONTROL_DESC_MODERN: + X: 10 + Y: 55 + Width: PARENT_RIGHT / 2 - 20 + Children: + LabelWithHighlight@DESC_SELECTION: + Height: 16 + Font: Small + Text: - Select units using the {Left} mouse button + LabelWithHighlight@DESC_COMMANDS: + Y: 17 + Height: 16 + Font: Small + Text: - Command units using the {Right} mouse button + LabelWithHighlight@DESC_BUILDIGS: + Y: 34 + Height: 16 + Font: Small + Text: - Place structures using the {Left} mouse button + LabelWithHighlight@DESC_SUPPORT: + Y: 51 + Height: 16 + Font: Small + Text: - Target support powers using the {Left} mouse button + LabelWithHighlight@DESC_ZOOM: + Y: 68 + Height: 16 + Font: Small + Text: - Zoom the battlefield using the {Scroll Wheel} + LabelWithHighlight@DESC_ZOOM_MODIFIER: + Y: 68 + Height: 16 + Font: Small + Text: - Zoom the battlefield using {MODIFIER + Scroll Wheel} + LabelWithHighlight@DESC_SCROLL_RIGHT: + Y: 85 + Height: 16 + Font: Small + Text: - Pan the battlefield using the {Right} mouse button + LabelWithHighlight@DESC_SCROLL_MIDDLE: + Y: 85 + Height: 16 + Font: Small + Text: - Pan the battlefield using the {Middle} mouse button + Label@DESC_EDGESCROLL: + X: 9 + Y: 102 + Height: 16 + Font: Small + Text: or by moving the cursor to the edge of the screen + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 20 + Children: + Container@EDGESCROLL_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@EDGESCROLL_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Screen Edge Panning + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 20 + Children: + Container@ALTERNATE_SCROLL_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@ALTERNATE_SCROLL_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Alternate Mouse Panning + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 20 + Children: + Container@LOCKMOUSE_CHECKBOX_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Checkbox@LOCKMOUSE_CHECKBOX: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Lock Mouse to Window + Container@SPACER: + Height: 30 + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@MOUSE_SCROLL_TYPE_CONTAINER: + X: 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@MOUSE_SCROLL_TYPE_LABEL: + Width: PARENT_RIGHT + Height: 20 + Font: Regular + Text: Pan Behaviour: + DropDownButton@MOUSE_SCROLL_TYPE_DROPDOWN: + Y: 25 + Width: PARENT_RIGHT + Height: 25 + Font: Regular + Container@SCROLLSPEED_SLIDER_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@SCROLL_SPEED_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Pan Speed: + Slider@SCROLLSPEED_SLIDER: + Y: 25 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + MinimumValue: 10 + MaximumValue: 50 + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@ZOOMSPEED_SLIDER_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@ZOOM_SPEED_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: Zoom Speed: + ExponentialSlider@ZOOMSPEED_SLIDER: + Y: 25 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + MinimumValue: 0.01 + MaximumValue: 0.4 + Container@ROW: + Width: PARENT_RIGHT - 24 + Height: 50 + Children: + Container@UI_SCROLLSPEED_SLIDER_CONTAINER: + X: PARENT_RIGHT / 2 + 10 + Width: PARENT_RIGHT / 2 - 20 + Children: + Label@UI_SCROLL_SPEED_LABEL: + Width: PARENT_RIGHT + Height: 20 + Text: UI Scroll Speed: + Slider@UI_SCROLLSPEED_SLIDER: + Y: 25 + Width: PARENT_RIGHT + Height: 20 + Ticks: 7 + MinimumValue: 1 + MaximumValue: 100 diff --git a/mods/common/chrome/settings.yaml b/mods/common/chrome/settings.yaml index 9d3c88ad55..9fab546045 100644 --- a/mods/common/chrome/settings.yaml +++ b/mods/common/chrome/settings.yaml @@ -1,6 +1,6 @@ Background@SETTINGS_PANEL: Logic: SettingsLogic - ButtonStride: 90, 0 + ButtonStride: 0, 35 Panels: DISPLAY_PANEL: Display AUDIO_PANEL: Audio @@ -9,8 +9,8 @@ Background@SETTINGS_PANEL: ADVANCED_PANEL: Advanced X: (WINDOW_RIGHT - WIDTH) / 2 Y: (WINDOW_BOTTOM - HEIGHT) / 2 - Width: 600 - Height: 400 + Width: 900 + Height: 600 Children: Label@SETTINGS_LABEL_TITLE: Y: 20 @@ -20,7 +20,7 @@ Background@SETTINGS_PANEL: Align: Center Font: Bold Button@RESET_BUTTON: - X: 20 + X: 20 + 10 + WIDTH Y: PARENT_BOTTOM - 45 Width: 160 Height: 25 @@ -34,14 +34,14 @@ Background@SETTINGS_PANEL: Height: 25 Text: Back Font: Bold - Container@TAB_CONTAINER: - X: 70 + Container@SETTINGS_TAB_CONTAINER: + X: 20 Y: 50 Width: PARENT_RIGHT Height: 25 Children: Button@BUTTON_TEMPLATE: - Width: 90 + Width: 160 Height: 25 Font: Bold Container@PANEL_CONTAINER: @@ -49,8 +49,8 @@ Background@SETTINGS_PANEL: Height: PARENT_BOTTOM Children: Container@PANEL_TEMPLATE: - X: 5 + X: 190 Y: 50 - Width: PARENT_RIGHT - Height: PARENT_BOTTOM + Width: PARENT_RIGHT - 190 - 20 + Height: PARENT_BOTTOM - 105 TooltipContainer@SETTINGS_TOOLTIP_CONTAINER: diff --git a/mods/d2k/chrome.yaml b/mods/d2k/chrome.yaml index ac8091b071..6806f74c7d 100644 --- a/mods/d2k/chrome.yaml +++ b/mods/d2k/chrome.yaml @@ -430,6 +430,9 @@ dropdown-separators: separator-pressed: 641, 2, 1, 19 separator-disabled: 513, 258, 1, 19 +separator: + Inherits: button + logos: Inherits: ^LoadScreen Regions: diff --git a/mods/ra/chrome.yaml b/mods/ra/chrome.yaml index 1021361bb8..112ff33a23 100644 --- a/mods/ra/chrome.yaml +++ b/mods/ra/chrome.yaml @@ -580,3 +580,6 @@ dropdown-separators: separator-pressed: 766, 2, 1, 19 separator-disabled: 513, 258, 1, 19 observer-separator: 769, 258, 1, 19 + +separator: + Inherits: button diff --git a/mods/ts/chrome.yaml b/mods/ts/chrome.yaml index 04802123ce..0b1da44f09 100644 --- a/mods/ts/chrome.yaml +++ b/mods/ts/chrome.yaml @@ -702,6 +702,9 @@ dropdown-separators: separator-pressed: 766, 2, 1, 19 separator-disabled: 513, 258, 1, 19 +separator: + Inherits: button + logos: Inherits: ^LoadScreen Regions: diff --git a/mods/ts/chrome/settings-hotkeys.yaml b/mods/ts/chrome/settings-hotkeys.yaml index 501571e52e..5e7cf95912 100644 --- a/mods/ts/chrome/settings-hotkeys.yaml +++ b/mods/ts/chrome/settings-hotkeys.yaml @@ -2,143 +2,100 @@ Container@HOTKEYS_PANEL: Logic: HotkeysSettingsLogic HotkeyGroups: Game Commands: - Template: TWO_COLUMN Types: OrderGenerator, World, Menu Viewport Commands: - Template: TWO_COLUMN Types: Viewport Observer / Replay Commands: - Template: TWO_COLUMN Types: Observer, Replay Unit Commands: - Template: THREE_COLUMN Types: Unit Unit Stance Commands: - Template: TWO_COLUMN Types: Stance Production Commands: - Template: THREE_COLUMN Types: Production, ProductionSlot Support Power Commands: - Template: THREE_COLUMN Types: SupportPower Music Commands: - Template: TWO_COLUMN Types: Music Chat Commands: - Template: TWO_COLUMN Types: Chat Depth Preview Debug: - Template: TWO_COLUMN Types: DepthDebug - Width: PARENT_RIGHT - 10 + Width: PARENT_RIGHT Height: PARENT_BOTTOM Children: ScrollPanel@HOTKEY_LIST: - X: 15 - Y: 40 - Width: PARENT_RIGHT - 30 - TopBottomSpacing: 4 - ItemSpacing: 4 - Height: 190 + Width: PARENT_RIGHT + Height: PARENT_BOTTOM - 65 + TopBottomSpacing: 5 + ItemSpacing: 5 Children: - ScrollItem@HEADER: - BaseName: scrollheader - Width: 528 - Height: 13 + Container@HEADER: + Width: PARENT_RIGHT - 24 - 10 + Height: 18 + Children: + Background@BACKGROUND: + Width: PARENT_RIGHT + Height: 13 + Background: separator + Label@LABEL: + Width: PARENT_RIGHT + Height: 13 + Font: TinyBold + Align: Center + Container@TEMPLATE: + Width: (PARENT_RIGHT - 24) / 2 - 10 + Height: 30 Visible: false Children: - Label@LABEL: - Font: TinyBold - Width: PARENT_RIGHT - Height: 10 - Align: Center - ScrollItem@HEADER: - Width: 528 - Height: 13 - Visible: false - Children: - Label@LABEL: - Font: TinyBold - Width: PARENT_RIGHT - Height: 10 - Align: Center - Container@TEMPLATES: - Children: - Container@TWO_COLUMN: - Width: 262 - Height: 25 - Visible: false - Children: - Label@FUNCTION: - Y: 0 - 1 - Width: PARENT_RIGHT - 85 - Height: 25 - Align: Right - Button@HOTKEY: - X: PARENT_RIGHT - WIDTH - Width: 80 - Height: 25 - Align: Left - TooltipContainer: SETTINGS_TOOLTIP_CONTAINER - Container@THREE_COLUMN: - Width: 173 - Height: 25 - Visible: false - Children: - Label@FUNCTION: - Y: 0 - 1 - Width: PARENT_RIGHT - 84 - Height: 25 - Align: Right - Button@HOTKEY: - X: PARENT_RIGHT - WIDTH + 1 - Width: 80 - Height: 25 - Align: Left - TooltipContainer: SETTINGS_TOOLTIP_CONTAINER + Label@FUNCTION: + Y: 0 - 1 + Width: PARENT_RIGHT - 120 - 5 + Height: 25 + Align: Right + Button@HOTKEY: + X: PARENT_RIGHT - WIDTH + Width: 120 + Height: 25 + TooltipContainer: SETTINGS_TOOLTIP_CONTAINER Background@HOTKEY_DIALOG_ROOT: - X: 15 - Y: 230 - Width: PARENT_RIGHT - 30 + Y: PARENT_BOTTOM - HEIGHT + Width: PARENT_RIGHT Height: 65 Background: dialog3 Children: Label@HOTKEY_LABEL: X: 15 Y: 19 - Width: 219 - 15 - 10 + Width: 200 Height: 25 Font: Bold Align: Right HotkeyEntry@HOTKEY_ENTRY: - X: 219 + X: 15 + 200 + 5 Y: 20 - Width: 170 + Width: 300 Height: 25 Container@NOTICES: - X: 219 + X: 15 + 200 + 5 Y: 42 - Width: 170 + Width: 300 Height: 25 Children: Label@DEFAULT_NOTICE: Width: PARENT_RIGHT Height: PARENT_BOTTOM Font: Tiny - Align: Left Text: This is the default Label@ORIGINAL_NOTICE: Width: PARENT_RIGHT Height: PARENT_BOTTOM Font: Tiny - Align: Left Text: The default is "{0}" Label@DUPLICATE_NOTICE: Width: PARENT_RIGHT Height: PARENT_BOTTOM Font: Tiny - Align: Left Text: This is already used for "{0}" Button@OVERRIDE_HOTKEY_BUTTON: X: PARENT_RIGHT - 3 * WIDTH - 30