/**
 * EventWrapper.js
 *
 * JavaScript object wrapper for browser events.
 *
 * The purpose of this object is to provide a set of browser-independent
 * APIs for accessing browser events in JavaScript.
 *
 */

/**
  * EventWrapper Constructor
  */
function EventWrapper(p_event, p_browser)
{
    // Member variables
    this.event    = p_event;
    this.browser  = p_browser;

    // Key constants
    this.key       = new Object();
    this.key.ENTER = 13;
}


/**
  * Check to see if a specific key was pressed.
  */
function _EventWrapper_isKeyPress(p_keycode)
{
    var keyCode = this.browser.isNetscape() ? this.event.which : this.event.keyCode;

    if (keyCode == p_keycode)
       return true;
    else
       return false;
}


/**
  * Return the DOM element that fired the event.
  */
function _EventWrapper_getElement()
{
    if (this.browser.isIE())
        return this.event.srcElement;
    else if (this.browser.isNetscape())
        return this.event.target;
}



/**
  * Assign Prototype Methods
  */
EventWrapper.prototype.isKeyPress    = _EventWrapper_isKeyPress;
EventWrapper.prototype.getElement    = _EventWrapper_getElement;
