34 lines
1.4 KiB
C#
34 lines
1.4 KiB
C#
using System;
|
|
using VOID.Generic.Player.Util;
|
|
|
|
namespace VOID.Generic.Player.CursorOperation
|
|
{
|
|
public abstract class AbstractCursorOperation
|
|
{
|
|
/// <summary>
|
|
/// <see cref="Type"/> for which this operation will work.
|
|
/// </summary>
|
|
public abstract Type ForType();
|
|
|
|
/// <summary>
|
|
/// Returns TRUE if this operation can be executed.
|
|
/// </summary>
|
|
/// <param name="select">Complex information what was selected for this operation</param>
|
|
public abstract bool Check(SelectUtilResult select);
|
|
|
|
/// <summary>
|
|
/// Instantly executes default logic. Usually, by ordering currently active unit to do something.<br/>
|
|
/// <b>On Scene:</b> single tap, no alternate available (for now)<br/>
|
|
/// <b>On UI:</b> double tap, single tap is alternate usage<br/>
|
|
/// </summary>
|
|
/// <param name="select">Complex information what was selected for this operation</param>
|
|
/// <param name="isAlternate">If operation should execute alternate logic</param>
|
|
public abstract void DoDefault(SelectUtilResult select, bool isAlternate);
|
|
|
|
/// <summary>
|
|
/// Open context menu with all available action to choose for selected target.
|
|
/// </summary>
|
|
/// <param name="select">Complex information what was selected for this operation</param>
|
|
public abstract void DoContext(SelectUtilResult select);
|
|
}
|
|
} |