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