Rework global music hotkey bindings.

This commit is contained in:
Paul Chote
2017-09-07 18:20:36 +00:00
committed by reaperrr
parent 08aaa998aa
commit 7459050af9
9 changed files with 29 additions and 46 deletions

View File

@@ -559,7 +559,7 @@
<Compile Include="UtilityCommands\ExtractZeroBraneStudioLuaAPI.cs" />
<Compile Include="UtilityCommands\ExtractTraitDocsCommand.cs" />
<Compile Include="UtilityCommands\ExtractWeaponDocsCommand.cs" />
<Compile Include="Widgets\Logic\Ingame\MusicControllerLogic.cs" />
<Compile Include="Widgets\Logic\MusicHotkeyLogic.cs" />
<Compile Include="WorldExtensions.cs" />
<Compile Include="UtilityCommands\GetMapHashCommand.cs" />
<Compile Include="UtilityCommands\Glob.cs" />

View File

@@ -10,22 +10,19 @@
#endregion
using System.Collections.Generic;
using System.Linq;
using OpenRA.GameRules;
using OpenRA.Graphics;
using OpenRA.Mods.Common.Lint;
using OpenRA.Mods.Common.Traits;
using OpenRA.Widgets;
namespace OpenRA.Mods.Common.Widgets.Logic.Ingame
namespace OpenRA.Mods.Common.Widgets.Logic
{
[ChromeLogicArgsHotkeys("StopMusicKey", "PauseMusicKey", "PrevMusicKey", "NextMusicKey")]
public class MusicControllerLogic : ChromeLogic
public class MusicHotkeyLogic : ChromeLogic
{
readonly MusicPlaylist musicPlaylist;
[ObjectCreator.UseCtor]
public MusicControllerLogic(Widget widget, World world, Dictionary<string, MiniYaml> logicArgs)
public MusicHotkeyLogic(Widget widget, World world, Dictionary<string, MiniYaml> logicArgs)
{
musicPlaylist = world.WorldActor.Trait<MusicPlaylist>();
@@ -48,8 +45,8 @@ namespace OpenRA.Mods.Common.Widgets.Logic.Ingame
if (logicArgs.TryGetValue("NextMusicKey", out yaml))
nextKey = new NamedHotkey(yaml.Value, ks);
var keyhandler = widget.Get<LogicKeyListenerWidget>("MUSICCONTROLLER_KEYHANDLER");
keyhandler.OnKeyPress = e =>
var keyhandler = widget.Get<LogicKeyListenerWidget>("GLOBAL_KEYHANDLER");
keyhandler.OnKeyPress += e =>
{
if (e.Event == KeyInputEvent.Down)
{

View File

@@ -5,14 +5,6 @@ Container@NEW_MAP_BG:
Width: 300
Height: 125
Children:
Container@MUSICBUTTONS:
Logic: MusicControllerLogic
StopMusicKey: StopMusic
PauseMusicKey: PauseMusic
PrevMusicKey: PrevMusic
NextMusicKey: NextMusic
Children:
LogicKeyListener@MUSICCONTROLLER_KEYHANDLER:
Label@TITLE:
Text: New Map
Width: PARENT_RIGHT
@@ -199,6 +191,12 @@ ScrollPanel@MAP_SAVE_VISIBILITY_PANEL:
Container@EDITOR_ROOT:
Logic: LoadMapEditorLogic
Children:
LogicKeyListener@GLOBAL_KEYHANDLER:
Logic: MusicHotkeyLogic
StopMusicKey: StopMusic
PauseMusicKey: PauseMusic
PrevMusicKey: PrevMusic
NextMusicKey: NextMusic
Container@WORLD_ROOT:
Container@MENU_ROOT:
TooltipContainer@TOOLTIP_CONTAINER:

View File

@@ -1,14 +1,12 @@
Container@INGAME_ROOT:
Logic: LoadIngamePlayerOrObserverUILogic
Children:
Container@MUSICBUTTONS:
Logic: MusicControllerLogic
LogicKeyListener@GLOBAL_KEYHANDLER:
Logic: MusicHotkeyLogic
StopMusicKey: StopMusic
PauseMusicKey: PauseMusic
PrevMusicKey: PrevMusic
NextMusicKey: NextMusic
Children:
LogicKeyListener@MUSICCONTROLLER_KEYHANDLER:
Container@WORLD_ROOT:
Logic: LoadIngamePerfLogic
Children:

View File

@@ -3,14 +3,12 @@ Container@MENU_BACKGROUND:
Height: WINDOW_BOTTOM
Logic: MainMenuLogic
Children:
Container@MUSICBUTTONS:
Logic: MusicControllerLogic
LogicKeyListener@GLOBAL_KEYHANDLER:
Logic: MusicHotkeyLogic
StopMusicKey: StopMusic
PauseMusicKey: PauseMusic
PrevMusicKey: PrevMusic
NextMusicKey: NextMusic
Children:
LogicKeyListener@MUSICCONTROLLER_KEYHANDLER:
Container@SHELLMAP_DECORATIONS:
Children:
Image@NOD:

View File

@@ -5,14 +5,6 @@ Background@NEW_MAP_BG:
Width: 300
Height: 185
Children:
Container@MUSICBUTTONS:
Logic: MusicControllerLogic
StopMusicKey: StopMusic
PauseMusicKey: PauseMusic
PrevMusicKey: PrevMusic
NextMusicKey: NextMusic
Children:
LogicKeyListener@MUSICCONTROLLER_KEYHANDLER:
Label@LABEL_TITLE:
X: 0
Y: 20
@@ -190,6 +182,12 @@ ScrollPanel@MAP_SAVE_VISIBILITY_PANEL:
Container@EDITOR_ROOT:
Logic: LoadMapEditorLogic
Children:
LogicKeyListener@GLOBAL_KEYHANDLER:
Logic: MusicHotkeyLogic
StopMusicKey: StopMusic
PauseMusicKey: PauseMusic
PrevMusicKey: PrevMusic
NextMusicKey: NextMusic
Container@WORLD_ROOT:
Container@MENU_ROOT:
TooltipContainer@TOOLTIP_CONTAINER:

View File

@@ -1,14 +1,12 @@
Container@INGAME_ROOT:
Logic: LoadIngamePlayerOrObserverUILogic
Children:
Container@MUSICBUTTONS:
Logic: MusicControllerLogic
LogicKeyListener@GLOBAL_KEYHANDLER:
Logic: MusicHotkeyLogic
StopMusicKey: StopMusic
PauseMusicKey: PauseMusic
PrevMusicKey: PrevMusic
NextMusicKey: NextMusic
Children:
LogicKeyListener@MUSICCONTROLLER_KEYHANDLER:
Container@WORLD_ROOT:
Logic: LoadIngamePerfLogic
Children:

View File

@@ -1,14 +1,12 @@
Container@MAINMENU:
Logic: MainMenuLogic
Children:
Container@MUSICBUTTONS:
Logic: MusicControllerLogic
LogicKeyListener@GLOBAL_KEYHANDLER:
Logic: MusicHotkeyLogic
StopMusicKey: StopMusic
PauseMusicKey: PauseMusic
PrevMusicKey: PrevMusic
NextMusicKey: NextMusic
Children:
LogicKeyListener@MUSICCONTROLLER_KEYHANDLER:
Background@BORDER:
Background: mainmenu-border
X: 0 - 15

View File

@@ -1,14 +1,12 @@
Container@MAINMENU:
Logic: MainMenuLogic
Children:
Container@MUSICBUTTONS:
Logic: MusicControllerLogic
LogicKeyListener@GLOBAL_KEYHANDLER:
Logic: MusicHotkeyLogic
StopMusicKey: StopMusic
PauseMusicKey: PauseMusic
PrevMusicKey: PrevMusic
NextMusicKey: NextMusic
Children:
LogicKeyListener@MUSICCONTROLLER_KEYHANDLER:
Label@VERSION_LABEL:
X: WINDOW_RIGHT - 10
Y: WINDOW_BOTTOM - 20