mirror of
https://github.com/BlossomiShymae/Needlework.Net.git
synced 2025-12-06 10:10:48 +01:00
61 lines
1.8 KiB
C#
61 lines
1.8 KiB
C#
using Avalonia;
|
|
using Avalonia.Controls;
|
|
using Avalonia.Styling;
|
|
using AvaloniaEdit;
|
|
using Needlework.Net.Extensions;
|
|
using Needlework.Net.ViewModels.Pages;
|
|
using TextMateSharp.Grammars;
|
|
|
|
namespace Needlework.Net.Views.Pages;
|
|
|
|
public partial class ConsoleView : UserControl
|
|
{
|
|
private TextEditor? _responseEditor;
|
|
private TextEditor? _requestEditor;
|
|
|
|
public ConsoleView()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
|
|
{
|
|
base.OnAttachedToVisualTree(e);
|
|
|
|
_responseEditor = this.FindControl<TextEditor>("ResponseEditor");
|
|
_requestEditor = this.FindControl<TextEditor>("RequestEditor");
|
|
_responseEditor?.ApplyJsonEditorSettings();
|
|
_requestEditor?.ApplyJsonEditorSettings();
|
|
|
|
var vm = (ConsoleViewModel)DataContext!;
|
|
vm.LcuRequest.RequestText += LcuRequest_RequestText; ;
|
|
vm.LcuRequest.UpdateText += LcuRequest_UpdateText;
|
|
|
|
OnBaseThemeChanged(Application.Current!.ActualThemeVariant);
|
|
}
|
|
|
|
private void LcuRequest_RequestText(object? sender, ViewModels.Shared.LcuRequestViewModel e)
|
|
{
|
|
e.RequestBody = _requestEditor!.Text;
|
|
}
|
|
|
|
private void LcuRequest_UpdateText(object? sender, string e)
|
|
{
|
|
_responseEditor!.Text = e;
|
|
}
|
|
|
|
protected override void OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs e)
|
|
{
|
|
base.OnDetachedFromVisualTree(e);
|
|
|
|
var vm = (ConsoleViewModel)DataContext!;
|
|
vm.LcuRequest.RequestText -= LcuRequest_RequestText;
|
|
vm.LcuRequest.UpdateText -= LcuRequest_UpdateText;
|
|
}
|
|
|
|
private void OnBaseThemeChanged(ThemeVariant currentTheme)
|
|
{
|
|
var registryOptions = new RegistryOptions(
|
|
currentTheme == ThemeVariant.Dark ? ThemeName.DarkPlus : ThemeName.LightPlus);
|
|
}
|
|
} |