2020-10-20 00:58:15 +02:00

174 lines
5.9 KiB
ActionScript
Executable File
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/*
Copyright (c) 2009 Yahoo! Inc. All rights reserved.
The copyrights embodied in the content of this file are licensed under the BSD (revised) open source license
*/
package com.yahoo.astra.fl.events
{
import com.yahoo.astra.fl.controls.Menu;
//import com.yahoo.astra.fl.controls.MenuBar;
import com.yahoo.astra.fl.*;
import flash.events.Event;
import fl.events.ListEvent;
import fl.controls.listClasses.*;
/**
* The MenuEvent class represents events that are associated with menu activities.
*
* @see com.yahoo.astra.fl.controls.Menu
*/
public class MenuEvent extends ListEvent
{
//--------------------------------------------------------------------------
//
// Class constants
//
//--------------------------------------------------------------------------
/**
* The MenuEvent.CHANGE event type constant indicates that selection
* changed as a result of user interaction.
*
* @eventType change
*/
public static const CHANGE:String = "change";
/**
* The MenuEvent.ITEM_CLICK event type constant indicates that the
* user selected a menu item.
*
* @eventType itemClick
*/
public static const ITEM_CLICK:String = "itemClick";
/**
* The MenuEvent.MENU_HIDE event type constant indicates that
* a menu or submenu closed.
*
* @eventType menuHide
*/
public static const MENU_HIDE:String = "menuHide";
/**
* The MenuEvent.ITEM_ROLL_OUT type constant indicates that
* the mouse pointer rolled out of a menu item.
*
* @eventType itemRollOut
*/
public static const ITEM_ROLL_OUT:String = "itemRollOut";
/**
* The MenuEvent.ITEM_ROLL_OVER type constant indicates that
* the mouse pointer rolled over a menu item.
* @eventType itemRollOver
*/
public static const ITEM_ROLL_OVER:String = "itemRollOver";
/**
* The MenuEvent.MENU_SHOW type constant indicates that
* the mouse pointer rolled a menu or submenu opened.
*
* @eventType menuShow
*/
public static const MENU_SHOW:String = "menuShow";
//--------------------------------------------------------------------------
//
// Constructor
//
//--------------------------------------------------------------------------
/**
* Constructor.
*
* Normally called by the Menu object.
*
* @param type The event type; indicates the action that caused the event.
*
* @param bubbles Specifies whether the event can bubble
* up the display list hierarchy.
*
* @param cancelable Specifies whether the behavior
* associated with the event can be prevented.
* @param menu The specific Menu instance associated with the event,
* such as the menu or submenu that was hidden or opened. This property
* is null if a MenuBar item dispatches the event.
*
* @param item The item in the dataProvider of the assicated menu item.
*
* @param itemRenderer The ListItemRenderer of the associated menu item.
*
* @param label The label text of the associated menu item.
*
* @param index The index in the menu of the associated menu item.
*/
public function MenuEvent(type:String, bubbles:Boolean = false,
cancelable:Boolean = true,
menuBar:Object = null, menu:Menu = null,
item:Object = null,
itemRenderer:CellRenderer = null,
label:String = null, index:int = -1)
{
super(type, bubbles, cancelable);
//this.menuBar = menuBar;
this.menu = menu;
this._item = item;
//this.itemRenderer = itemRenderer;
this.label = label;
this._index = index;
}
//--------------------------------------------------------------------------
//
// Properties
//
//--------------------------------------------------------------------------
//----------------------------------
// label
//----------------------------------
/**
* The label text of the associated menu item.
* This is null for the menuShow and menuHide events.
*/
public var label:String;
//----------------------------------
// menu
//----------------------------------
/**
* The specific Menu instance associated with the event,
* such as the menu or submenu that was hidden or opened.
*
* This property is null if a MenuBar item is dispatching
* the event.
*/
public var menu:Menu;
//----------------------------------
// menuBar
//----------------------------------
/**
* The MenuBar instance that is the parent of the selected Menu control,
* or null when the target Menu control is not parented by a
* MenuBar control.
*/
//public var menuBar:MenuBar;
//--------------------------------------------------------------------------
//
// Overridden methods: Event
//
//--------------------------------------------------------------------------
/**
* @private
*/
override public function clone():Event
{
return new MenuEvent(type, bubbles, cancelable,
null, menu, _item, null, label, index);
}
/**
* Returns a string that contains all the properties of the MenuEvent object.
* @return A string representation of the MenuEvent object.
*
*/
override public function toString():String {
return formatToString("MenuEvent", "type", "bubbles", "cancelable",
//"menuBar",
"menu", "item",
//"itemRenderer",
"label", "index");
}
}
}