From b9509e434e6ed07a8508f8db83194434fe2d5c79 Mon Sep 17 00:00:00 2001 From: Ray Greenwell Date: Fri, 16 Jun 2006 01:22:25 +0000 Subject: [PATCH] Utility method for creating a menu item that will post controller commands. git-svn-id: svn+ssh://src.earth.threerings.net/narya/trunk@4194 542714f4-19e9-0310-aa3c-eee0fc999fb1 --- src/as/com/threerings/util/MenuUtil.as | 29 ++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 src/as/com/threerings/util/MenuUtil.as diff --git a/src/as/com/threerings/util/MenuUtil.as b/src/as/com/threerings/util/MenuUtil.as new file mode 100644 index 000000000..279135d5c --- /dev/null +++ b/src/as/com/threerings/util/MenuUtil.as @@ -0,0 +1,29 @@ +package com.threerings.util { + +import flash.ui.ContextMenuItem; +import flash.events.ContextMenuEvent; + +import com.threerings.events.ControllerEvent; + +/** + */ +public class MenuUtil +{ + /** + * Create a menu item that will submit a controller command when selected. + */ + public static function createControllerMenuItem ( + caption :String, cmd :String, arg :Object = null, + separatorBefore :Boolean = false, enabled :Boolean = true, + visible :Boolean = true) :ContextMenuItem + { + var item :ContextMenuItem = + new ContextMenuItem(caption, separatorBefore, enabled, visible); + item.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT, + function (event :ContextMenuEvent) :void { + event.mouseTarget.dispatchEvent(new ControllerEvent(cmd, arg)); + }); + return item; + } +} +}