mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
159683
This commit is contained in:
parent
582657cf05
commit
6acfb42d4a
7 changed files with 60 additions and 3 deletions
|
@ -17,6 +17,16 @@ import org.eclipse.dd.dsf.ui.viewmodel.update.VMCache;
|
||||||
|
|
||||||
public class VMCacheRefreshAlways extends VMCache
|
public class VMCacheRefreshAlways extends VMCache
|
||||||
{
|
{
|
||||||
|
public VMCacheRefreshAlways()
|
||||||
|
{
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public VMCacheRefreshAlways(VMCache oldCache)
|
||||||
|
{
|
||||||
|
super(oldCache);
|
||||||
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
@Override
|
||||||
public void handleEvent(IDMEvent event) {
|
public void handleEvent(IDMEvent event) {
|
||||||
|
|
|
@ -16,6 +16,16 @@ import org.eclipse.dd.dsf.ui.viewmodel.update.VMCache;
|
||||||
|
|
||||||
public class VMCacheRefreshManual extends VMCache
|
public class VMCacheRefreshManual extends VMCache
|
||||||
{
|
{
|
||||||
|
public VMCacheRefreshManual()
|
||||||
|
{
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public VMCacheRefreshManual(VMCache oldCache)
|
||||||
|
{
|
||||||
|
super(oldCache);
|
||||||
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
@Override
|
||||||
public void handleEvent(IDMEvent event) {}
|
public void handleEvent(IDMEvent event) {}
|
||||||
|
|
|
@ -18,6 +18,16 @@ import org.eclipse.dd.dsf.ui.viewmodel.update.VMCache;
|
||||||
|
|
||||||
public class VMCacheRefreshOnBreak extends VMCache
|
public class VMCacheRefreshOnBreak extends VMCache
|
||||||
{
|
{
|
||||||
|
public VMCacheRefreshOnBreak()
|
||||||
|
{
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
public VMCacheRefreshOnBreak(VMCache oldCache)
|
||||||
|
{
|
||||||
|
super(oldCache);
|
||||||
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
@Override
|
@Override
|
||||||
public void handleEvent(IDMEvent event) {
|
public void handleEvent(IDMEvent event) {
|
||||||
|
|
|
@ -13,6 +13,7 @@ package org.eclipse.dd.dsf.debug.ui.viewmodel.update.actions;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.debug.ui.viewmodel.update.VMCacheRefreshAlways;
|
import org.eclipse.dd.dsf.debug.ui.viewmodel.update.VMCacheRefreshAlways;
|
||||||
import org.eclipse.dd.dsf.ui.viewmodel.update.VMCache;
|
import org.eclipse.dd.dsf.ui.viewmodel.update.VMCache;
|
||||||
|
import org.eclipse.dd.dsf.ui.viewmodel.update.VMCacheManager;
|
||||||
import org.eclipse.dd.dsf.ui.viewmodel.update.actions.AbstractRefreshActionDelegate;
|
import org.eclipse.dd.dsf.ui.viewmodel.update.actions.AbstractRefreshActionDelegate;
|
||||||
import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer;
|
import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer;
|
||||||
import org.eclipse.debug.ui.AbstractDebugView;
|
import org.eclipse.debug.ui.AbstractDebugView;
|
||||||
|
@ -29,6 +30,6 @@ public class RefreshAlwaysActionDelegate extends AbstractRefreshActionDelegate
|
||||||
@Override
|
@Override
|
||||||
public VMCache createCache()
|
public VMCache createCache()
|
||||||
{
|
{
|
||||||
return new VMCacheRefreshAlways();
|
return new VMCacheRefreshAlways(VMCacheManager.getVMCacheManager().getCache(getContext()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,7 @@ package org.eclipse.dd.dsf.debug.ui.viewmodel.update.actions;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.debug.ui.viewmodel.update.VMCacheRefreshManual;
|
import org.eclipse.dd.dsf.debug.ui.viewmodel.update.VMCacheRefreshManual;
|
||||||
import org.eclipse.dd.dsf.ui.viewmodel.update.VMCache;
|
import org.eclipse.dd.dsf.ui.viewmodel.update.VMCache;
|
||||||
|
import org.eclipse.dd.dsf.ui.viewmodel.update.VMCacheManager;
|
||||||
import org.eclipse.dd.dsf.ui.viewmodel.update.actions.AbstractRefreshActionDelegate;
|
import org.eclipse.dd.dsf.ui.viewmodel.update.actions.AbstractRefreshActionDelegate;
|
||||||
import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer;
|
import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer;
|
||||||
import org.eclipse.debug.ui.AbstractDebugView;
|
import org.eclipse.debug.ui.AbstractDebugView;
|
||||||
|
@ -29,6 +30,6 @@ public class RefreshManualActionDelegate extends AbstractRefreshActionDelegate
|
||||||
@Override
|
@Override
|
||||||
public VMCache createCache()
|
public VMCache createCache()
|
||||||
{
|
{
|
||||||
return new VMCacheRefreshManual();
|
return new VMCacheRefreshManual(VMCacheManager.getVMCacheManager().getCache(getContext()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,6 +13,7 @@ package org.eclipse.dd.dsf.debug.ui.viewmodel.update.actions;
|
||||||
|
|
||||||
import org.eclipse.dd.dsf.debug.ui.viewmodel.update.VMCacheRefreshOnBreak;
|
import org.eclipse.dd.dsf.debug.ui.viewmodel.update.VMCacheRefreshOnBreak;
|
||||||
import org.eclipse.dd.dsf.ui.viewmodel.update.VMCache;
|
import org.eclipse.dd.dsf.ui.viewmodel.update.VMCache;
|
||||||
|
import org.eclipse.dd.dsf.ui.viewmodel.update.VMCacheManager;
|
||||||
import org.eclipse.dd.dsf.ui.viewmodel.update.actions.AbstractRefreshActionDelegate;
|
import org.eclipse.dd.dsf.ui.viewmodel.update.actions.AbstractRefreshActionDelegate;
|
||||||
import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer;
|
import org.eclipse.debug.internal.ui.viewers.model.provisional.TreeModelViewer;
|
||||||
import org.eclipse.debug.ui.AbstractDebugView;
|
import org.eclipse.debug.ui.AbstractDebugView;
|
||||||
|
@ -29,6 +30,6 @@ public class RefreshOnBreakActionDelegate extends AbstractRefreshActionDelegate
|
||||||
@Override
|
@Override
|
||||||
public VMCache createCache()
|
public VMCache createCache()
|
||||||
{
|
{
|
||||||
return new VMCacheRefreshOnBreak();
|
return new VMCacheRefreshOnBreak(VMCacheManager.getVMCacheManager().getCache(getContext()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,6 +48,30 @@ public abstract class VMCache
|
||||||
|
|
||||||
protected HashMap<IDMContext<?>, IDMData> fDataArchive = fData;
|
protected HashMap<IDMContext<?>, IDMData> fDataArchive = fData;
|
||||||
|
|
||||||
|
public HashMap[] getCacheData()
|
||||||
|
{
|
||||||
|
return new HashMap[] { fHasChildren, fChildrenCounts, fChildren, fData, fDataArchive };
|
||||||
|
}
|
||||||
|
|
||||||
|
public VMCache()
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public VMCache(VMCache oldCache)
|
||||||
|
{
|
||||||
|
if(oldCache != null)
|
||||||
|
{
|
||||||
|
HashMap oldCacheData[] = oldCache.getCacheData();
|
||||||
|
|
||||||
|
fHasChildren = oldCacheData[0];
|
||||||
|
fChildrenCounts = oldCacheData[1];
|
||||||
|
fChildren = oldCacheData[2];
|
||||||
|
fData = oldCacheData[3];
|
||||||
|
fDataArchive = oldCacheData[4];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
protected void flush(boolean archive)
|
protected void flush(boolean archive)
|
||||||
{
|
{
|
||||||
if(archive)
|
if(archive)
|
||||||
|
|
Loading…
Add table
Reference in a new issue