appendMenuToGroup( subMenu, group_name, menuManager );
menuManager.appendToGroup( group_name, subMenu );
	private void createGroupMenu( IMenuManager menuManager, String group_name )	{		//If select on Group, no need to provide cascade menu		if ( getFirstElement( ) instanceof RowHandle )		{			DesignElementHandle container = ( (RowHandle) getFirstElement( ) ).getContainer( );			if ( container instanceof TableGroupHandle )			{				Action action = new EditGroupAction( null,						(TableGroupHandle) container );				action.setText( EDIT_GROUP_MENU_ITEM_TEXT );				appendActionToAddGroup( action, menuManager );				return;			}		}		if ( getFirstElement( ) instanceof SlotHandle )		{			DesignElementHandle container = ( (SlotHandle) getFirstElement( ) ).getElementHandle( );			if ( container instanceof ListGroupHandle )			{				Action action = new EditGroupAction( null,						(ListGroupHandle) container );				action.setText( EDIT_GROUP_MENU_ITEM_TEXT );				appendActionToAddGroup( action, menuManager );				return;			}		}		MenuManager subMenu = new MenuManager( EDIT_GROUP_MENU_ITEM_TEXT );		ListingHandle parentHandle = null;		if ( ( getTableEditParts( ) != null )				&& !( getTableEditParts( ).get( 0 ) instanceof GridEditPart ) )		{			if ( getTableEditParts( ).size( ) > 1 )			{				return;			}			parentHandle = (ListingHandle) ( (TableEditPart) getTableEditParts( ).get( 0 ) ).getModel( );		}		else if ( getListEditParts( ) != null )		{			if ( getListEditParts( ).size( ) > 1 )			{				return;			}			parentHandle = (ListingHandle) ( (ListEditPart) getListEditParts( ).get( 0 ) ).getModel( );		}		else		{			return;		}		SlotHandle handle = parentHandle.getGroups( );		Iterator iter = handle.iterator( );		while ( iter.hasNext( ) )		{			GroupHandle groupHandle = (GroupHandle) iter.next( );			subMenu.add( new EditGroupAction( null, groupHandle ) );		}		appendMenuToGroup( subMenu, group_name, menuManager );	}