Bug 60117 [Viewers] Need a DeferredTableContentProvider
eclipse-SDK-I20040427-win32.zip 1. Perform a search & display the results with the flat layout 2. Now sort the results by 'Parent Name'... notice the type names do not come first 2. Switch to the hierarchical layout, then back to the flat - now the type names are first
bundles/org.eclipse.jface/src/org/eclipse/jface/viewers/TableViewer.java
public VirtualManager(){
			addTableListener();
		}
		
		/**
		 * Add the listener for SetData on the table
		 */
		private void addTableListener() {
			table.addListener(SWT.SetData,new Listener(){
				/* (non-Javadoc)
				 * @see org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt.widgets.Event)
				 */
				public void handleEvent(Event event) {
					TableItem item = (TableItem) event.item;
					final int index = table.indexOf(item);
					Object element = resolveElement(index);
					if(element == null){
						
						
						IContentProvider contentProvider = getContentProvider();
						
						if(contentProvider instanceof ILazyContentProvider){
							((ILazyContentProvider) contentProvider).
								updateElements(index, 1);
							return;
						}	
					}
						
					
					associate(element,item);