Add option to swap sides of mouse highlighting (#168)
* Add option to swap sides of mouse highlighting * Fix not drawing off of the top of the screen not fully working
This commit is contained in:
@@ -46,6 +46,16 @@ public interface MouseHighlightConfig
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "display_left",
|
||||||
|
name = "Display to the left of mouse?",
|
||||||
|
description = "Display to the left of the mouse or the right?"
|
||||||
|
)
|
||||||
|
default boolean display_left()
|
||||||
|
{
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
@ConfigItem(
|
@ConfigItem(
|
||||||
keyName = "border",
|
keyName = "border",
|
||||||
name = "Border Color",
|
name = "Border Color",
|
||||||
|
|||||||
@@ -125,17 +125,32 @@ class MouseHighlightOverlay extends Overlay
|
|||||||
}
|
}
|
||||||
int height = fm.getHeight();
|
int height = fm.getHeight();
|
||||||
|
|
||||||
x -= total_width + 6; // Draw to the left of the mouse
|
if (config.display_left())
|
||||||
|
{
|
||||||
|
x -= total_width + 6; // Draw to the left of the mouse
|
||||||
|
|
||||||
|
// Don't draw off of the screen (left)
|
||||||
|
if (x < 0)
|
||||||
|
{
|
||||||
|
x = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// Don't draw off of the screen (right)
|
||||||
|
int canvas_width = client.getCanvas().getWidth();
|
||||||
|
if (x + total_width + 7 > canvas_width)
|
||||||
|
{
|
||||||
|
x = canvas_width - total_width - 7;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
y -= height / 2; // Draw slightly above the mouse
|
y -= height / 2; // Draw slightly above the mouse
|
||||||
|
|
||||||
// Don't draw off of the screen
|
// Don't draw off of the screen (top)
|
||||||
if (x < 0)
|
if (y < height / 2)
|
||||||
{
|
{
|
||||||
x = 0;
|
y = height / 2;
|
||||||
}
|
|
||||||
if (y < 0)
|
|
||||||
{
|
|
||||||
y = 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
Color gray = new Color(Color.darkGray.getRed(), Color.darkGray.getGreen(), Color.darkGray.getBlue(), 190);
|
Color gray = new Color(Color.darkGray.getRed(), Color.darkGray.getGreen(), Color.darkGray.getBlue(), 190);
|
||||||
|
|||||||
Reference in New Issue
Block a user