﻿// Copyright 2007. Adobe Systems Incorporated. All Rights Reserved.
package com.adobe.captivate.events 
{
	import flash.events.Event;

	/**
	 * The CPShowRolloverEvent class describes the event object passed to the event listener when a rollover item is rolled over
	 */
	 
	public class CPShowRolloverEvent extends CaptivateEvent 
	{
		/**
		*  The <code>CPShowRolloverEvent.CPSHOWROLLOVEREVENT</code> constant defines the value of the
		*  <code>type</code> property of the event object for an <code>CPShowRolloverEvent</code> event.
		*  <p>The properties of the event object have the following values:</p>
		*  <table class="innertable">
		*     <tr><th>Property</th><th>Value</th></tr>
		*     <tr><td><code>itemName</code></td><td>The name of the item that was rollover</td></tr>
		*     <tr><td><code>slideNumber</code></td><td>The slide number of the slide the item is present upon</td></tr>
		*     <tr><td><code>frameNumber</code></td><td>The frame number upon which the item was rollover</td></tr>
		*     <tr><td><code>itemType</code></td><td>The type of the item on which rollover </td></tr>
		*     <tr><td><code>itemUID</code></td><td>The UID of the item on which rollover </td></tr>		
		*	</table>
		*  @eventType CPShowRolloverEvent	
		*/
		public static const CPSHOWROLLOVEREVENT:String = "CPShowRolloverEvent";
		/**
		* @private
		*/
		protected var m_ItemName:String;
		/**
		* @private
		*/
		protected var m_SlideNumber:Number;
		/**
		* @private
		*/
		protected var m_FrameNumber:Number;
		/**
		* @private
		*/		
		protected var m_ItemType :Number
		/**
		* @private
		*/		
		protected var m_ItemUID :Number
		/**
		* @private
		*/
		public function CPShowRolloverEvent(captivateVersion:String="",	itemName:String="", itemType:Number=-1, 
					itemUID:Number=-1, slideNumber:Number=0, frameNumber:Number=0, cancelable:Boolean=false)
		{
			super(CPShowRolloverEvent.CPSHOWROLLOVEREVENT,captivateVersion,cancelable);
			m_ItemName = itemName;
			m_SlideNumber = slideNumber;
			m_FrameNumber = frameNumber;
			m_ItemType = itemType;
			m_ItemUID = itemUID;			
		}
		/**
		* @private
		*/
		public override function clone():Event
		{
			return new CPShowRolloverEvent(captivateVersion, itemName, itemType, itemUID, slideNumber, frameNumber, cancelable);
		}
		/**
		* The name of the item that was attempted
		*/
		public function get itemName():String
		{
			return m_ItemName;
		}
		/**
		* The type of the item that was attempted
		*/
		public function get itemType():Number
		{
			return m_ItemType;
		}
		/**
		* The UID of the item that was attempted
		*/
		public function get itemUID():Number
		{
			return m_ItemUID;
		}		
		/**
		* The slide number of the slide the item is present upon
		*/
		public function get slideNumber():Number
		{
			return m_SlideNumber;
		}
		/**
		* The frame number upon which the item was attempted
		*/
		public function get frameNumber():Number
		{
			return m_FrameNumber;
		}
		/*
		* @private	
		*/
		public override function toString():String
		{
			return formatToString("CPShowRolloverEvent","cancelable","eventPhase","captivateVersion","itemName","slideNumber","frameNumber");
		}
	}
}
