1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-08-20 14:45:57 +02:00

more table-tree view issues

This commit is contained in:
David McKnight 2006-10-11 16:40:24 +00:00
parent 08d0150b25
commit 2077b763ea
6 changed files with 27 additions and 3 deletions

View file

@ -1501,6 +1501,7 @@ public class SystemView extends TreeViewer implements ISystemTree, ISystemResour
job.setPriority(Job.INTERACTIVE); job.setPriority(Job.INTERACTIVE);
//job.setUser(true); //job.setUser(true);
job.schedule(); job.schedule();
/*
Display display = Display.getCurrent(); Display display = Display.getCurrent();
try { try {
while (job.getResult() == null) { while (job.getResult() == null) {
@ -1511,6 +1512,7 @@ public class SystemView extends TreeViewer implements ISystemTree, ISystemResour
} }
} catch (InterruptedException e) { } catch (InterruptedException e) {
} }
*/
} }
/** /**

View file

@ -3,6 +3,7 @@ package org.eclipse.rse.ui.view;
import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Display;
import org.eclipse.ui.progress.DeferredTreeContentManager; import org.eclipse.ui.progress.DeferredTreeContentManager;
import org.eclipse.ui.views.properties.IPropertyDescriptor;
public class SystemDeferredTableTreeContentManager extends public class SystemDeferredTableTreeContentManager extends
DeferredTreeContentManager { DeferredTreeContentManager {
@ -20,7 +21,11 @@ public class SystemDeferredTableTreeContentManager extends
super.addChildren(parent, children, monitor); super.addChildren(parent, children, monitor);
_provider.setCachedObjects(parent, children); _provider.setCachedObjects(parent, children);
Display.getDefault().asyncExec(new RelayoutView(parent)); IPropertyDescriptor[] descriptors = _view.getUniqueDescriptors();
if (descriptors == null)
{
Display.getDefault().asyncExec(new RelayoutView(parent));
}
} }

View file

@ -436,6 +436,12 @@ implements IMenuListener, ISystemDeleteTarget, ISystemRenameTarget, ISystemSelec
{ {
return _columnManager.getVisibleDescriptors(adapter); return _columnManager.getVisibleDescriptors(adapter);
} }
public IPropertyDescriptor[] getUniqueDescriptors()
{
return _uniqueDescriptors;
}
/** /**
* Used to determine what the columns should be on the table. * Used to determine what the columns should be on the table.
*/ */
@ -855,7 +861,7 @@ implements IMenuListener, ISystemDeleteTarget, ISystemRenameTarget, ISystemSelec
{ {
if (!madeChange) if (!madeChange)
{ {
provider.flushCache(); //provider.flushCache();
madeChange = true; madeChange = true;
} }

View file

@ -62,6 +62,7 @@ public class SystemTableTreeViewProvider implements ILabelProvider, ITableLabelP
protected Viewer _viewer = null; protected Viewer _viewer = null;
protected int _maxCharsInColumnZero = 0; protected int _maxCharsInColumnZero = 0;
private SystemDeferredTableTreeContentManager manager; private SystemDeferredTableTreeContentManager manager;
private boolean _disableDeferredQueries = false;
/** /**
* The cache of images that have been dispensed by this provider. * The cache of images that have been dispensed by this provider.
@ -433,9 +434,15 @@ public class SystemTableTreeViewProvider implements ILabelProvider, ITableLabelP
public void dispose() { public void dispose() {
} }
public void disableDeferredQueries(boolean disable)
{
_disableDeferredQueries = disable;
}
protected boolean supportsDeferredQueries() protected boolean supportsDeferredQueries()
{ {
if (_disableDeferredQueries)
return false;
IPreferenceStore store = RSEUIPlugin.getDefault().getPreferenceStore(); IPreferenceStore store = RSEUIPlugin.getDefault().getPreferenceStore();
return store.getBoolean(ISystemPreferencesConstants.USE_DEFERRED_QUERIES); return store.getBoolean(ISystemPreferencesConstants.USE_DEFERRED_QUERIES);
} }

View file

@ -1501,6 +1501,7 @@ public class SystemView extends TreeViewer implements ISystemTree, ISystemResour
job.setPriority(Job.INTERACTIVE); job.setPriority(Job.INTERACTIVE);
//job.setUser(true); //job.setUser(true);
job.schedule(); job.schedule();
/*
Display display = Display.getCurrent(); Display display = Display.getCurrent();
try { try {
while (job.getResult() == null) { while (job.getResult() == null) {
@ -1511,6 +1512,7 @@ public class SystemView extends TreeViewer implements ISystemTree, ISystemResour
} }
} catch (InterruptedException e) { } catch (InterruptedException e) {
} }
*/
} }
/** /**

View file

@ -48,6 +48,7 @@ public class SystemSearchTableView extends SystemTableTreeView
super(tabletree, msgLine); super(tabletree, msgLine);
this.resultSet = resultSet; this.resultSet = resultSet;
_provider.disableDeferredQueries(true);
setLabelProvider(new SystemDecoratingLabelProvider(_provider, RSEUIPlugin.getDefault().getWorkbench().getDecoratorManager().getLabelDecorator())); setLabelProvider(new SystemDecoratingLabelProvider(_provider, RSEUIPlugin.getDefault().getWorkbench().getDecoratorManager().getLabelDecorator()));
} }
@ -155,7 +156,7 @@ public class SystemSearchTableView extends SystemTableTreeView
case ISystemRemoteChangeEvents.SYSTEM_REMOTE_RESOURCE_RENAMED : case ISystemRemoteChangeEvents.SYSTEM_REMOTE_RESOURCE_RENAMED :
{ {
Object resource = event.getResource(); Object resource = event.getResource();
String resourceOldPath = event.getOldName(); // String resourceOldPath = event.getOldName();
/** FIXME - IREmoteFile is systems.core independent now /** FIXME - IREmoteFile is systems.core independent now
// we only care about remote file renames // we only care about remote file renames
@ -307,6 +308,7 @@ public class SystemSearchTableView extends SystemTableTreeView
if ((previousResults == null || previousResults.length == 0) && newResults.length != 0) { if ((previousResults == null || previousResults.length == 0) && newResults.length != 0) {
provider.flushCache(); provider.flushCache();
refresh(getInput()); refresh(getInput());
} }
else if (previousResults != null) { else if (previousResults != null) {