Bug 296691 Change new Groups API to Virtual Resource API
If we decide that 'virtual' is the right naming for new resources concept, I will make the following changes. Add IResource#VIRTUAL flag to use in #create methods Add IResource#isVirtual indicating that a resource is virtual Remove IResource#isGroup Remove IFolder#createGroup
bundles/org.eclipse.ui.ide/src/org/eclipse/ui/ide/undo/WorkspaceUndoUtil.java
List resourcesAtDestination, List reverseDestinations,
			IProgressMonitor monitor, IAdaptable uiInfo,
			boolean pathIncludesName) throws CoreException {
		monitor.beginTask("", resources.length); 
		monitor
				.setTaskName(UndoMessages.AbstractResourcesOperation_MovingResources);
		List overwrittenResources = new ArrayList();
		for (int i = 0; i < resources.length; i++) {
			IResource source = resources[i];
			IPath destinationPath;
			if (pathIncludesName) {
				destinationPath = destination;
			} else {
				destinationPath = destination.append(source.getName());
			}
			IWorkspaceRoot workspaceRoot = getWorkspaceRoot();
			IResource existing = workspaceRoot.findMember(destinationPath);
			if (source.getType() == IResource.FOLDER && existing != null) {
				
				
				if (source.isLinked() == existing.isLinked()) {
					IResource[] children = ((IContainer) source).members();
					ResourceDescription[] overwritten = move(children,
							destinationPath, resourcesAtDestination,
							reverseDestinations, new SubProgressMonitor(
									monitor, 1), uiInfo, false);
					
					
					for (int j = 0; j < overwritten.length; j++) {
						overwrittenResources.add(overwritten[j]);