mirror of
https://github.com/BlossomiShymae/Needlework.Net.git
synced 2025-12-07 02:30:48 +01:00
Refactor request viewmodels
This commit is contained in:
@@ -2,15 +2,13 @@ using Avalonia;
|
||||
using Avalonia.Controls;
|
||||
using Avalonia.Styling;
|
||||
using AvaloniaEdit;
|
||||
using CommunityToolkit.Mvvm.Messaging;
|
||||
using Needlework.Net.Extensions;
|
||||
using Needlework.Net.Messages;
|
||||
using Needlework.Net.ViewModels.Pages;
|
||||
using TextMateSharp.Grammars;
|
||||
|
||||
namespace Needlework.Net.Views.Pages;
|
||||
|
||||
public partial class ConsoleView : UserControl, IRecipient<ResponseUpdatedMessage>, IRecipient<ContentRequestMessage>
|
||||
public partial class ConsoleView : UserControl
|
||||
{
|
||||
private TextEditor? _responseEditor;
|
||||
private TextEditor? _requestEditor;
|
||||
@@ -20,16 +18,6 @@ public partial class ConsoleView : UserControl, IRecipient<ResponseUpdatedMessag
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
public void Receive(ResponseUpdatedMessage message)
|
||||
{
|
||||
_responseEditor!.Text = message.Value;
|
||||
}
|
||||
|
||||
public void Receive(ContentRequestMessage message)
|
||||
{
|
||||
message.Reply(_requestEditor!.Text);
|
||||
}
|
||||
|
||||
protected override void OnAttachedToVisualTree(VisualTreeAttachmentEventArgs e)
|
||||
{
|
||||
base.OnAttachedToVisualTree(e);
|
||||
@@ -39,17 +27,30 @@ public partial class ConsoleView : UserControl, IRecipient<ResponseUpdatedMessag
|
||||
_responseEditor?.ApplyJsonEditorSettings();
|
||||
_requestEditor?.ApplyJsonEditorSettings();
|
||||
|
||||
WeakReferenceMessenger.Default.Register<ResponseUpdatedMessage, string>(this, nameof(ConsoleViewModel));
|
||||
WeakReferenceMessenger.Default.Register<ContentRequestMessage, string>(this, "ConsoleRequestEditor");
|
||||
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);
|
||||
|
||||
WeakReferenceMessenger.Default.UnregisterAll(this);
|
||||
var vm = (ConsoleViewModel)DataContext!;
|
||||
vm.LcuRequest.RequestText -= LcuRequest_RequestText;
|
||||
vm.LcuRequest.UpdateText -= LcuRequest_UpdateText;
|
||||
}
|
||||
|
||||
private void OnBaseThemeChanged(ThemeVariant currentTheme)
|
||||
|
||||
Reference in New Issue
Block a user