using System.ComponentModel;
namespace Terminal.Gui.ViewBase;
///
///
/// Handler for raising periodic events while the mouse is held down.
/// Typically, mouse button only needs to be pressed down in a view
/// to begin this event after which it can be moved elsewhere.
///
///
/// Common use cases for this includes holding a button down to increase
/// a counter (e.g. in ).
///
///
public interface IMouseHeldDown : IDisposable
{
///
/// Periodically raised when the mouse is pressed down inside the view .
///
public event EventHandler MouseIsHeldDownTick;
///
/// Call to indicate that the mouse has been pressed down and any relevant actions should
/// be undertaken (start timers, etc).
///
void Start ();
///
/// Call to indicate that the mouse has been released and any relevant actions should
/// be undertaken (stop timers, etc).
///
void Stop ();
}