package bluej.stride.framedjava.frames;
import javafx.scene.Node;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.stage.Window;
import bluej.Config;
import bluej.debugger.DebuggerField;
import bluej.pkgmgr.Package;
import threadchecker.OnThread;
import threadchecker.Tag;
public class ReferenceDebugVarInfo
implements DebugVarInfo{
private Package pkg;
private Window editorFrame;
private DebuggerField field;
@OnThread(Tag.Any)
public ReferenceDebugVarInfo(Package pkg, Window editorFrame, DebuggerField field)
{
this.pkg = pkg;
this.editorFrame = editorFrame;
this.field = field;
}
@Override
@OnThread(Tag.FXPlatform)
public Node getDisplay(DebugVarInfo prev)
{
Image img = Config.getImageAsFXImage("image.eval.object");
ImageView view = new ImageView(img);
view.setOnMouseClicked(e -> {
pkg.getProject().getInspectorInstance(field.getValueObject(null), null, pkg, null, editorFrame, null);
e.consume();
});
return view;
}
@Override
@OnThread(Tag.FXPlatform)
public String getInternalValueString()
{
return "" + field.getValueObject(null).getObjectReference().uniqueID();
}
}
top,
use,
map,
class ReferenceDebugVarInfo
. ReferenceDebugVarInfo
. getDisplay
. getInternalValueString
58 neLoCode
+ 0 LoComm