Add flip event flow and stop passing raw input events to handle methods

This commit is contained in:
Dean Herbert
2020-10-01 16:25:29 +09:00
parent 983b693858
commit 78c5d57074
3 changed files with 21 additions and 13 deletions

View File

@ -100,8 +100,9 @@ namespace osu.Game.Screens.Edit.Compose.Components
OperationStarted = OnOperationBegan,
OperationEnded = OnOperationEnded,
OnRotation = e => HandleRotation(e.Delta.X),
OnScale = (e, anchor) => HandleScale(e.Delta, anchor),
OnRotation = angle => HandleRotation(angle),
OnScale = (amount, anchor) => HandleScale(amount, anchor),
OnFlip = direction => HandleFlip(direction),
};
/// <summary>
@ -151,6 +152,13 @@ namespace osu.Game.Screens.Edit.Compose.Components
/// <returns>Whether any <see cref="DrawableHitObject"/>s could be moved.</returns>
public virtual bool HandleScale(Vector2 scale, Anchor anchor) => false;
/// <summary>
/// Handled the selected <see cref="DrawableHitObject"/>s being flipped.
/// </summary>
/// <param name="direction">The direction to flip</param>
/// <returns>Whether any <see cref="DrawableHitObject"/>s could be moved.</returns>
public virtual bool HandleFlip(Direction direction) => false;
public bool OnPressed(PlatformAction action)
{
switch (action.ActionMethod)