70 lines
2.0 KiB
C#
70 lines
2.0 KiB
C#
using Content.Client.Info;
|
|
using Content.Client.Administration;
|
|
using Robust.Client.AutoGenerated;
|
|
using Robust.Client.Console;
|
|
using Robust.Client.UserInterface.Controls;
|
|
using Robust.Client.UserInterface.CustomControls;
|
|
using Robust.Client.UserInterface.XAML;
|
|
using Robust.Client.UserInterface;
|
|
using Content.Client.Links;
|
|
using Robust.Shared.GameObjects;
|
|
|
|
namespace Content.Client.Options.UI
|
|
{
|
|
[GenerateTypedNameReferences]
|
|
internal sealed partial class EscapeMenu : DefaultWindow
|
|
{
|
|
private readonly IClientConsoleHost _consoleHost;
|
|
|
|
private readonly OptionsMenu _optionsMenu;
|
|
|
|
public EscapeMenu(IClientConsoleHost consoleHost)
|
|
{
|
|
_consoleHost = consoleHost;
|
|
|
|
RobustXamlLoader.Load(this);
|
|
|
|
_optionsMenu = new OptionsMenu();
|
|
|
|
OptionsButton.OnPressed += OnOptionsButtonClicked;
|
|
QuitButton.OnPressed += OnQuitButtonClicked;
|
|
RulesButton.OnPressed += _ => new RulesAndInfoWindow().Open();
|
|
DisconnectButton.OnPressed += OnDisconnectButtonClicked;
|
|
WikiButton.OnPressed += OnWikiButtonClicked;
|
|
}
|
|
|
|
private void OnQuitButtonClicked(BaseButton.ButtonEventArgs args)
|
|
{
|
|
_consoleHost.ExecuteCommand("quit");
|
|
Dispose();
|
|
}
|
|
|
|
private void OnDisconnectButtonClicked(BaseButton.ButtonEventArgs args)
|
|
{
|
|
_consoleHost.ExecuteCommand("disconnect");
|
|
Dispose();
|
|
}
|
|
|
|
private void OnOptionsButtonClicked(BaseButton.ButtonEventArgs args)
|
|
{
|
|
_optionsMenu.OpenCentered();
|
|
}
|
|
|
|
private void OnWikiButtonClicked(BaseButton.ButtonEventArgs args)
|
|
{
|
|
var uriOpener = IoCManager.Resolve<IUriOpener>();
|
|
uriOpener.OpenUri(UILinks.Wiki);
|
|
}
|
|
|
|
protected override void Dispose(bool disposing)
|
|
{
|
|
base.Dispose(disposing);
|
|
|
|
if (disposing)
|
|
{
|
|
_optionsMenu.Dispose();
|
|
}
|
|
}
|
|
}
|
|
}
|