IDropHandler.cs 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. using Avalonia.Input;
  2. using Avalonia.Interactivity;
  3. namespace Avalonia.Xaml.Interactions.DragAndDrop;
  4. /// <summary>
  5. ///
  6. /// </summary>
  7. public interface IDropHandler
  8. {
  9. /// <summary>
  10. ///
  11. /// </summary>
  12. /// <param name="sender"></param>
  13. /// <param name="e"></param>
  14. /// <param name="sourceContext"></param>
  15. /// <param name="targetContext"></param>
  16. void Enter(object? sender, DragEventArgs e, object? sourceContext, object? targetContext);
  17. /// <summary>
  18. ///
  19. /// </summary>
  20. /// <param name="sender"></param>
  21. /// <param name="e"></param>
  22. /// <param name="sourceContext"></param>
  23. /// <param name="targetContext"></param>
  24. void Over(object? sender, DragEventArgs e, object? sourceContext, object? targetContext);
  25. /// <summary>
  26. ///
  27. /// </summary>
  28. /// <param name="sender"></param>
  29. /// <param name="e"></param>
  30. /// <param name="sourceContext"></param>
  31. /// <param name="targetContext"></param>
  32. void Drop(object? sender, DragEventArgs e, object? sourceContext, object? targetContext);
  33. /// <summary>
  34. ///
  35. /// </summary>
  36. /// <param name="sender"></param>
  37. /// <param name="e"></param>
  38. void Leave(object? sender, RoutedEventArgs e);
  39. /// <summary>
  40. ///
  41. /// </summary>
  42. /// <param name="sender"></param>
  43. /// <param name="e"></param>
  44. /// <param name="sourceContext"></param>
  45. /// <param name="targetContext"></param>
  46. /// <param name="state"></param>
  47. /// <returns></returns>
  48. bool Validate(object? sender, DragEventArgs e, object? sourceContext, object? targetContext, object? state);
  49. /// <summary>
  50. ///
  51. /// </summary>
  52. /// <param name="sender"></param>
  53. /// <param name="e"></param>
  54. /// <param name="sourceContext"></param>
  55. /// <param name="targetContext"></param>
  56. /// <param name="state"></param>
  57. /// <returns></returns>
  58. bool Execute(object? sender, DragEventArgs e, object? sourceContext, object? targetContext, object? state);
  59. /// <summary>
  60. ///
  61. /// </summary>
  62. /// <param name="sender"></param>
  63. /// <param name="e"></param>
  64. void Cancel(object? sender, RoutedEventArgs e);
  65. }