game asset browser UI polishing
- display file extension - show total frame count - dark background for preview
This commit is contained in:
@@ -49,8 +49,8 @@ namespace OpenRA.Mods.RA.Widgets.Logic
|
||||
spriteImage = panel.Get<ShpImageWidget>("SPRITE");
|
||||
|
||||
filenameInput = panel.Get<TextFieldWidget>("FILENAME_INPUT");
|
||||
filenameInput.Text = spriteImage.Image;
|
||||
filenameInput.OnEnterKey = () => LoadAsset(filenameInput.Text);
|
||||
filenameInput.Text = spriteImage.Image+".shp";
|
||||
filenameInput.OnEnterKey = () => LoadAsset(Path.GetFileNameWithoutExtension(filenameInput.Text));
|
||||
|
||||
frameSlider = panel.Get<SliderWidget>("FRAME_SLIDER");
|
||||
frameSlider.MaximumValue = (float)spriteImage.FrameCount;
|
||||
@@ -58,7 +58,7 @@ namespace OpenRA.Mods.RA.Widgets.Logic
|
||||
frameSlider.OnChange += x => { spriteImage.Frame = (int)Math.Round(x); };
|
||||
frameSlider.GetValue = () => spriteImage.Frame;
|
||||
|
||||
panel.Get<LabelWidget>("FRAME_COUNT").GetText = () => spriteImage.Frame.ToString();
|
||||
panel.Get<LabelWidget>("FRAME_COUNT").GetText = () => "{0}/{1}".F(spriteImage.Frame, spriteImage.FrameCount);
|
||||
|
||||
playButton = panel.Get<ButtonWidget>("BUTTON_PLAY");
|
||||
playButton.OnClick = () =>
|
||||
@@ -89,7 +89,7 @@ namespace OpenRA.Mods.RA.Widgets.Logic
|
||||
|
||||
panel.Get<ButtonWidget>("LOAD_BUTTON").OnClick = () =>
|
||||
{
|
||||
LoadAsset(filenameInput.Text);
|
||||
LoadAsset(Path.GetFileNameWithoutExtension(filenameInput.Text));
|
||||
};
|
||||
|
||||
assetList = panel.Get<ScrollPanelWidget>("ASSET_LIST");
|
||||
@@ -151,23 +151,24 @@ namespace OpenRA.Mods.RA.Widgets.Logic
|
||||
static void AddAsset(ScrollPanelWidget list, string filepath, ScrollItemWidget template)
|
||||
{
|
||||
var sprite = Path.GetFileNameWithoutExtension(filepath);
|
||||
var filename = Path.GetFileName(filepath);
|
||||
|
||||
var item = ScrollItemWidget.Setup(template,
|
||||
() => spriteImage != null && spriteImage.Image == sprite,
|
||||
() => LoadAsset(sprite));
|
||||
item.Get<LabelWidget>("TITLE").GetText = () => sprite;
|
||||
item.Get<LabelWidget>("TITLE").GetText = () => filename;
|
||||
|
||||
list.AddChild(item);
|
||||
}
|
||||
|
||||
static bool LoadAsset(string filename)
|
||||
static bool LoadAsset(string sprite)
|
||||
{
|
||||
if (filename == null)
|
||||
if (sprite == null)
|
||||
return false;
|
||||
|
||||
filenameInput.Text = filename;
|
||||
filenameInput.Text = sprite+".shp";
|
||||
spriteImage.Frame = 0;
|
||||
spriteImage.Image = filename;
|
||||
spriteImage.Image = sprite;
|
||||
frameSlider.MaximumValue = (float)spriteImage.FrameCount;
|
||||
frameSlider.Ticks = spriteImage.FrameCount+1;
|
||||
return true;
|
||||
|
||||
@@ -56,16 +56,17 @@ Background@ASSETBROWSER_BG:
|
||||
Width:PARENT_RIGHT
|
||||
Height:25
|
||||
Text:Preview
|
||||
Font:Bold
|
||||
Background@SPRITE_BG:
|
||||
X:220
|
||||
Y:80
|
||||
Width:250
|
||||
Height:250
|
||||
Background:dialog3
|
||||
Background:dialog4
|
||||
Children:
|
||||
ShpImage@SPRITE:
|
||||
X:80
|
||||
Y:80
|
||||
X:4
|
||||
Y:4
|
||||
Width:246
|
||||
Height:246
|
||||
Image:mouse
|
||||
@@ -76,6 +77,7 @@ Background@ASSETBROWSER_BG:
|
||||
Width:PARENT_RIGHT
|
||||
Height:25
|
||||
Text:Actions
|
||||
Font:Bold
|
||||
Button@REMAP_BUTTON:
|
||||
X:PARENT_RIGHT - 200
|
||||
Y:PARENT_BOTTOM - 305
|
||||
@@ -185,13 +187,13 @@ Background@ASSETBROWSER_BG:
|
||||
ImageCollection:music
|
||||
ImageName:next
|
||||
Slider@FRAME_SLIDER:
|
||||
X:175
|
||||
X:160
|
||||
Y:0
|
||||
Width:410
|
||||
Height:20
|
||||
MinimumValue: 0
|
||||
Label@FRAME_COUNT:
|
||||
X:610
|
||||
X:585
|
||||
Y:0
|
||||
Width:25
|
||||
Height:25
|
||||
|
||||
Reference in New Issue
Block a user