public Object getAdapter(Class adapter) { if (IGotoMarker.class.equals(adapter)) return fGotoMarkerAdapter; if (IAnnotationAccess.class.equals(adapter)) return getAnnotationAccess(); if (adapter == IShowInSource.class) { return new IShowInSource() { public ShowInContext getShowInContext() { ISelection selection= null; ISelectionProvider selectionProvider= getSelectionProvider(); if (selectionProvider != null) selection= selectionProvider.getSelection(); return new ShowInContext(getEditorInput(), selection); } }; } if (IRevisionRulerColumn.class.equals(adapter)) { if (fLineNumberRulerColumn instanceof IRevisionRulerColumn) return fLineNumberRulerColumn; } return super.getAdapter(adapter); }
@SuppressWarnings("unchecked") @Override public <T> T getAdapter(Class<T> adapter) { if (IGotoMarker.class.equals(adapter)) return (T) fGotoMarkerAdapter; if (IAnnotationAccess.class.equals(adapter)) return (T) getAnnotationAccess(); if (adapter == IShowInSource.class) { return (T) new IShowInSource() { @Override public ShowInContext getShowInContext() { ISelection selection= null; ISelectionProvider selectionProvider= getSelectionProvider(); if (selectionProvider != null) selection= selectionProvider.getSelection(); return new ShowInContext(getEditorInput(), selection); } }; } if (IRevisionRulerColumn.class.equals(adapter)) { if (fLineNumberRulerColumn instanceof IRevisionRulerColumn) return (T) fLineNumberRulerColumn; } if (MarkerAnnotationPreferences.class.equals(adapter)) return (T) EditorsPlugin.getDefault().getMarkerAnnotationPreferences(); return super.getAdapter(adapter); }
/** * Retrieves annotation editor adapters. * * @param adapter the adapter * @return an adapter or null */ @Override public Object getAdapter(@SuppressWarnings("rawtypes") Class adapter) { if (IContentOutlinePage.class.equals(adapter) && getDocument() != null) { return mOutlinePage; } else if (CAS.class.equals(adapter) && getDocument() != null) { return getDocument().getCAS(); } else { return super.getAdapter(adapter); } }