public String getParentLabel(EObject eObject) {
   EObject eContainer = eObject.eContainer();
   if (!(eContainer instanceof EPackage)) return "";
   String parentLabel = getParentLabel(eContainer);
   if ("".equals(parentLabel)) return labelProvider.getText(eContainer);
   else return parentLabel + "." + labelProvider.getText(eContainer);
 }
 /**
  * Return an image for a resource descriptor.
  *
  * @param desc resource descriptor to return image for
  * @return an image for a resource descriptor.
  */
 private Image getImage(ResourceDescriptor desc) {
   ENamedElement r = (ENamedElement) desc.resources.get(0);
   return labelProvider.getImage(r);
 }
 private Image getParentImage(EObject eObject) {
   EObject eContainer = eObject.eContainer();
   return labelProvider.getImage(eContainer);
 }
 /** @see org.eclipse.jface.window.Window#close() */
 public boolean close() {
   boolean result = super.close();
   labelProvider.dispose();
   return result;
 }