@Override protected Object[] getChildren(Object parent, int index, int length, IPresentationContext context, IViewerUpdate monitor) throws CoreException { return getElements(getAllChildren(parent, context, monitor), index, length); }
@Override protected int getChildCount(Object element, IPresentationContext context, IViewerUpdate monitor) throws CoreException { String id = context.getId(); if (id.equals(IDebugUIConstants.ID_DEBUG_VIEW)) { return ((IDebugTarget)element).getThreads().length; } else if (id.equals(IDebugUIConstants.ID_MEMORY_VIEW)) { return getAllChildren(element, context, monitor).length; } return 0; }
@Override protected boolean hasChildren(Object element, IPresentationContext context, IViewerUpdate monitor) throws CoreException { String id = context.getId(); if (id.equals(IDebugUIConstants.ID_DEBUG_VIEW)) { return ((IDebugTarget)element).hasThreads(); } else if (id.equals(IDebugUIConstants.ID_MEMORY_VIEW)) { return getAllChildren(element, context, monitor).length > 0; } return false; }