class MenuData {

	public void setMenuPath(String[] newPath) {
		if (newPath == null || newPath.length == 0) {
			throw new IllegalArgumentException("Menu path cannot be null or empty");
		}
		MenuData oldData = cloneData();
		menuPath = processMenuPath(newPath);
		mnemonic = getMnemonic(newPath);
		firePropertyChanged(oldData);
	}

	public  MenuData(String[] menuPath);
	public  MenuData(String[] menuPath, String group);
	public  MenuData(String[] menuPath, Icon icon);
	public  MenuData(String[] menuPath, Icon icon, String menuGroup);
	public  MenuData(String[] menuPath, Icon icon, String menuGroup, int mnemonic,
			String menuSubGroup);
	public  MenuData(MenuData menuData);

}