iFactory.Godot/BITKit/Scripts/UX/UXApplicationService.cs

40 lines
782 B
C#

using Godot;
using System;
using BITKit.Apps;
using Microsoft.Extensions.DependencyInjection;
namespace BITKit;
public partial class UXApplicationService : EntityBehaviour
{
[Export] private Label currentVersionLabel;
[Export] private Label latestVersionLabel;
[Export] private Button downloadLatestButton;
[Inject]
private IApplicationService _service;
public override void OnAwake()
{
downloadLatestButton.Hide();
downloadLatestButton.Pressed += () =>
{
OS.ShellOpen(_service.DownloadLatestUrl);
};
_service.OnClientVersionCheck += x =>
{
currentVersionLabel.Text = x;
};
_service.OnLatestVersionCheck += x =>
{
latestVersionLabel.Text = x;
};
_service.OnDetectedLatestVersion += () =>
{
downloadLatestButton.Show();
};
}
}