mirror of
https://github.com/RedWizardsLab/EchoHub.git
synced 2026-09-04 00:26:07 +02:00
- Introduced HexColorHelper for parsing hex color strings to Terminal.Gui Attributes and Colors. - Created ChannelListSource for managing and rendering a list of channels with unread counts and active indicators. - Developed UserListSource for displaying online users with per-user nickname colors. - Refactored MainWindow to utilize ChatMessageManager for handling messages and channel state. - Updated project references and removed unused content from the server project. - Adjusted tests to reflect changes in namespaces and structure.
59 lines
1.4 KiB
C#
59 lines
1.4 KiB
C#
using Terminal.Gui.App;
|
|
using Terminal.Gui.Views;
|
|
using Terminal.Gui.ViewBase;
|
|
|
|
namespace EchoHub.Client.UI.Dialogs;
|
|
|
|
public sealed class UpdateConfirmDialog
|
|
{
|
|
public static bool Show(IApplication app, string currentVersion, string newVersion)
|
|
{
|
|
var confirmed = false;
|
|
|
|
var dialog = new Dialog { Title = "Update Available", Width = 50, Height = 10 };
|
|
|
|
var messageLabel = new Label
|
|
{
|
|
Text = $"A new version of EchoHub is available.\n\n Current: {currentVersion}\n Latest: {newVersion}",
|
|
X = 1,
|
|
Y = 1,
|
|
Width = Dim.Fill(2),
|
|
Height = 4
|
|
};
|
|
|
|
var updateButton = new Button
|
|
{
|
|
Text = "Update",
|
|
IsDefault = true,
|
|
X = Pos.Center() - 10,
|
|
Y = 6
|
|
};
|
|
|
|
var cancelButton = new Button
|
|
{
|
|
Text = "Cancel",
|
|
X = Pos.Center() + 5,
|
|
Y = 6
|
|
};
|
|
|
|
updateButton.Accepting += (s, e) =>
|
|
{
|
|
confirmed = true;
|
|
e.Handled = true;
|
|
app.RequestStop();
|
|
};
|
|
|
|
cancelButton.Accepting += (s, e) =>
|
|
{
|
|
confirmed = false;
|
|
e.Handled = true;
|
|
app.RequestStop();
|
|
};
|
|
|
|
dialog.Add(messageLabel, updateButton, cancelButton);
|
|
app.Run(dialog);
|
|
|
|
return confirmed;
|
|
}
|
|
}
|