Bug 37464 call hierarchy: Should not use working copies
The call hierarchy should not use working copies of compilation units since these may go away (e.g. when an editor is closed).
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/callhierarchy/CallHierarchyViewPart.java
void setImplementorsMode(int implementorsMode) {
        if (fCurrentImplementorsMode != implementorsMode) {
            for (int i = 0; i < fToggleImplementorsActions.length; i++) {
                fToggleImplementorsActions[i].setChecked(implementorsMode == fToggleImplementorsActions[i].getImplementorsMode());
            }
            fCurrentImplementorsMode = implementorsMode;
            CallHierarchy.getDefault().setSearchUsingImplementorsEnabled(implementorsMode == IMPLEMENTORS_ENABLED);
            
            updateView();
        }
    }
    public IJavaSearchScope getSearchScope() {
        return fSearchScopeActions.getSearchScope();
    }
    public void setShowCallDetails(boolean show) {
        fShowCallDetails = show;
        showOrHideCallDetailsView();
    }
    private void initDragAndDrop() {
        Transfer[] transfers= new Transfer[] { LocalSelectionTransfer.getInstance() };
        int ops= DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_LINK;
        addDragAdapters(fCallHierarchyViewer, ops, transfers);
        addDropAdapters(fCallHierarchyViewer, ops | DND.DROP_DEFAULT, transfers);
        addDropAdapters(fLocationViewer, ops | DND.DROP_DEFAULT, transfers);
        
        DropTarget dropTarget = new DropTarget(fNoHierarchyShownLabel, ops | DND.DROP_DEFAULT);
        dropTarget.setTransfer(transfers);
        dropTarget.addDropListener(new CallHierarchyTransferDropAdapter(this, fCallHierarchyViewer));
    }