Package ghidra.framework.main

# Class ZoomedImagePainter

java.lang.Object
ghidra.framework.main.ZoomedImagePainter

All Implemented Interfaces:
  `GGlassPanePainter`

public class ZoomedImagePainter extends Object implements GGlassPanePainter
A class that paints a given image with varying zoom levels. The zoom is set by clients according to changes made by an `Animator`. In essence, this class paints the given image centered over the given target bounds at some level of zoom. If the zoom or bounds of the parent container are never changed, then the image painted by this class will not change.

NOTE: This class and it's getters/setters need to be public for reflective callbacks

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `ZoomedImagePainter(Rectangle targetBounds, Image image)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static Image`
  `createIconImage(Icon icon)`
  `Rectangle`
  `getTargetBounds()`
  `float`
  `getZoom()`
  `void`
  `paint(GGlassPane glassPane, Graphics g)`
  `void`
  `setMagnifyFactor(float factor)`
  `void`
  `setTargetBounds(Rectangle containerBounds)`
  `void`
  `setZoom(float zoom)`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### ZoomedImagePainter

    public ZoomedImagePainter(Rectangle targetBounds, Image image)

- ## Method Details

  - ### paint

    public void paint(GGlassPane glassPane, Graphics g)
    Specified by:
      `paint` in interface `GGlassPanePainter`

  - ### getZoom

    public float getZoom()

  - ### setZoom

    public void setZoom(float zoom)

  - ### getTargetBounds

    public Rectangle getTargetBounds()

  - ### setTargetBounds

    public void setTargetBounds(Rectangle containerBounds)

  - ### setMagnifyFactor

    public void setMagnifyFactor(float factor)

  - ### createIconImage

    public static Image createIconImage(Icon icon)