import com.intellij.debugger.ui.tree.render.DescriptorLabelListener;
import com.intellij.rt.debugger.ImageSerializer;
import com.intellij.ui.components.JBLabel;
+import com.intellij.ui.components.JBScrollPane;
import com.intellij.xdebugger.frame.XFullValueEvaluator;
import com.sun.jdi.*;
import org.jetbrains.annotations.NotNull;
return new CustomPopupFullValueEvaluator(" (Show image)", evaluationContext) {
@Override
protected JComponent createComponent() {
- return new JBLabel(getIcon(myEvaluationContext, valueDescriptor.getValue(), "imageToBytes"));
+ return new JBScrollPane(new JBLabel(getIcon(myEvaluationContext, valueDescriptor.getValue(), "imageToBytes")));
}
};
}
public static Window getWindow(Component component) {
return component instanceof Window ? (Window)component : SwingUtilities.getWindowAncestor(component);
}
+
+ public static Image getDebugImage(Component component) {
+ BufferedImage image = createImage(component.getWidth(), component.getHeight(), BufferedImage.TYPE_INT_ARGB);
+ Graphics2D graphics = image.createGraphics();
+ graphics.setColor(Color.RED);
+ graphics.fillRect(0, 0, component.getWidth() + 1, component.getHeight() + 1);
+ component.paint(graphics);
+ return image;
+ }
}