using System.ComponentModel.DataAnnotations; using Avalonia; using Avalonia.Controls; using Avalonia.Data; using Avalonia.Interactivity; namespace Млаумчерб.Клиент; public partial class Окне : Window { public static readonly StyledProperty UsernameProperty = AvaloniaProperty.Register<Окне, string>(nameof(Username), defaultBindingMode: BindingMode.TwoWay); public string Username { get => GetValue(UsernameProperty); set => SetValue(UsernameProperty, value); } public static readonly StyledProperty MemoryLimitProperty = AvaloniaProperty.Register<Окне, int>(nameof(MemoryLimit), defaultBindingMode: BindingMode.TwoWay, defaultValue: 2048); public int MemoryLimit { get => GetValue(MemoryLimitProperty); set => SetValue(MemoryLimitProperty, value); } public static readonly StyledProperty FullscreenProperty = AvaloniaProperty.Register<Окне, bool>(nameof(Fullscreen), defaultBindingMode: BindingMode.TwoWay, defaultValue: false); public bool Fullscreen { get => GetValue(FullscreenProperty); set => SetValue(FullscreenProperty, value); } public static readonly StyledProperty UpdateGameFilesProperty = AvaloniaProperty.Register<Окне, bool>(nameof(UpdateGameFiles), defaultBindingMode: BindingMode.TwoWay, defaultValue: true); public bool UpdateGameFiles { get => GetValue(UpdateGameFilesProperty); set => SetValue(UpdateGameFilesProperty, value); } public Окне() { InitializeComponent(); } protected override void OnLoaded(RoutedEventArgs e) { try { Приложение.Настройки = Настройки.ЗагрузитьИзФайла(); Username = Приложение.Настройки.имя_пользователя; MemoryLimit = Приложение.Настройки.выделенная_память_мб; Fullscreen = Приложение.Настройки.открывать_на_весь_экран; } catch (Exception ex) { Ошибки.ПоказатьСообщение(ex); } } private void LaunchButtonHandler(object? sender, RoutedEventArgs e) { try { Приложение.Настройки.имя_пользователя = Username; Приложение.Настройки.выделенная_память_мб = MemoryLimit; Приложение.Настройки.открывать_на_весь_экран = Fullscreen; Приложение.Настройки.СохранитьВФайл(); } catch (Exception ex) { Ошибки.ПоказатьСообщение(ex); } } }