From 791c7dccf581d1fd61406f325a8301f1dd0f3872 Mon Sep 17 00:00:00 2001 From: eutarass Date: Fri, 6 May 2011 04:03:59 +0000 Subject: TCF Debugger: sorting order in Debug view changed from creation order to "getChildren" order. --- .../tcf/debug/ui/model/TCFNodeExecContext.java | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) (limited to 'plugins/org.eclipse.tm.tcf.debug.ui/src/org/eclipse/tm/internal/tcf/debug/ui/model/TCFNodeExecContext.java') diff --git a/plugins/org.eclipse.tm.tcf.debug.ui/src/org/eclipse/tm/internal/tcf/debug/ui/model/TCFNodeExecContext.java b/plugins/org.eclipse.tm.tcf.debug.ui/src/org/eclipse/tm/internal/tcf/debug/ui/model/TCFNodeExecContext.java index 5aac5c109..af3127b7f 100644 --- a/plugins/org.eclipse.tm.tcf.debug.ui/src/org/eclipse/tm/internal/tcf/debug/ui/model/TCFNodeExecContext.java +++ b/plugins/org.eclipse.tm.tcf.debug.ui/src/org/eclipse/tm/internal/tcf/debug/ui/model/TCFNodeExecContext.java @@ -45,8 +45,6 @@ import org.eclipse.tm.tcf.util.TCFDataCache; public class TCFNodeExecContext extends TCFNode implements ISymbolOwner { - private final int seq_no; - private final TCFChildrenExecContext children_exec; private final TCFChildrenStackTrace children_stack; private final TCFChildrenRegisters children_regs; @@ -68,6 +66,9 @@ public class TCFNodeExecContext extends TCFNode implements ISymbolOwner { private LinkedHashMap> func_info_lookup_cache; private LookupCacheTimer lookup_cache_timer; + private int mem_seq_no; + private int exe_seq_no; + /* * LookupCacheTimer is executed periodically to dispose least-recently * accessed entries in line_info_lookup_cache and func_info_lookup_cache. @@ -117,8 +118,6 @@ public class TCFNodeExecContext extends TCFNode implements ISymbolOwner { private String hover_expression; - private static int seq_cnt; - /** * Wrapper class for IMemoryMap.MemoryRegion. * The class help to search memory region by address by @@ -204,7 +203,6 @@ public class TCFNodeExecContext extends TCFNode implements ISymbolOwner { TCFNodeExecContext(TCFNode parent, final String id) { super(parent, id); - seq_no = seq_cnt++; children_exec = new TCFChildrenExecContext(this); children_stack = new TCFChildrenStackTrace(this) { @Override @@ -429,6 +427,14 @@ public class TCFNodeExecContext extends TCFNode implements ISymbolOwner { super.dispose(); } + void setMemSeqNo(int no) { + mem_seq_no = no; + } + + void setExeSeqNo(int no) { + exe_seq_no = no; + } + TCFChildren getHoverExpressionCache(String expression) { if (expression != hover_expression && (expression == null || !expression.equals(hover_expression))) { hover_expression = expression; @@ -1195,8 +1201,10 @@ public class TCFNodeExecContext extends TCFNode implements ISymbolOwner { public int compareTo(TCFNode n) { if (n instanceof TCFNodeExecContext) { TCFNodeExecContext f = (TCFNodeExecContext)n; - if (seq_no < f.seq_no) return -1; - if (seq_no > f.seq_no) return +1; + if (mem_seq_no < f.mem_seq_no) return -1; + if (mem_seq_no > f.mem_seq_no) return +1; + if (exe_seq_no < f.exe_seq_no) return -1; + if (exe_seq_no > f.exe_seq_no) return +1; } return id.compareTo(n.id); } -- cgit v1.2.3