class Poco::XML::MutationEvent

Overview

The MutationEvent interface provides specific contextual information associated with Mutation events. Moreā€¦

#include <MutationEvent.h>

class MutationEvent: public Poco::XML::Event
{
public:
    // enums

    enum AttrChangeType;

    // fields

    static const XMLString DOMSubtreeModified;
    static const XMLString DOMNodeInserted;
    static const XMLString DOMNodeRemoved;
    static const XMLString DOMNodeRemovedFromDocument;
    static const XMLString DOMNodeInsertedIntoDocument;
    static const XMLString DOMAttrModified;
    static const XMLString DOMCharacterDataModified;

    // methods

    Node*
    relatedNode() const;

    const XMLString&
    prevValue() const;

    const XMLString&
    newValue() const;

    const XMLString&
    attrName() const;

    AttrChangeType
    attrChange() const;

    void
    initMutationEvent(
        const XMLString& type,
        bool canBubble,
        bool cancelable,
        Node* relatedNode,
        const XMLString& prevValue,
        const XMLString& newValue,
        const XMLString& attrName,
        AttrChangeType change
        );

protected:
    // construction

    MutationEvent(
        Document* pOwnerDocument,
        const XMLString& type
        );

    MutationEvent(
        Document* pOwnerDocument,
        const XMLString& type,
        EventTarget* pTarget,
        bool canBubble,
        bool cancelable,
        Node* relatedNode
        );

    MutationEvent(
        Document* pOwnerDocument,
        const XMLString& type,
        EventTarget* pTarget,
        bool canBubble,
        bool cancelable,
        Node* relatedNode,
        const XMLString& prevValue,
        const XMLString& newValue,
        const XMLString& attrName,
        AttrChangeType change
        );
};

Inherited Members

public:
    // enums

    enum PhaseType;

    // methods

    void
    duplicate() const;

    void
    release() const;

    virtual
    void
    autoRelease() = 0;

    const XMLString&
    type() const;

    EventTarget*
    target() const;

    EventTarget*
    currentTarget() const;

    PhaseType
    eventPhase() const;

    bool
    bubbles() const;

    bool
    cancelable() const;

    Poco::UInt64
    timeStamp() const;

    void
    stopPropagation();

    void
    preventDefault();

    void
    initEvent(
        const XMLString& eventType,
        bool canBubble,
        bool isCancelable
        );

    virtual
    void
    autoRelease();

protected:
    // methods

    bool
    isCanceled() const;

    bool
    isStopped() const;

    void
    setTarget(EventTarget* pTarget);

    void
    setCurrentPhase(PhaseType phase);

    void
    setCurrentTarget(EventTarget* pTarget);

Detailed Documentation

The MutationEvent interface provides specific contextual information associated with Mutation events.

Methods

Node*
relatedNode() const

relatedNode is used to identify a secondary node related to a mutation event.

For example, if a mutation event is dispatched to a node indicating that its parent has changed, the relatedNode is the changed parent. If an event is instead dispatched to a subtree indicating a node was changed within it, the relatedNode is the changed node. In the case of the DOMAttrModified event it indicates the Attr node which was modified, added, or removed.

const XMLString&
prevValue() const

prevValue indicates the previous value of the Attr node in DOMAttrModified events, and of the CharacterData node in DOMCharDataModified events.

const XMLString&
newValue() const

newValue indicates the new value of the Attr node in DOMAttrModified events, and of the CharacterData node in DOMCharDataModified events.

const XMLString&
attrName() const

attrName indicates the name of the changed Attr node in a DOMAttrModified event.

AttrChangeType
attrChange() const

attrChange indicates the type of change which triggered the DOMAttrModified event.

The values can be MODIFICATION, ADDITION, or REMOVAL.