initial commit
This commit is contained in:
@@ -0,0 +1,47 @@
|
||||
using System.Windows.Forms;
|
||||
using System.Windows.Forms.Integration;
|
||||
using Pulsar.Server.Controls.Wpf;
|
||||
using Pulsar.Server.Statistics;
|
||||
|
||||
#nullable enable
|
||||
|
||||
namespace Pulsar.Server.Controls
|
||||
{
|
||||
public sealed class StatsElementHost : ElementHost
|
||||
{
|
||||
private readonly StatsView _statsView;
|
||||
private ClientStatisticsSnapshot? _lastSnapshot;
|
||||
|
||||
public StatsElementHost()
|
||||
{
|
||||
_statsView = new StatsView();
|
||||
Child = _statsView;
|
||||
Dock = DockStyle.Fill;
|
||||
}
|
||||
|
||||
public void ShowLoading()
|
||||
{
|
||||
_statsView.ShowLoading();
|
||||
}
|
||||
|
||||
public void ShowError(string message)
|
||||
{
|
||||
_statsView.ShowError(message);
|
||||
}
|
||||
|
||||
public void UpdateSnapshot(ClientStatisticsSnapshot snapshot)
|
||||
{
|
||||
_lastSnapshot = snapshot;
|
||||
_statsView.UpdateSnapshot(snapshot);
|
||||
}
|
||||
|
||||
public void ApplyTheme(bool isDarkMode)
|
||||
{
|
||||
_statsView.ApplyTheme(isDarkMode);
|
||||
if (_lastSnapshot != null && !_lastSnapshot.HasError)
|
||||
{
|
||||
_statsView.UpdateSnapshot(_lastSnapshot);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user