Bug 270008 [CommonNavigator] Ability to extend bindings beyond "inheritsBindingsFrom" tag
bundles/org.eclipse.ui.navigator/src/org/eclipse/ui/internal/navigator/extensions/NavigatorViewerDescriptorManager.java
implements IViewerExtPtConstants {
		protected NavigatorViewerDescriptorRegistry() {
			super(NavigatorPlugin.PLUGIN_ID, TAG_VIEWER);
		}
		protected boolean readElement(IConfigurationElement element) {
			if (TAG_VIEWER.equals(element.getName())) {
				String viewerId = element.getAttribute(ATT_VIEWER_ID);
				NavigatorViewerDescriptor descriptor = getNavigatorViewerDescriptor(viewerId);
				String inherit = element.getAttribute(ATT_INHERIT_BINDINGS_FROM_VIEWER);
				if (inherit != null)
					descriptor.setInheritBindingsFromViewer(inherit);
				
				String helpContext = element.getAttribute(ATT_HELP_CONTEXT);
				if (helpContext != null)
					descriptor.setHelpContext(helpContext);
				
				String attPopupMenuId = element.getAttribute(ATT_POPUP_MENU_ID);
				IConfigurationElement[] tagPopupMenu = element
						.getChildren(TAG_POPUP_MENU);
				if (tagPopupMenu.length == 0 && attPopupMenuId != null) {
					descriptor.setPopupMenuId(attPopupMenuId);
				} else {
					if (attPopupMenuId != null) {
						NavigatorPlugin
								.logError(
										0,
										"A popupMenuId attribute and popupMenu element may NOT be concurrently specified. (see " + element.getNamespaceIdentifier() + ")", null); 
					} else if (tagPopupMenu.length > 1) {