package intrinsic.mx.controls;

public class Menu extends intrinsic.mx.controls.List implements intrinsic.mx.managers.IFocusManagerContainer {

	/** Accessors */
	public intrinsic.mx.controls.Menu parentMenu;
	public String horizontalScrollPolicy;
	public String verticalScrollPolicy;
	public intrinsic.mx.controls.menuClasses.IMenuDataDescriptor dataDescriptor;
	public boolean showRoot;
	public boolean hasRoot;
	public Object dataProvider;

	/** Variables */
	public double editorYOffset;
	public double editorWidthOffset;
	public intrinsic.mx.core.IFactory itemEditor;
	public boolean editable;
	public boolean editorUsesEnterKey;
	public String editorDataField;
	public double editorHeightOffset;
	public intrinsic.mx.controls.listClasses.IListItemRenderer itemEditorInstance;
	public boolean rendererIsEditor;
	public double editorXOffset;
	public boolean allowDragSelection;
	public boolean menuSelectionMode;
	public boolean liveScrolling;
	public boolean showScrollTips;
	public intrinsic.Array transitions;
	public intrinsic.Array states;

	/** Constants */
	public static final String VERSION = "version";

	/** Class Accessors */

	/** Class variables */
	public static intrinsic.Function createAccessibilityImplementation;

/** Contructors */
public Menu() {
}


/** Static Methods */
public static native intrinsic.mx.controls.Menu createMenu(intrinsic.flash.display.DisplayObjectContainer arg0, Object arg1);
public static native intrinsic.mx.controls.Menu createMenu(intrinsic.flash.display.DisplayObjectContainer arg0, Object arg1, boolean arg2);
public static native void popUpMenu(intrinsic.mx.controls.Menu arg0, intrinsic.flash.display.DisplayObjectContainer arg1, Object arg2);

/** Methods */
public native void setFocus();
public native void styleChanged(String arg0);
public native double measureWidthOfItems();
public native double measureWidthOfItems(int arg0);
public native double measureWidthOfItems(int arg0, int arg1);
public native boolean dispatchEvent(intrinsic.flash.events.Event arg0);
public native void hide();
public native void show();
public native void show(Object arg0);
public native void show(Object arg0, Object arg1);
public native void show(int arg0, int arg1);

}
