screen markers: make ScreenMarkerRenderable implement RenderableEntity

This component is never added to the overlay componenet renderer so implementing LayoutableRenderableEntity was just unnecessary
This commit is contained in:
Adam
2022-02-19 19:02:10 -05:00
parent d661c47447
commit 9f5a3a7b3b
3 changed files with 10 additions and 27 deletions

View File

@@ -29,7 +29,7 @@ import java.awt.event.MouseEvent;
import javax.swing.SwingUtilities; import javax.swing.SwingUtilities;
import net.runelite.client.input.MouseAdapter; import net.runelite.client.input.MouseAdapter;
public class ScreenMarkerMouseListener extends MouseAdapter class ScreenMarkerMouseListener extends MouseAdapter
{ {
private final ScreenMarkerPlugin plugin; private final ScreenMarkerPlugin plugin;

View File

@@ -78,7 +78,7 @@ public class ScreenMarkerOverlay extends Overlay
screenMarkerRenderable.setColor(marker.getColor()); screenMarkerRenderable.setColor(marker.getColor());
screenMarkerRenderable.setFill(marker.getFill()); screenMarkerRenderable.setFill(marker.getFill());
screenMarkerRenderable.setStroke(new BasicStroke(marker.getBorderThickness())); screenMarkerRenderable.setStroke(new BasicStroke(marker.getBorderThickness()));
screenMarkerRenderable.setPreferredSize(preferredSize); screenMarkerRenderable.setSize(preferredSize);
return screenMarkerRenderable.render(graphics); return screenMarkerRenderable.render(graphics);
} }
} }

View File

@@ -27,44 +27,28 @@ package net.runelite.client.plugins.screenmarkers;
import java.awt.Color; import java.awt.Color;
import java.awt.Dimension; import java.awt.Dimension;
import java.awt.Graphics2D; import java.awt.Graphics2D;
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.Stroke; import java.awt.Stroke;
import lombok.AccessLevel; import lombok.AccessLevel;
import lombok.Getter; import lombok.Getter;
import lombok.Setter; import lombok.Setter;
import net.runelite.client.ui.overlay.components.LayoutableRenderableEntity; import net.runelite.client.ui.overlay.RenderableEntity;
public class ScreenMarkerRenderable implements LayoutableRenderableEntity @Getter(AccessLevel.PACKAGE)
@Setter(AccessLevel.PACKAGE)
class ScreenMarkerRenderable implements RenderableEntity
{ {
@Getter(AccessLevel.PACKAGE) private Dimension size;
@Setter
private Point preferredLocation;
@Getter(AccessLevel.PACKAGE)
@Setter
private Dimension preferredSize;
@Getter(AccessLevel.PACKAGE)
@Setter(AccessLevel.PACKAGE)
private int borderThickness; private int borderThickness;
@Getter(AccessLevel.PACKAGE)
@Setter(AccessLevel.PACKAGE)
private Color color; private Color color;
@Getter(AccessLevel.PACKAGE)
@Setter(AccessLevel.PACKAGE)
private Color fill; private Color fill;
@Getter(AccessLevel.PACKAGE)
@Setter(AccessLevel.PACKAGE)
private Stroke stroke; private Stroke stroke;
@Getter
private final Rectangle bounds = new Rectangle();
@Override @Override
public Dimension render(Graphics2D graphics) public Dimension render(Graphics2D graphics)
{ {
int thickness = borderThickness; int thickness = borderThickness;
int width = preferredSize.width; int width = size.width;
int height = preferredSize.height; int height = size.height;
//draw the fill //draw the fill
graphics.setColor(fill); graphics.setColor(fill);
@@ -76,7 +60,6 @@ public class ScreenMarkerRenderable implements LayoutableRenderableEntity
graphics.setColor(color); graphics.setColor(color);
graphics.setStroke(stroke); graphics.setStroke(stroke);
graphics.drawRect(offset, offset, width - thickness, height - thickness); graphics.drawRect(offset, offset, width - thickness, height - thickness);
bounds.setSize(preferredSize); return size;
return preferredSize;
} }
} }