1 11 package org.eclipse.team.internal.ccvs.ui.tags; 12 13 14 import org.eclipse.core.runtime.IProgressMonitor; 15 import org.eclipse.jface.resource.ImageDescriptor; 16 import org.eclipse.team.core.TeamException; 17 import org.eclipse.team.internal.ccvs.core.*; 18 import org.eclipse.team.internal.ccvs.ui.model.CVSResourceElement; 19 import org.eclipse.ui.ISharedImages; 20 import org.eclipse.ui.PlatformUI; 21 22 public class CVSFolderElement extends CVSResourceElement { 23 24 private ICVSFolder folder; 25 private boolean includeUnmanaged; 26 27 public CVSFolderElement(ICVSFolder folder, boolean includeUnmanaged) { 28 this.folder = folder; 29 this.includeUnmanaged = includeUnmanaged; 30 } 31 32 35 public Object [] fetchChildren(Object o, IProgressMonitor monitor) throws TeamException { 36 ICVSResource[] children = folder.fetchChildren(monitor); 37 CVSResourceElement[] elements = new CVSResourceElement[children.length]; 38 for (int i = 0; i < children.length; i++) { 39 ICVSResource resource = children[i]; 40 if(resource.isFolder()) { 41 elements[i] = new CVSFolderElement((ICVSFolder)resource, includeUnmanaged); 42 } else { 43 elements[i] = new CVSFileElement((ICVSFile)resource); 44 } 45 } 46 return elements; 47 } 48 49 52 public boolean isRemoteElement() { 53 return true; 54 } 55 56 60 public String getLabel(Object o) { 61 return folder.getName(); 62 } 63 64 public ImageDescriptor getImageDescriptor(Object object) { 65 return PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(ISharedImages.IMG_OBJ_FOLDER); 66 } 67 68 71 public Object getParent(Object o) { 72 return new CVSFolderElement(folder.getParent(), includeUnmanaged); 73 } 74 75 78 public ICVSResource getCVSResource() { 79 return folder ; 80 } 81 } 82 | Popular Tags |