Merge pull request #5550 from pavlos256/reload-chrome
Add developer shortcut to reload chrome files
This commit is contained in:
@@ -27,6 +27,8 @@ namespace OpenRA.Graphics
|
||||
static Dictionary<string, Sheet> cachedSheets;
|
||||
static Dictionary<string, Dictionary<string, Sprite>> cachedSprites;
|
||||
|
||||
static string[] storedChromeFiles;
|
||||
|
||||
public static void Initialize(params string[] chromeFiles)
|
||||
{
|
||||
collections = new Dictionary<string, Collection>();
|
||||
@@ -34,7 +36,13 @@ namespace OpenRA.Graphics
|
||||
cachedSprites = new Dictionary<string, Dictionary<string, Sprite>>();
|
||||
|
||||
if (chromeFiles.Length == 0)
|
||||
return;
|
||||
{
|
||||
chromeFiles = storedChromeFiles;
|
||||
if (chromeFiles == null || chromeFiles.Length == 0)
|
||||
return;
|
||||
}
|
||||
else
|
||||
storedChromeFiles = chromeFiles;
|
||||
|
||||
var chrome = chromeFiles.Select(s => MiniYaml.FromFile(s)).Aggregate(MiniYaml.MergeLiberal);
|
||||
|
||||
|
||||
@@ -250,6 +250,7 @@
|
||||
<Compile Include="GameRules\RulesetCache.cs" />
|
||||
<Compile Include="Support\MersenneTwister.cs" />
|
||||
<Compile Include="GameInformation.cs" />
|
||||
<Compile Include="Widgets\RootWidget.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="FileSystem\D2kSoundResources.cs" />
|
||||
|
||||
@@ -176,6 +176,8 @@ namespace OpenRA
|
||||
public Hotkey ObserverWorldView = new Hotkey(Keycode.EQUALS, Modifiers.None);
|
||||
|
||||
public Hotkey TogglePixelDoubleKey = new Hotkey(Keycode.PERIOD, Modifiers.None);
|
||||
|
||||
public Hotkey DevReloadChromeKey = new Hotkey(Keycode.C, Modifiers.Ctrl | Modifiers.Shift);
|
||||
}
|
||||
|
||||
public class IrcSettings
|
||||
|
||||
39
OpenRA.Game/Widgets/RootWidget.cs
Normal file
39
OpenRA.Game/Widgets/RootWidget.cs
Normal file
@@ -0,0 +1,39 @@
|
||||
#region Copyright & License Information
|
||||
/*
|
||||
* Copyright 2007-2014 The OpenRA Developers (see AUTHORS)
|
||||
* This file is part of OpenRA, which is free software. It is made
|
||||
* available to you under the terms of the GNU General Public License
|
||||
* as published by the Free Software Foundation. For more information,
|
||||
* see COPYING.
|
||||
*/
|
||||
#endregion
|
||||
|
||||
using System;
|
||||
using OpenRA.Graphics;
|
||||
|
||||
namespace OpenRA.Widgets
|
||||
{
|
||||
public class RootWidget : ContainerWidget
|
||||
{
|
||||
public RootWidget()
|
||||
{
|
||||
IgnoreMouseOver = true;
|
||||
}
|
||||
|
||||
public override bool HandleKeyPress(KeyInput e)
|
||||
{
|
||||
if (e.Event == KeyInputEvent.Down)
|
||||
{
|
||||
var hk = Hotkey.FromKeyInput(e);
|
||||
|
||||
if (hk == Game.Settings.Keys.DevReloadChromeKey)
|
||||
{
|
||||
ChromeProvider.Initialize();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
return base.HandleKeyPress(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -19,7 +19,7 @@ namespace OpenRA.Widgets
|
||||
{
|
||||
public static class Ui
|
||||
{
|
||||
public static Widget Root = new ContainerWidget();
|
||||
public static Widget Root = new RootWidget();
|
||||
|
||||
public static int LastTickTime = Environment.TickCount;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user