Use new LayoutableRenderableEntity#getBounds in InfoboxOverlay

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
This commit is contained in:
Tomas Slusny
2019-02-04 20:54:40 +01:00
parent 8d821abfa4
commit a536c9e775
2 changed files with 4 additions and 19 deletions

View File

@@ -44,15 +44,11 @@ public class InfoBoxComponent implements LayoutableRenderableEntity
@Getter
private String tooltip;
@Getter
private Point preferredLocation = new Point();
@Setter
private Dimension preferredSize = new Dimension(DEFAULT_SIZE, DEFAULT_SIZE);
@Getter
private final Rectangle bounds = new Rectangle();
private Point preferredLocation = new Point();
private Dimension preferredSize = new Dimension(DEFAULT_SIZE, DEFAULT_SIZE);
private String text;
private Color color = Color.WHITE;
private Color backgroundColor = ComponentConstants.STANDARD_BACKGROUND_COLOR;
@@ -100,11 +96,6 @@ public class InfoBoxComponent implements LayoutableRenderableEntity
return bounds.getSize();
}
public Dimension getPreferredSize()
{
return new Dimension(getSize(), getSize());
}
private int getSize()
{
return Math.max(preferredSize.width, preferredSize.height);

View File

@@ -37,7 +37,6 @@ import net.runelite.api.Client;
import net.runelite.client.config.RuneLiteConfig;
import net.runelite.client.ui.overlay.Overlay;
import net.runelite.client.ui.overlay.OverlayPosition;
import net.runelite.client.ui.overlay.OverlayUtil;
import net.runelite.client.ui.overlay.components.InfoBoxComponent;
import net.runelite.client.ui.overlay.components.LayoutableRenderableEntity;
import net.runelite.client.ui.overlay.components.PanelComponent;
@@ -116,15 +115,10 @@ public class InfoBoxOverlay extends Overlay
if (!Strings.isNullOrEmpty(component.getTooltip()))
{
final Rectangle intersectionRectangle = new Rectangle(component.getPreferredLocation(), component.getPreferredSize());
// Move the intersection based on overlay position
// Create intersection rectangle
final Rectangle intersectionRectangle = new Rectangle(component.getBounds());
intersectionRectangle.translate(getBounds().x, getBounds().y);
// Move the intersection based on overlay "orientation"
final Point transformed = OverlayUtil.transformPosition(getPosition(), intersectionRectangle.getSize());
intersectionRectangle.translate(transformed.x, transformed.y);
if (intersectionRectangle.contains(mouse))
{
tooltipManager.add(new Tooltip(component.getTooltip()));