function Mouse() {

    this.X = 0;
    this.Y = 0;
    this.cX = 0;
    this.cY = 0;
    this.mTarget = null;
    this.cTarget = null;

    this.downFunction = function(e) {
        this.cTarget = e.srcElement != null ? e.srcElement : e.target;
        this.cX = this.X;
        this.cY = this.Y;
        if (this.cTarget.returnClick == false && e.button <= 1) {
            for (tag in clickableTags) {
                if (this.cTarget.tagName === clickableTags[tag]) {
                    return true;
                }
            }
            return false;
        }
        return true;
    };

    this.moveFunction = function(e) {
        this.mTarget = e.srcElement != null ? e.srcElement : e.target;
        this.X  = e.clientX;
        this.Y  = e.clientY;
        if (this.mTarget.toolTip !== null && this.mTarget.toolTip !== undefined) {
            toolTip.innerHTML = this.mTarget.toolTip;
            toolTip.style.left = (this.X + 10) + 'px';
            toolTip.style.top = (this.Y + 10) + 'px';
            toolTip.style.display = 'block';
        } else {
            toolTip.style.display = 'none';
        }
        return false;
    };

    return this;
}