IPriorityValueOwner.cs 1.3 KB

1234567891011121314151617181920212223242526272829303132333435
  1. // Copyright (c) The Avalonia Project. All rights reserved.
  2. // Licensed under the MIT license. See licence.md file in the project root for full license information.
  3. using Avalonia.Data;
  4. namespace Avalonia
  5. {
  6. /// <summary>
  7. /// An owner of a <see cref="PriorityValue"/>.
  8. /// </summary>
  9. internal interface IPriorityValueOwner
  10. {
  11. /// <summary>
  12. /// Called when a <see cref="PriorityValue"/>'s value changes.
  13. /// </summary>
  14. /// <param name="property">The the property that has changed.</param>
  15. /// <param name="priority">The priority of the value.</param>
  16. /// <param name="oldValue">The old value.</param>
  17. /// <param name="newValue">The new value.</param>
  18. void Changed(AvaloniaProperty property, int priority, object oldValue, object newValue);
  19. /// <summary>
  20. /// Called when a <see cref="BindingNotification"/> is received by a
  21. /// <see cref="PriorityValue"/>.
  22. /// </summary>
  23. /// <param name="property">The the property that has changed.</param>
  24. /// <param name="notification">The notification.</param>
  25. void BindingNotificationReceived(AvaloniaProperty property, BindingNotification notification);
  26. /// <summary>
  27. /// Ensures that the current thread is the UI thread.
  28. /// </summary>
  29. void VerifyAccess();
  30. }
  31. }