using System;
namespace SharpVectors.Dom.Events
{
///
/// The EventListener delegate is the
/// primary way for handling events.
///
///
///
/// Users register their event listener on an
/// IEventTarget. The users should also
/// remove their EventListener from its
/// IEventTarget after they have completed
/// using the listener.
///
///
/// Copying a INode does not copy the event
/// listeners attached to it. Event listeners must be attached to the
/// newly created INode afterwards if so desired.
/// Therefore, INodes are copied using
/// INode.CloneNode or
/// IRange.CloneContents, the
/// EventListeners attached to the
/// source INodes are not attached to their copies.
///
///
/// Moving a INode does not affect the event
/// listeners attached to it. Therefore, when
/// INodes are moved using
/// IDocument.AdoptNode,
/// INode.AppendChild, or
/// IRange.ExtractContents, the
/// EventListeners attached to the
/// moved INodes stay attached to them.
///
///
///
/// The IEvent contains contextual information
/// about the
/// event.
///
public delegate void EventListener(
IEvent e);
}