Изменено окно "О приложении" + небольшие правки

Визуальная составляющая: Изменено окно "О приложении". Цвет фона теперь синий. Надпись теперь на русском (взята с ReadMe). Небольшие правки: Кнопка "настройки" на главном экране теперь открывает окно настроек. Кнопка "о приложении" теперь открывает окно "о приложении"
This commit is contained in:
Быстров Михаил Евгеньевич
2025-12-03 17:31:53 +03:00
parent 42ab7b86a9
commit 7872e263f7
4 changed files with 17 additions and 14 deletions

View File

@@ -12,6 +12,8 @@ public class AboutWindow : Window
this.Width = 600;
this.Height = 400;
this.Background = new SolidColorBrush(Color.Parse("#2328c4"));
var AboutKeyKeeper = new TextBlock
{
Text = "About Keykeeper",
@@ -22,7 +24,7 @@ public class AboutWindow : Window
var AboutText = new TextBlock
{
Text = "KeyKeeper is a personal password and key manager\nwhere you can save passwords and other login\ninformation, configure one-time code generation,\nand create encryption keys for personal use",
Text = "KeyKeeper - личный менеджер паролей и ключей,\nгде пользователь сможет сохранять свои логины, пароли, адреса электронной почты, ключи восстановления с различных веб-сайтов и\nиз приложений и управлять ими. Ключи и пароли\nбудут храниться исключительно локально на\nкомпьютере пользователя и всё хранилище\nцеликом можно будет защитить мастер-паролем.",
HorizontalAlignment = HorizontalAlignment.Left,
FontSize = 16,
TextAlignment = TextAlignment.Left,

View File

@@ -5,27 +5,19 @@ using Avalonia.Media;
namespace KeyKeeper.Views;
public class SettingsWindow : Window
{
private async void OpenAbout()
{
var AboutWindow = new AboutWindow();
await AboutWindow.ShowDialog(this);
}
public SettingsWindow()
{
this.Title = "Настройки";
this.Width = 400;
this.Height = 300;
var AboutButton = new Button
var textBlock = new TextBlock
{
Content = "О приложении",
Text = "Окно настроек",
HorizontalAlignment = Avalonia.Layout.HorizontalAlignment.Center,
VerticalAlignment = Avalonia.Layout.VerticalAlignment.Center,
FontSize = 16
};
AboutButton.Click += (sender, e) => OpenAbout();
this.Content = AboutButton;
this.Content = textBlock;
}
}

View File

@@ -36,6 +36,13 @@ public partial class MainWindowViewModel : ViewModelBase
var settingsWindow = new SettingsWindow();
await settingsWindow.ShowDialog(GetMainWindow()!);
}
[RelayCommand]
private async Task OpenAbout()
{
var AboutWindow = new AboutWindow();
await AboutWindow.ShowDialog(GetMainWindow()!);
}
private static Window? GetMainWindow()
{
return App.Current?.ApplicationLifetime is Avalonia.Controls.ApplicationLifetimes.IClassicDesktopStyleApplicationLifetime desktop

View File

@@ -42,8 +42,10 @@
</StackPanel>
<StackPanel Grid.Row="2" Orientation="Horizontal" Spacing="25">
<Svg Path="/Assets/settings.svg" Width="61" Height="61"/>
<Button Command="{Binding OpenSettingsCommand}">
<Button Command="{Binding OpenSettingsCommand}">
<Svg Path="/Assets/settings.svg" Width="61" Height="61"/>
</Button>
<Button Command="{Binding OpenAboutCommand}">
<Svg Path="/Assets/about.svg" Width="61" Height="61"/>
</Button>
</StackPanel>