GP-532: Fixed small issue preventing editing of stack comments.

This commit is contained in:
Dan 2020-12-21 10:06:34 -05:00
parent af8ab1292c
commit 41a60a2350
2 changed files with 13 additions and 3 deletions

View file

@ -65,16 +65,17 @@ public class DebuggerStackProvider extends ComponentProviderAdapter {
private final String header;
private final Function<StackFrameRow, ?> getter;
private final BiConsumer<StackFrameRow, ?> setter;
private final BiConsumer<StackFrameRow, Object> setter;
private final Predicate<StackFrameRow> editable;
private final Class<?> cls;
@SuppressWarnings("unchecked")
<T> StackTableColumns(String header, Class<T> cls, Function<StackFrameRow, T> getter,
BiConsumer<StackFrameRow, T> setter, Predicate<StackFrameRow> editable) {
this.header = header;
this.cls = cls;
this.getter = getter;
this.setter = setter;
this.setter = (BiConsumer<StackFrameRow, Object>) setter;
this.editable = editable;
}
@ -92,6 +93,11 @@ public class DebuggerStackProvider extends ComponentProviderAdapter {
return getter.apply(row);
}
@Override
public void setValueOf(StackFrameRow row, Object value) {
setter.accept(row, value);
}
@Override
public String getHeader() {
return header;

View file

@ -24,6 +24,7 @@ import ghidra.trace.model.DefaultTraceLocation;
import ghidra.trace.model.TraceLocation;
import ghidra.trace.model.stack.TraceStackFrame;
import ghidra.trace.model.thread.TraceThread;
import ghidra.util.database.UndoableTransaction;
public class StackFrameRow {
private final DebuggerStackProvider provider;
@ -59,7 +60,10 @@ public class StackFrameRow {
}
public void setComment(String comment) {
frame.setComment(comment);
try (UndoableTransaction tid = UndoableTransaction
.start(frame.getStack().getThread().getTrace(), "Frame comment", true)) {
frame.setComment(comment);
}
}
public boolean isCommentable() {