Works for IEnumerable
This commit is contained in:
@@ -27,17 +27,17 @@ internal sealed class NrxDebuggerVisualizerProvider : DebuggerVisualizerProvider
|
||||
};
|
||||
public override async Task<IRemoteUserControl> CreateVisualizerAsync(VisualizerTarget visualizerTarget, CancellationToken cancellationToken)
|
||||
{
|
||||
Vector3Model? model = await visualizerTarget.ObjectSource.RequestDataAsync<Vector3Model?>(jsonSerializer: null, cancellationToken);
|
||||
VisualizerModel? model = await visualizerTarget.ObjectSource.RequestDataAsync<VisualizerModel?>(jsonSerializer: null, cancellationToken);
|
||||
SendToVisualizer(model);
|
||||
//throw new InvalidOperationException("This is a test exception to demonstrate the visualizer. Please remove this line and implement the visualizer logic.");
|
||||
var control = new Vector3VisualizerUserControl(dataContext: model);
|
||||
return await Task.FromResult<IRemoteUserControl>(control);
|
||||
}
|
||||
private static NamedPipeClient? PipeClient { get; set; }
|
||||
private static void SendToVisualizer(Vector3Model? vector3Model)
|
||||
private static void SendToVisualizer(VisualizerModel? visualizerModel)
|
||||
{
|
||||
if (vector3Model is null) return;
|
||||
if (visualizerModel is null) return;
|
||||
PipeClient ??= new NamedPipeClient("testPipe", serverName: @"TestServer", logger: (m) => Console.WriteLine(m));
|
||||
_ = PipeClient.SetMessageAsync($"Hello from {nameof(CreateVisualizerAsync)},vector3Model = {vector3Model.Vector3},{vector3Model.Quaternion}");
|
||||
_ = PipeClient.SetMessageAsync($"Hello from {nameof(CreateVisualizerAsync)},visualizerModel.Content = {visualizerModel.Content}");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -5,10 +5,10 @@ namespace NrxDebugVisualizer;
|
||||
|
||||
internal sealed class Vector3VisualizerUserControl : RemoteUserControl
|
||||
{
|
||||
public Vector3VisualizerUserControl(Vector3Model? dataContext) : base(dataContext)
|
||||
public Vector3VisualizerUserControl(VisualizerModel? dataContext) : base(dataContext)
|
||||
{
|
||||
Vector3Model = (Vector3Model?)DataContext;
|
||||
Vector3Model = (VisualizerModel?)DataContext;
|
||||
}
|
||||
|
||||
public Vector3Model? Vector3Model { get; }
|
||||
public VisualizerModel? Vector3Model { get; }
|
||||
}
|
||||
@@ -1,16 +1,5 @@
|
||||
<DataTemplate xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="100"></ColumnDefinition>
|
||||
<ColumnDefinition Width="*"></ColumnDefinition>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="20"></RowDefinition>
|
||||
<RowDefinition Height="20"></RowDefinition>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="Vector3" Grid.Column="0" Grid.Row="0" />
|
||||
<TextBlock Text="{Binding Vector3}" Grid.Column="1" Grid.Row="0" />
|
||||
<TextBlock Text="Quaternion" Grid.Column="0" Grid.Row="1" />
|
||||
<TextBlock Text="{Binding Quaternion}" Grid.Column="1" Grid.Row="1" />
|
||||
<TextBox TextWrapping="Wrap" AcceptsReturn="True" Text="{Binding Content}" Grid.Column="1" Grid.Row="0" />
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
Reference in New Issue
Block a user