NullRenderer.cs 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #nullable enable
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Linq;
  5. using System.Threading.Tasks;
  6. using Avalonia.Rendering;
  7. namespace Avalonia.UnitTests;
  8. public sealed class NullRenderer : IRenderer
  9. {
  10. public RendererDiagnostics Diagnostics { get; } = new();
  11. event EventHandler<SceneInvalidatedEventArgs>? IRenderer.SceneInvalidated
  12. {
  13. add { }
  14. remove { }
  15. }
  16. public NullRenderer()
  17. {
  18. }
  19. public void AddDirty(Visual visual)
  20. {
  21. }
  22. public void Dispose()
  23. {
  24. }
  25. public IEnumerable<Visual> HitTest(Point p, Visual root, Func<Visual, bool> filter)
  26. => Enumerable.Empty<Visual>();
  27. public Visual? HitTestFirst(Point p, Visual root, Func<Visual, bool> filter)
  28. => null;
  29. public void Paint(Rect rect)
  30. {
  31. }
  32. public void RecalculateChildren(Visual visual)
  33. {
  34. }
  35. public void Resized(Size size)
  36. {
  37. }
  38. public void Start()
  39. {
  40. }
  41. public void Stop()
  42. {
  43. }
  44. public ValueTask<object?> TryGetRenderInterfaceFeature(Type featureType)
  45. => new((object?) null);
  46. }