Убраны синхронные методы
This commit is contained in:
@@ -1,28 +0,0 @@
|
||||
namespace Lattice.Core.DragDrop.Abstractions;
|
||||
|
||||
/// <summary>
|
||||
/// Определяет контракт для объектов, которые могут быть источником данных
|
||||
/// в операции перетаскивания с поддержкой асинхронных операций.
|
||||
/// </summary>
|
||||
public interface IAsyncDragSource : IDragSource
|
||||
{
|
||||
/// <summary>
|
||||
/// Определяет, может ли объект начать операцию перетаскивания (асинхронно).
|
||||
/// </summary>
|
||||
Task<(bool CanStart, Models.DragInfo? DragInfo)> CanStartDragAsync();
|
||||
|
||||
/// <summary>
|
||||
/// Начинает операцию перетаскивания (асинхронно).
|
||||
/// </summary>
|
||||
Task<bool> StartDragAsync(Models.DragInfo dragInfo);
|
||||
|
||||
/// <summary>
|
||||
/// Вызывается при завершении операции перетаскивания (асинхронно).
|
||||
/// </summary>
|
||||
Task DragCompletedAsync(Models.DragInfo dragInfo, Enums.DragDropEffects effects);
|
||||
|
||||
/// <summary>
|
||||
/// Вызывается при отмене операции перетаскивания (асинхронно).
|
||||
/// </summary>
|
||||
Task DragCancelledAsync(Models.DragInfo dragInfo);
|
||||
}
|
||||
@@ -1,28 +0,0 @@
|
||||
namespace Lattice.Core.DragDrop.Abstractions;
|
||||
|
||||
/// <summary>
|
||||
/// Определяет контракт для объектов, которые могут принимать сбрасываемые данные
|
||||
/// в операции перетаскивания с поддержкой асинхронных операций.
|
||||
/// </summary>
|
||||
public interface IAsyncDropTarget : IDropTarget
|
||||
{
|
||||
/// <summary>
|
||||
/// Определяет, может ли объект принять сбрасываемые данные (асинхронно).
|
||||
/// </summary>
|
||||
Task<bool> CanAcceptDropAsync(Models.DropInfo dropInfo);
|
||||
|
||||
/// <summary>
|
||||
/// Вызывается, когда перетаскиваемый объект находится над целью (асинхронно).
|
||||
/// </summary>
|
||||
Task DragOverAsync(Models.DropInfo dropInfo);
|
||||
|
||||
/// <summary>
|
||||
/// Вызывается, когда пользователь сбрасывает данные на цель (асинхронно).
|
||||
/// </summary>
|
||||
Task DropAsync(Models.DropInfo dropInfo);
|
||||
|
||||
/// <summary>
|
||||
/// Вызывается, когда перетаскиваемый объект покидает область цели (асинхронно).
|
||||
/// </summary>
|
||||
Task DragLeaveAsync();
|
||||
}
|
||||
@@ -13,18 +13,15 @@ public interface IDragSource
|
||||
/// <summary>
|
||||
/// Определяет, может ли объект начать операцию перетаскивания.
|
||||
/// </summary>
|
||||
/// <param name="dragInfo">
|
||||
/// Информация о перетаскивании, которая будет заполнена данными, если операция разрешена.
|
||||
/// </param>
|
||||
/// <returns>
|
||||
/// true, если объект может начать перетаскивание; в противном случае — false.
|
||||
/// Кортеж, содержащий флаг возможности начала перетаскивания и информацию о перетаскивании.
|
||||
/// </returns>
|
||||
/// <remarks>
|
||||
/// Этот метод вызывается системой перетаскивания для проверки возможности
|
||||
/// начала операции. Если метод возвращает true, он должен заполнить
|
||||
/// <paramref name="dragInfo"/> необходимыми данными.
|
||||
/// DragInfo необходимыми данными.
|
||||
/// </remarks>
|
||||
bool CanStartDrag(out Models.DragInfo? dragInfo);
|
||||
Task<(bool CanStart, Models.DragInfo? DragInfo)> CanStartDragAsync(CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// Начинает операцию перетаскивания.
|
||||
@@ -38,7 +35,7 @@ public interface IDragSource
|
||||
/// Реализация должна подготовить данные для перетаскивания и, возможно,
|
||||
/// создать визуальное представление перетаскиваемого объекта.
|
||||
/// </remarks>
|
||||
bool StartDrag(Models.DragInfo dragInfo);
|
||||
Task<bool> StartDragAsync(Models.DragInfo dragInfo, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// Вызывается при завершении операции перетаскивания.
|
||||
@@ -50,7 +47,7 @@ public interface IDragSource
|
||||
/// (успешного или неуспешного). Реализация может выполнить очистку
|
||||
/// или обновить состояние на основе результата операции.
|
||||
/// </remarks>
|
||||
void DragCompleted(Models.DragInfo dragInfo, Enums.DragDropEffects effects);
|
||||
Task DragCompletedAsync(Models.DragInfo dragInfo, Enums.DragDropEffects effects, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// Вызывается при отмене операции перетаскивания.
|
||||
@@ -60,5 +57,5 @@ public interface IDragSource
|
||||
/// Этот метод вызывается, когда операция перетаскивания была отменена
|
||||
/// пользователем (например, нажатием клавиши Escape).
|
||||
/// </remarks>
|
||||
void DragCancelled(Models.DragInfo dragInfo);
|
||||
Task DragCancelledAsync(Models.DragInfo dragInfo, CancellationToken cancellationToken = default);
|
||||
}
|
||||
@@ -22,7 +22,7 @@ public interface IDropTarget
|
||||
/// Реализация должна проверить, совместимы ли данные с целью, и установить
|
||||
/// предлагаемые эффекты в <paramref name="dropInfo"/>.
|
||||
/// </remarks>
|
||||
bool CanAcceptDrop(Models.DropInfo dropInfo);
|
||||
Task<bool> CanAcceptDropAsync(Models.DropInfo dropInfo, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// Вызывается, когда перетаскиваемый объект находится над целью.
|
||||
@@ -32,7 +32,7 @@ public interface IDropTarget
|
||||
/// Этот метод вызывается постоянно, пока пользователь перемещает объект над целью.
|
||||
/// Реализация может обновить визуальную обратную связь или изменить предлагаемые эффекты.
|
||||
/// </remarks>
|
||||
void DragOver(Models.DropInfo dropInfo);
|
||||
Task DragOverAsync(Models.DropInfo dropInfo, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// Вызывается, когда пользователь сбрасывает данные на цель.
|
||||
@@ -42,7 +42,7 @@ public interface IDropTarget
|
||||
/// Этот метод вызывается, когда пользователь отпускает кнопку мыши над целью.
|
||||
/// Реализация должна обработать принятие данных и выполнить соответствующее действие.
|
||||
/// </remarks>
|
||||
void Drop(Models.DropInfo dropInfo);
|
||||
Task DropAsync(Models.DropInfo dropInfo, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// Вызывается, когда перетаскиваемый объект покидает область цели.
|
||||
@@ -51,5 +51,5 @@ public interface IDropTarget
|
||||
/// Этот метод вызывается, когда пользователь перемещает объект за пределы цели.
|
||||
/// Реализация должна очистить любую визуальную обратную связь, установленную ранее.
|
||||
/// </remarks>
|
||||
void DragLeave();
|
||||
Task DragLeaveAsync(CancellationToken cancellationToken = default);
|
||||
}
|
||||
Reference in New Issue
Block a user