// This code is distributed under MIT license.
// Copyright (c) 2015 George Mamaladze
// See license.txt or https://mit-license.org/
using System;
using System.Windows.Forms;
namespace Gma.System.MouseKeyHook
{
///
/// Provides all mouse events.
///
public interface IMouseEvents
{
///
/// Occurs when the mouse pointer is moved.
///
event MouseEventHandler MouseMove;
///
/// Occurs when the mouse pointer is moved.
///
///
/// This event provides extended arguments of type enabling you to
/// suppress further processing of mouse movement in other applications.
///
event EventHandler MouseMoveExt;
///
/// Occurs when a click was performed by the mouse.
///
event MouseEventHandler MouseClick;
///
/// Occurs when the mouse a mouse button is pressed.
///
event MouseEventHandler MouseDown;
///
/// Occurs when the mouse a mouse button is pressed.
///
///
/// This event provides extended arguments of type enabling you to
/// suppress further processing of mouse click in other applications.
///
event EventHandler MouseDownExt;
///
/// Occurs when a mouse button is released.
///
event MouseEventHandler MouseUp;
///
/// Occurs when a mouse button is released.
///
///
/// This event provides extended arguments of type enabling you to
/// suppress further processing of mouse click in other applications.
///
event EventHandler MouseUpExt;
///
/// Occurs when the mouse wheel moves.
///
event MouseEventHandler MouseWheel;
///
/// Occurs when the mouse wheel moves horizontally.
///
event MouseEventHandler MouseHWheel;
///
/// Occurs when the mouse wheel moves.
///
///
/// This event provides extended arguments of type enabling you to
/// suppress further processing of mouse wheel moves in other applications.
///
event EventHandler MouseWheelExt;
///
/// Occurs when the mouse wheel moves.
///
///
/// This event provides extended arguments of type enabling you to
/// suppress further processing of horizontal mouse wheel moves in other applications.
///
event EventHandler MouseHWheelExt;
///
/// Occurs when a mouse button is double-clicked.
///
event MouseEventHandler MouseDoubleClick;
///
/// Occurs when a drag event has started (left button held down whilst moving more than the system drag threshold).
///
event MouseEventHandler MouseDragStarted;
///
/// Occurs when a drag event has started (left button held down whilst moving more than the system drag threshold).
///
///
/// This event provides extended arguments of type enabling you to
/// suppress further processing of mouse movement in other applications.
///
event EventHandler MouseDragStartedExt;
///
/// Occurs when a drag event has completed.
///
event MouseEventHandler MouseDragFinished;
///
/// Occurs when a drag event has completed.
///
///
/// This event provides extended arguments of type enabling you to
/// suppress further processing of mouse movement in other applications.
///
event EventHandler MouseDragFinishedExt;
}
}