using System;
namespace UnityEditor.TerrainTools
{
///
/// Options for brush modifier key shortcuts.
///
[Flags]
public enum BrushModifierKey
{
///
/// Use invert modifier.
///
BRUSH_MOD_INVERT = 0,
///
/// Use brush modifier 1.
///
BRUSH_MOD_1 = 1,
///
/// Use brush modifier 2.
///
BRUSH_MOD_2 = 2,
///
/// Use brush modifier 3.
///
BRUSH_MOD_3 = 3
}
///
/// An interface that represent the controller for brush modifier keys.
///
public interface IBrushModifierKeyController
{
///
/// Calls the methods in its invocation list when the modifier key is pressed.
///
event Action OnModifierPressed;
///
/// Calls the methods in its invocation list when the modifier key is released.
///
event Action OnModifierReleased;
///
/// Defines data when the tool is selected.
///
void OnEnterToolMode();
///
/// Defines data when the tool is deselected.
///
void OnExitToolMode();
///
/// Checks if the modifier key is active.
///
/// The modifier key to check.
/// Returns true when the key is active.
bool ModifierActive(BrushModifierKey k);
}
}