VisualRoleViewer.cs 841 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. #nullable enable
  2. namespace UICatalog.Scenarios;
  3. public class VisualRoleViewer : View
  4. {
  5. public VisualRoleViewer ()
  6. {
  7. CanFocus = false;
  8. Height = Dim.Auto (DimAutoStyle.Text);
  9. Width = Dim.Auto (DimAutoStyle.Text);
  10. }
  11. private VisualRole? _role;
  12. public VisualRole? Role
  13. {
  14. get => _role;
  15. set
  16. {
  17. _role = value;
  18. Text = $"{Role?.ToString ()?.PadRight (10)} {SchemeName}";
  19. }
  20. }
  21. /// <inheritdoc/>
  22. protected override bool OnGettingAttributeForRole (in VisualRole role, ref Attribute currentAttribute)
  23. {
  24. if (role != Role)
  25. {
  26. currentAttribute = GetAttributeForRole (Role!.Value);
  27. return true;
  28. }
  29. return base.OnGettingAttributeForRole (in role, ref currentAttribute);
  30. }
  31. }