overlay: optimize some menu handling code
This commit is contained in:
@@ -24,16 +24,14 @@
|
|||||||
*/
|
*/
|
||||||
package net.runelite.client.events;
|
package net.runelite.client.events;
|
||||||
|
|
||||||
import lombok.AllArgsConstructor;
|
import lombok.Value;
|
||||||
import lombok.Data;
|
|
||||||
import net.runelite.client.ui.overlay.Overlay;
|
import net.runelite.client.ui.overlay.Overlay;
|
||||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Event fired when an overlay menu entry is clicked.
|
* Event fired when an overlay menu entry is clicked.
|
||||||
*/
|
*/
|
||||||
@Data
|
@Value
|
||||||
@AllArgsConstructor
|
|
||||||
public class OverlayMenuClicked
|
public class OverlayMenuClicked
|
||||||
{
|
{
|
||||||
private OverlayMenuEntry entry;
|
private OverlayMenuEntry entry;
|
||||||
|
|||||||
@@ -143,10 +143,9 @@ public class OverlayManager
|
|||||||
|
|
||||||
event.consume();
|
event.consume();
|
||||||
|
|
||||||
Optional<Overlay> optionalOverlay = overlays.stream().filter(o -> overlays.indexOf(o) == event.getId()).findAny();
|
Overlay overlay = overlays.get(event.getId());
|
||||||
if (optionalOverlay.isPresent())
|
if (overlay != null)
|
||||||
{
|
{
|
||||||
Overlay overlay = optionalOverlay.get();
|
|
||||||
List<OverlayMenuEntry> menuEntries = overlay.getMenuEntries();
|
List<OverlayMenuEntry> menuEntries = overlay.getMenuEntries();
|
||||||
Optional<OverlayMenuEntry> optionalOverlayMenuEntry = menuEntries.stream()
|
Optional<OverlayMenuEntry> optionalOverlayMenuEntry = menuEntries.stream()
|
||||||
.filter(me -> me.getOption().equals(event.getMenuOption()))
|
.filter(me -> me.getOption().equals(event.getMenuOption()))
|
||||||
|
|||||||
@@ -792,6 +792,11 @@ public class OverlayRenderer extends MouseAdapter implements KeyListener
|
|||||||
private MenuEntry[] createRightClickMenuEntries(Overlay overlay)
|
private MenuEntry[] createRightClickMenuEntries(Overlay overlay)
|
||||||
{
|
{
|
||||||
List<OverlayMenuEntry> menuEntries = overlay.getMenuEntries();
|
List<OverlayMenuEntry> menuEntries = overlay.getMenuEntries();
|
||||||
|
if (menuEntries.isEmpty())
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
final MenuEntry[] entries = new MenuEntry[menuEntries.size()];
|
final MenuEntry[] entries = new MenuEntry[menuEntries.size()];
|
||||||
|
|
||||||
// Add in reverse order so they display correctly in the right-click menu
|
// Add in reverse order so they display correctly in the right-click menu
|
||||||
|
|||||||
Reference in New Issue
Block a user