Make overlays use OverlayPanel instead of Overlay
Make overlays that were previously using PanelComponent use OverlayPanel. Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
This commit is contained in:
@@ -30,21 +30,18 @@ import java.time.Duration;
|
||||
import java.time.Instant;
|
||||
import javax.inject.Inject;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
class LapCounterOverlay extends Overlay
|
||||
class LapCounterOverlay extends OverlayPanel
|
||||
{
|
||||
private final AgilityPlugin plugin;
|
||||
private final AgilityConfig config;
|
||||
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private LapCounterOverlay(AgilityPlugin plugin, AgilityConfig config)
|
||||
{
|
||||
@@ -79,7 +76,6 @@ class LapCounterOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
panelComponent.getChildren().add(LineComponent.builder()
|
||||
.left("Total Laps:")
|
||||
.right(Integer.toString(session.getTotalLaps()))
|
||||
@@ -93,6 +89,6 @@ class LapCounterOverlay extends Overlay
|
||||
.build());
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -29,18 +29,16 @@ import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import javax.inject.Inject;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
|
||||
class AttackStylesOverlay extends Overlay
|
||||
class AttackStylesOverlay extends OverlayPanel
|
||||
{
|
||||
private final AttackStylesPlugin plugin;
|
||||
private final AttackStylesConfig config;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private AttackStylesOverlay(AttackStylesPlugin plugin, AttackStylesConfig config)
|
||||
@@ -55,7 +53,6 @@ class AttackStylesOverlay extends Overlay
|
||||
@Override
|
||||
public Dimension render(Graphics2D graphics)
|
||||
{
|
||||
panelComponent.getChildren().clear();
|
||||
boolean warnedSkillSelected = plugin.isWarnedSkillSelected();
|
||||
|
||||
if (warnedSkillSelected || config.alwaysShowStyle())
|
||||
@@ -78,7 +75,7 @@ class AttackStylesOverlay extends Overlay
|
||||
graphics.getFontMetrics().stringWidth(attackStyleString) + 10,
|
||||
0));
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
return null;
|
||||
|
||||
@@ -33,18 +33,16 @@ import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.api.Varbits;
|
||||
import net.runelite.api.widgets.Widget;
|
||||
import net.runelite.api.widgets.WidgetInfo;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
public class BarrowsBrotherSlainOverlay extends Overlay
|
||||
public class BarrowsBrotherSlainOverlay extends OverlayPanel
|
||||
{
|
||||
private final Client client;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private BarrowsBrotherSlainOverlay(BarrowsPlugin plugin, Client client)
|
||||
@@ -74,8 +72,6 @@ public class BarrowsBrotherSlainOverlay extends Overlay
|
||||
potential.setHidden(true);
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
for (BarrowsBrothers brother : BarrowsBrothers.values())
|
||||
{
|
||||
final boolean brotherSlain = client.getVar(brother.getKilledVarbit()) > 0;
|
||||
@@ -94,6 +90,6 @@ public class BarrowsBrotherSlainOverlay extends Overlay
|
||||
.rightColor(rewardPercent >= 73.0f && rewardPercent <= 88.0f ? Color.GREEN : rewardPercent < 65.6f ? Color.WHITE : Color.YELLOW)
|
||||
.build());
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,23 +32,21 @@ import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import static net.runelite.api.Varbits.BLAST_FURNACE_COFFER;
|
||||
import net.runelite.api.widgets.Widget;
|
||||
import net.runelite.api.widgets.WidgetInfo;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import static org.apache.commons.lang3.time.DurationFormatUtils.formatDuration;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.util.QuantityFormatter;
|
||||
import static org.apache.commons.lang3.time.DurationFormatUtils.formatDuration;
|
||||
|
||||
class BlastFurnaceCofferOverlay extends Overlay
|
||||
class BlastFurnaceCofferOverlay extends OverlayPanel
|
||||
{
|
||||
private static final float COST_PER_HOUR = 72000.0f;
|
||||
|
||||
private final Client client;
|
||||
private final BlastFurnacePlugin plugin;
|
||||
private final BlastFurnaceConfig config;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private BlastFurnaceCofferOverlay(Client client, BlastFurnacePlugin plugin, BlastFurnaceConfig config)
|
||||
@@ -71,8 +69,6 @@ class BlastFurnaceCofferOverlay extends Overlay
|
||||
|
||||
Widget sack = client.getWidget(WidgetInfo.BLAST_FURNACE_COFFER);
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
if (sack != null)
|
||||
{
|
||||
final int coffer = client.getVar(BLAST_FURNACE_COFFER);
|
||||
@@ -95,6 +91,6 @@ class BlastFurnaceCofferOverlay extends Overlay
|
||||
}
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,19 +31,17 @@ import javax.inject.Inject;
|
||||
import net.runelite.api.Client;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.client.game.ItemManager;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.ComponentOrientation;
|
||||
import net.runelite.client.ui.overlay.components.ImageComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
class BlastFurnaceOverlay extends Overlay
|
||||
class BlastFurnaceOverlay extends OverlayPanel
|
||||
{
|
||||
private final Client client;
|
||||
private final BlastFurnacePlugin plugin;
|
||||
private final PanelComponent imagePanelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private ItemManager itemManager;
|
||||
@@ -55,7 +53,7 @@ class BlastFurnaceOverlay extends Overlay
|
||||
this.plugin = plugin;
|
||||
this.client = client;
|
||||
setPosition(OverlayPosition.TOP_LEFT);
|
||||
imagePanelComponent.setOrientation(ComponentOrientation.HORIZONTAL);
|
||||
panelComponent.setOrientation(ComponentOrientation.HORIZONTAL);
|
||||
getMenuEntries().add(new OverlayMenuEntry(RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "Blast furnace overlay"));
|
||||
}
|
||||
|
||||
@@ -67,8 +65,6 @@ class BlastFurnaceOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
imagePanelComponent.getChildren().clear();
|
||||
|
||||
for (BarsOres varbit : BarsOres.values())
|
||||
{
|
||||
int amount = client.getVar(varbit.getVarbit());
|
||||
@@ -78,10 +74,10 @@ class BlastFurnaceOverlay extends Overlay
|
||||
continue;
|
||||
}
|
||||
|
||||
imagePanelComponent.getChildren().add(new ImageComponent(getImage(varbit.getItemID(), amount)));
|
||||
panelComponent.getChildren().add(new ImageComponent(getImage(varbit.getItemID(), amount)));
|
||||
}
|
||||
|
||||
return imagePanelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
private BufferedImage getImage(int itemID, int amount)
|
||||
|
||||
@@ -35,20 +35,18 @@ import net.runelite.api.Varbits;
|
||||
import net.runelite.api.widgets.Widget;
|
||||
import net.runelite.api.widgets.WidgetInfo;
|
||||
import net.runelite.client.game.ItemManager;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.ComponentOrientation;
|
||||
import net.runelite.client.ui.overlay.components.ImageComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
class BlastMineOreCountOverlay extends Overlay
|
||||
class BlastMineOreCountOverlay extends OverlayPanel
|
||||
{
|
||||
private final Client client;
|
||||
private final BlastMinePluginConfig config;
|
||||
private final ItemManager itemManager;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private BlastMineOreCountOverlay(BlastMinePlugin plugin, Client client, BlastMinePluginConfig config, ItemManager itemManager)
|
||||
@@ -72,8 +70,6 @@ class BlastMineOreCountOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
if (config.showOreOverlay())
|
||||
{
|
||||
blastMineWidget.setHidden(true);
|
||||
@@ -88,7 +84,7 @@ class BlastMineOreCountOverlay extends Overlay
|
||||
blastMineWidget.setHidden(false);
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
private BufferedImage getImage(int itemID, int amount)
|
||||
|
||||
@@ -32,20 +32,18 @@ import javax.inject.Inject;
|
||||
import net.runelite.api.Client;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.api.Skill;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.util.ColorUtil;
|
||||
|
||||
class BoostsOverlay extends Overlay
|
||||
class BoostsOverlay extends OverlayPanel
|
||||
{
|
||||
private final Client client;
|
||||
private final BoostsConfig config;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
private final BoostsPlugin plugin;
|
||||
|
||||
@Inject
|
||||
@@ -68,8 +66,6 @@ class BoostsOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
int nextChange = plugin.getChangeDownTicks();
|
||||
|
||||
if (nextChange != -1)
|
||||
@@ -94,7 +90,7 @@ class BoostsOverlay extends Overlay
|
||||
|
||||
if (boostedSkills.isEmpty())
|
||||
{
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
if (plugin.canShowBoosts())
|
||||
@@ -129,7 +125,7 @@ class BoostsOverlay extends Overlay
|
||||
}
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
private Color getTextColor(int boost)
|
||||
|
||||
@@ -41,15 +41,13 @@ import net.runelite.client.plugins.cluescrolls.clues.item.AnyRequirementCollecti
|
||||
import net.runelite.client.plugins.cluescrolls.clues.item.ItemRequirement;
|
||||
import static net.runelite.client.plugins.cluescrolls.clues.item.ItemRequirements.item;
|
||||
import net.runelite.client.plugins.cluescrolls.clues.item.SingleItemRequirement;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.ComponentConstants;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
public class ClueScrollOverlay extends Overlay
|
||||
public class ClueScrollOverlay extends OverlayPanel
|
||||
{
|
||||
private static final ItemRequirement HAS_SPADE = new SingleItemRequirement(SPADE);
|
||||
private static final ItemRequirement HAS_LIGHT = new AnyRequirementCollection("Light Source",
|
||||
@@ -79,7 +77,6 @@ public class ClueScrollOverlay extends Overlay
|
||||
public static final Color TITLED_CONTENT_COLOR = new Color(190, 190, 190);
|
||||
|
||||
private final ClueScrollPlugin plugin;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
private final Client client;
|
||||
|
||||
@Inject
|
||||
@@ -103,9 +100,6 @@ public class ClueScrollOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
panelComponent.setPreferredSize(new Dimension(ComponentConstants.STANDARD_WIDTH, 0));
|
||||
|
||||
clue.makeOverlayHint(panelComponent, plugin);
|
||||
|
||||
final Item[] inventoryItems = plugin.getInventoryItems();
|
||||
@@ -129,6 +123,6 @@ public class ClueScrollOverlay extends Overlay
|
||||
panelComponent.getChildren().add(LineComponent.builder().left("Requires Light Source!").leftColor(Color.RED).build());
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
package net.runelite.client.plugins.cluescrolls.clues;
|
||||
|
||||
import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collection;
|
||||
@@ -59,7 +58,6 @@ import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
@Slf4j
|
||||
public class HotColdClue extends ClueScroll implements LocationClueScroll, LocationsClueScroll, TextClueScroll, NpcClueScroll
|
||||
{
|
||||
private static final int HOT_COLD_PANEL_WIDTH = 200;
|
||||
private static final HotColdClue BEGINNER_CLUE = new HotColdClue("Buried beneath the ground, who knows where it's found. Lucky for you, A man called Reldo may have a clue.",
|
||||
"Reldo",
|
||||
"Speak to Reldo to receive a strange device.",
|
||||
@@ -141,7 +139,6 @@ public class HotColdClue extends ClueScroll implements LocationClueScroll, Locat
|
||||
panelComponent.getChildren().add(TitleComponent.builder()
|
||||
.text("Hot/Cold Clue")
|
||||
.build());
|
||||
panelComponent.setPreferredSize(new Dimension(HOT_COLD_PANEL_WIDTH, 0));
|
||||
|
||||
// strange device has not been tested yet, show how to get it
|
||||
if (hotColdSolver.getLastWorldPoint() == null && location == null)
|
||||
|
||||
@@ -29,8 +29,8 @@ import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.text.DecimalFormat;
|
||||
import java.time.Instant;
|
||||
import java.time.Duration;
|
||||
import java.time.Instant;
|
||||
import javax.inject.Inject;
|
||||
import static net.runelite.api.AnimationID.COOKING_FIRE;
|
||||
import static net.runelite.api.AnimationID.COOKING_RANGE;
|
||||
@@ -39,15 +39,14 @@ import static net.runelite.api.MenuAction.RUNELITE_OVERLAY;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.api.Skill;
|
||||
import net.runelite.client.plugins.xptracker.XpTrackerService;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
|
||||
class CookingOverlay extends Overlay
|
||||
class CookingOverlay extends OverlayPanel
|
||||
{
|
||||
private static final int COOK_TIMEOUT = 3;
|
||||
private static final DecimalFormat FORMAT = new DecimalFormat("#.#");
|
||||
@@ -57,7 +56,6 @@ class CookingOverlay extends Overlay
|
||||
private final CookingPlugin plugin;
|
||||
private final CookingConfig config;
|
||||
private final XpTrackerService xpTrackerService;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private CookingOverlay(Client client, CookingPlugin plugin, CookingConfig config, XpTrackerService xpTrackerService)
|
||||
@@ -81,8 +79,6 @@ class CookingOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
if (isCooking() || Duration.between(session.getLastCookingAction(), Instant.now()).getSeconds() < COOK_TIMEOUT)
|
||||
{
|
||||
panelComponent.getChildren().add(TitleComponent.builder()
|
||||
@@ -108,7 +104,7 @@ class CookingOverlay extends Overlay
|
||||
.right(session.getBurnAmount() + (session.getBurnAmount() >= 1 ? " (" + FORMAT.format(session.getBurntPercentage()) + "%)" : ""))
|
||||
.build());
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
private boolean isCooking()
|
||||
|
||||
@@ -36,24 +36,21 @@ import net.runelite.api.Varbits;
|
||||
import net.runelite.api.coords.WorldPoint;
|
||||
import net.runelite.api.widgets.Widget;
|
||||
import net.runelite.api.widgets.WidgetID;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayLayer;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.ComponentConstants;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
class CorpDamageOverlay extends Overlay
|
||||
class CorpDamageOverlay extends OverlayPanel
|
||||
{
|
||||
private final Client client;
|
||||
private final CorpPlugin corpPlugin;
|
||||
private final CorpConfig config;
|
||||
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private CorpDamageOverlay(Client client, CorpPlugin corpPlugin, CorpConfig config)
|
||||
{
|
||||
@@ -89,8 +86,6 @@ class CorpDamageOverlay extends Overlay
|
||||
// estimate how much damage is required for kill based on number of players
|
||||
int damageForKill = players != 0 ? totalDamage / players : 0;
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
NPC core = corpPlugin.getCore();
|
||||
if (core != null)
|
||||
{
|
||||
@@ -135,6 +130,6 @@ class CorpDamageOverlay extends Overlay
|
||||
.build());
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -28,24 +28,21 @@ import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import javax.inject.Inject;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
|
||||
public class CameraOverlay extends Overlay
|
||||
public class CameraOverlay extends OverlayPanel
|
||||
{
|
||||
private final Client client;
|
||||
private final DevToolsPlugin plugin;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
CameraOverlay(Client client, DevToolsPlugin plugin)
|
||||
{
|
||||
this.client = client;
|
||||
this.plugin = plugin;
|
||||
panelComponent.setPreferredSize(new Dimension(150, 0));
|
||||
setPosition(OverlayPosition.TOP_LEFT);
|
||||
}
|
||||
|
||||
@@ -57,8 +54,6 @@ public class CameraOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
panelComponent.getChildren().add(TitleComponent.builder()
|
||||
.text("Camera")
|
||||
.build());
|
||||
@@ -93,6 +88,6 @@ public class CameraOverlay extends Overlay
|
||||
.right("" + client.getScale())
|
||||
.build());
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,23 +32,20 @@ import net.runelite.api.Client;
|
||||
import static net.runelite.api.Constants.CHUNK_SIZE;
|
||||
import net.runelite.api.coords.LocalPoint;
|
||||
import net.runelite.api.coords.WorldPoint;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
public class LocationOverlay extends Overlay
|
||||
public class LocationOverlay extends OverlayPanel
|
||||
{
|
||||
private final Client client;
|
||||
private final DevToolsPlugin plugin;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
LocationOverlay(Client client, DevToolsPlugin plugin)
|
||||
{
|
||||
this.client = client;
|
||||
this.plugin = plugin;
|
||||
panelComponent.setPreferredSize(new Dimension(150, 0));
|
||||
setPosition(OverlayPosition.TOP_LEFT);
|
||||
}
|
||||
|
||||
@@ -60,7 +57,6 @@ public class LocationOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
WorldPoint localWorld = client.getLocalPlayer().getWorldLocation();
|
||||
LocalPoint localPoint = client.getLocalPlayer().getLocalLocation();
|
||||
|
||||
@@ -117,6 +113,6 @@ public class LocationOverlay extends Overlay
|
||||
.build());
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,12 +34,11 @@ import net.runelite.api.coords.LocalPoint;
|
||||
import net.runelite.api.events.AreaSoundEffectPlayed;
|
||||
import net.runelite.api.events.SoundEffectPlayed;
|
||||
import net.runelite.client.eventbus.Subscribe;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
class SoundEffectOverlay extends Overlay
|
||||
class SoundEffectOverlay extends OverlayPanel
|
||||
{
|
||||
private final static int MAX_LINES = 16;
|
||||
private final static Color COLOR_SOUND_EFFECT = Color.WHITE;
|
||||
@@ -48,18 +47,17 @@ class SoundEffectOverlay extends Overlay
|
||||
|
||||
private final Client client;
|
||||
private final DevToolsPlugin plugin;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
SoundEffectOverlay(Client client, DevToolsPlugin plugin)
|
||||
{
|
||||
this.client = client;
|
||||
this.plugin = plugin;
|
||||
panelComponent.setPreferredSize(new Dimension(200, 0));
|
||||
panelComponent.getChildren().add(LineComponent.builder()
|
||||
.left("Sound Effects")
|
||||
.leftColor(Color.CYAN)
|
||||
.build());
|
||||
setClearChildren(false);
|
||||
setPosition(OverlayPosition.TOP_LEFT);
|
||||
}
|
||||
|
||||
@@ -71,7 +69,7 @@ class SoundEffectOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
@Subscribe
|
||||
|
||||
@@ -34,18 +34,17 @@ import javax.inject.Inject;
|
||||
import net.runelite.api.Client;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY;
|
||||
import net.runelite.api.Player;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.components.ComponentConstants;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
import net.runelite.client.ui.overlay.tooltip.Tooltip;
|
||||
import net.runelite.client.ui.overlay.tooltip.TooltipManager;
|
||||
import net.runelite.client.util.QuantityFormatter;
|
||||
import net.runelite.client.ws.PartyService;
|
||||
|
||||
class DpsOverlay extends Overlay
|
||||
class DpsOverlay extends OverlayPanel
|
||||
{
|
||||
private static final DecimalFormat DPS_FORMAT = new DecimalFormat("#0.0");
|
||||
private static final int PANEL_WIDTH_OFFSET = 10; // assumes 8 for panel component border + 2px between left and right
|
||||
@@ -60,8 +59,6 @@ class DpsOverlay extends Overlay
|
||||
private final Client client;
|
||||
private final TooltipManager tooltipManager;
|
||||
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
DpsOverlay(DpsCounterPlugin dpsCounterPlugin, DpsConfig dpsConfig, PartyService partyService, Client client,
|
||||
TooltipManager tooltipManager)
|
||||
@@ -108,8 +105,6 @@ class DpsOverlay extends Overlay
|
||||
DpsMember total = dpsCounterPlugin.getTotal();
|
||||
boolean paused = total.isPaused();
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
final String title = (inParty ? "Party " : "") + (showDamage ? "Damage" : "DPS") + (paused ? " (paused)" : "");
|
||||
panelComponent.getChildren().add(
|
||||
TitleComponent.builder()
|
||||
@@ -151,7 +146,7 @@ class DpsOverlay extends Overlay
|
||||
}
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
void setPaused(boolean paused)
|
||||
|
||||
@@ -24,12 +24,12 @@
|
||||
*/
|
||||
package net.runelite.client.plugins.fishing;
|
||||
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import java.awt.Color;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import java.util.Set;
|
||||
import javax.inject.Inject;
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import net.runelite.api.AnimationID;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.api.GraphicID;
|
||||
@@ -37,15 +37,14 @@ import static net.runelite.api.MenuAction.RUNELITE_OVERLAY;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.api.Skill;
|
||||
import net.runelite.client.plugins.xptracker.XpTrackerService;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
|
||||
class FishingOverlay extends Overlay
|
||||
class FishingOverlay extends OverlayPanel
|
||||
{
|
||||
private static final String FISHING_SPOT = "Fishing spot";
|
||||
static final String FISHING_RESET = "Reset";
|
||||
@@ -77,8 +76,6 @@ class FishingOverlay extends Overlay
|
||||
private final FishingConfig config;
|
||||
private final XpTrackerService xpTrackerService;
|
||||
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
public FishingOverlay(Client client, FishingPlugin plugin, FishingConfig config, XpTrackerService xpTrackerService)
|
||||
{
|
||||
@@ -100,7 +97,6 @@ class FishingOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
if (client.getLocalPlayer().getInteracting() != null
|
||||
&& client.getLocalPlayer().getInteracting().getName().contains(FISHING_SPOT)
|
||||
&& client.getLocalPlayer().getInteracting().getGraphic() != GraphicID.FLYING_FISH
|
||||
@@ -136,6 +132,6 @@ class FishingOverlay extends Overlay
|
||||
}
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -36,13 +36,12 @@ import net.runelite.api.Item;
|
||||
import net.runelite.api.ItemComposition;
|
||||
import net.runelite.api.ItemContainer;
|
||||
import net.runelite.client.game.ItemManager;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.ComponentOrientation;
|
||||
import net.runelite.client.ui.overlay.components.ImageComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
class InventoryViewerOverlay extends Overlay
|
||||
class InventoryViewerOverlay extends OverlayPanel
|
||||
{
|
||||
private static final int INVENTORY_SIZE = 28;
|
||||
private static final ImageComponent PLACEHOLDER_IMAGE = new ImageComponent(
|
||||
@@ -51,8 +50,6 @@ class InventoryViewerOverlay extends Overlay
|
||||
private final Client client;
|
||||
private final ItemManager itemManager;
|
||||
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private InventoryViewerOverlay(Client client, ItemManager itemManager)
|
||||
{
|
||||
@@ -75,8 +72,6 @@ class InventoryViewerOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
final Item[] items = itemContainer.getItems();
|
||||
|
||||
for (int i = 0; i < INVENTORY_SIZE; i++)
|
||||
@@ -99,7 +94,7 @@ class InventoryViewerOverlay extends Overlay
|
||||
panelComponent.getChildren().add(PLACEHOLDER_IMAGE);
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
private BufferedImage getImage(Item item)
|
||||
|
||||
@@ -24,25 +24,23 @@
|
||||
*/
|
||||
package net.runelite.client.plugins.kourendlibrary;
|
||||
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import javax.inject.Inject;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.api.Player;
|
||||
import net.runelite.api.coords.WorldPoint;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import javax.inject.Inject;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
|
||||
class KourendLibraryTutorialOverlay extends Overlay
|
||||
class KourendLibraryTutorialOverlay extends OverlayPanel
|
||||
{
|
||||
private final Client client;
|
||||
private final KourendLibraryConfig config;
|
||||
private final Library library;
|
||||
|
||||
private final PanelComponent panelComponent;
|
||||
private final LineComponent noDataMessageComponent;
|
||||
private final LineComponent incompleteMessageComponent;
|
||||
private final LineComponent completeMessageComponent;
|
||||
@@ -55,7 +53,6 @@ class KourendLibraryTutorialOverlay extends Overlay
|
||||
this.config = config;
|
||||
this.library = library;
|
||||
|
||||
panelComponent = new PanelComponent();
|
||||
panelComponent.setPreferredSize(new Dimension(177, 0));
|
||||
|
||||
noDataMessageComponent = LineComponent.builder().left("Click on the white squares to start finding books.").build();
|
||||
@@ -87,8 +84,6 @@ class KourendLibraryTutorialOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
switch (library.getState())
|
||||
{
|
||||
case NO_DATA:
|
||||
@@ -104,6 +99,6 @@ class KourendLibraryTutorialOverlay extends Overlay
|
||||
break;
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,20 +30,18 @@ import java.time.Duration;
|
||||
import java.time.Instant;
|
||||
import javax.inject.Inject;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
|
||||
public class MotherlodeGemOverlay extends Overlay
|
||||
public class MotherlodeGemOverlay extends OverlayPanel
|
||||
{
|
||||
private final MotherlodePlugin plugin;
|
||||
private final MotherlodeSession motherlodeSession;
|
||||
private final MotherlodeConfig config;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
MotherlodeGemOverlay(MotherlodePlugin plugin, MotherlodeSession motherlodeSession, MotherlodeConfig config)
|
||||
@@ -79,7 +77,6 @@ public class MotherlodeGemOverlay extends Overlay
|
||||
int emeraldsFound = session.getEmeraldsFound();
|
||||
int sapphiresFound = session.getSapphiresFound();
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
panelComponent.getChildren().add(TitleComponent.builder().text("Gems found").build());
|
||||
|
||||
if (diamondsFound > 0)
|
||||
@@ -114,6 +111,6 @@ public class MotherlodeGemOverlay extends Overlay
|
||||
.build());
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,18 +27,16 @@ package net.runelite.client.plugins.motherlode;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import javax.inject.Inject;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
|
||||
public class MotherlodeOreOverlay extends Overlay
|
||||
public class MotherlodeOreOverlay extends OverlayPanel
|
||||
{
|
||||
private final MotherlodePlugin plugin;
|
||||
private final MotherlodeSession motherlodeSession;
|
||||
private final MotherlodeConfig config;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
MotherlodeOreOverlay(MotherlodePlugin plugin, MotherlodeSession motherlodeSession, MotherlodeConfig config)
|
||||
@@ -73,7 +71,6 @@ public class MotherlodeOreOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
panelComponent.getChildren().add(TitleComponent.builder().text("Ores found").build());
|
||||
|
||||
if (nuggetsFound > 0)
|
||||
@@ -124,6 +121,6 @@ public class MotherlodeOreOverlay extends Overlay
|
||||
.build());
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
@@ -32,29 +32,16 @@ import java.time.Duration;
|
||||
import java.time.Instant;
|
||||
import java.util.Set;
|
||||
import javax.inject.Inject;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_ADAMANT;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_BLACK;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_BRONZE;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_CRYSTAL;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_DRAGON;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_DRAGON_OR;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_DRAGON_UPGRADED;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_GILDED;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_INFERNAL;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_IRON;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_MITHRIL;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_RUNE;
|
||||
import static net.runelite.api.AnimationID.MINING_MOTHERLODE_STEEL;
|
||||
import static net.runelite.api.AnimationID.*;
|
||||
import net.runelite.api.Client;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
|
||||
class MotherlodeOverlay extends Overlay
|
||||
class MotherlodeOverlay extends OverlayPanel
|
||||
{
|
||||
private static final Set<Integer> MINING_ANIMATION_IDS = ImmutableSet.of(
|
||||
MINING_MOTHERLODE_BRONZE, MINING_MOTHERLODE_IRON, MINING_MOTHERLODE_STEEL,
|
||||
@@ -69,7 +56,6 @@ class MotherlodeOverlay extends Overlay
|
||||
private final MotherlodePlugin plugin;
|
||||
private final MotherlodeSession motherlodeSession;
|
||||
private final MotherlodeConfig config;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
MotherlodeOverlay(Client client, MotherlodePlugin plugin, MotherlodeSession motherlodeSession, MotherlodeConfig config)
|
||||
@@ -106,8 +92,6 @@ class MotherlodeOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
if (config.showMiningState())
|
||||
{
|
||||
if (MINING_ANIMATION_IDS.contains(client.getLocalPlayer().getAnimation()))
|
||||
@@ -136,6 +120,6 @@ class MotherlodeOverlay extends Overlay
|
||||
.right(session.getRecentMined() > 2 ? Integer.toString(session.getPerHour()) : "")
|
||||
.build());
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -35,17 +35,16 @@ import net.runelite.api.Varbits;
|
||||
import net.runelite.api.widgets.Widget;
|
||||
import net.runelite.api.widgets.WidgetInfo;
|
||||
import net.runelite.client.game.ItemManager;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.infobox.InfoBoxManager;
|
||||
import net.runelite.client.util.QuantityFormatter;
|
||||
|
||||
class NightmareZoneOverlay extends Overlay
|
||||
class NightmareZoneOverlay extends OverlayPanel
|
||||
{
|
||||
private final Client client;
|
||||
private final NightmareZoneConfig config;
|
||||
@@ -54,7 +53,6 @@ class NightmareZoneOverlay extends Overlay
|
||||
private final ItemManager itemManager;
|
||||
|
||||
private AbsorptionCounter absorptionCounter;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
NightmareZoneOverlay(
|
||||
@@ -105,7 +103,6 @@ class NightmareZoneOverlay extends Overlay
|
||||
final int currentPoints = client.getVar(Varbits.NMZ_POINTS);
|
||||
final int totalPoints = currentPoints + client.getVar(VarPlayer.NMZ_REWARD_POINTS);
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
panelComponent.getChildren().add(LineComponent.builder()
|
||||
.left("Points: ")
|
||||
.right(QuantityFormatter.formatNumber(currentPoints))
|
||||
@@ -119,7 +116,7 @@ class NightmareZoneOverlay extends Overlay
|
||||
.right(QuantityFormatter.formatNumber(totalPoints))
|
||||
.build());
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
private void renderAbsorptionCounter()
|
||||
|
||||
@@ -27,17 +27,15 @@ package net.runelite.client.plugins.npcunaggroarea;
|
||||
import com.google.inject.Inject;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
class NpcAggroAreaNotWorkingOverlay extends Overlay
|
||||
class NpcAggroAreaNotWorkingOverlay extends OverlayPanel
|
||||
{
|
||||
private final NpcAggroAreaPlugin plugin;
|
||||
private final NpcAggroAreaConfig config;
|
||||
private final PanelComponent panelComponent;
|
||||
|
||||
@Inject
|
||||
private NpcAggroAreaNotWorkingOverlay(NpcAggroAreaPlugin plugin, NpcAggroAreaConfig config)
|
||||
@@ -45,14 +43,13 @@ class NpcAggroAreaNotWorkingOverlay extends Overlay
|
||||
this.plugin = plugin;
|
||||
this.config = config;
|
||||
|
||||
panelComponent = new PanelComponent();
|
||||
panelComponent.setPreferredSize(new Dimension(150, 0));
|
||||
panelComponent.getChildren().add(LineComponent.builder()
|
||||
.left("Unaggressive NPC timers will start working when you teleport far away or enter a dungeon.")
|
||||
.build());
|
||||
|
||||
setPriority(OverlayPriority.LOW);
|
||||
setPosition(OverlayPosition.TOP_LEFT);
|
||||
setClearChildren(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -63,6 +60,6 @@ class NpcAggroAreaNotWorkingOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -39,19 +39,18 @@ import net.runelite.api.NPC;
|
||||
import net.runelite.api.Player;
|
||||
import net.runelite.client.game.HiscoreManager;
|
||||
import net.runelite.client.game.NPCManager;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.ComponentConstants;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.ProgressBarComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
import net.runelite.client.util.Text;
|
||||
import net.runelite.http.api.hiscore.HiscoreResult;
|
||||
|
||||
class OpponentInfoOverlay extends Overlay
|
||||
class OpponentInfoOverlay extends OverlayPanel
|
||||
{
|
||||
private static final Color HP_GREEN = new Color(0, 146, 54, 230);
|
||||
private static final Color HP_RED = new Color(102, 15, 16, 230);
|
||||
@@ -62,8 +61,6 @@ class OpponentInfoOverlay extends Overlay
|
||||
private final HiscoreManager hiscoreManager;
|
||||
private final NPCManager npcManager;
|
||||
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
private Integer lastMaxHealth;
|
||||
private int lastRatio = 0;
|
||||
private int lastHealthScale = 0;
|
||||
@@ -135,8 +132,6 @@ class OpponentInfoOverlay extends Overlay
|
||||
|
||||
final FontMetrics fontMetrics = graphics.getFontMetrics();
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
// Opponent name
|
||||
int panelWidth = Math.max(ComponentConstants.STANDARD_WIDTH, fontMetrics.stringWidth(opponentName) + ComponentConstants.STANDARD_BORDER + ComponentConstants.STANDARD_BORDER);
|
||||
panelComponent.setPreferredSize(new Dimension(panelWidth, 0));
|
||||
@@ -205,6 +200,6 @@ class OpponentInfoOverlay extends Overlay
|
||||
panelComponent.getChildren().add(progressBarComponent);
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -34,15 +34,15 @@ import java.util.UUID;
|
||||
import javax.inject.Inject;
|
||||
import net.runelite.api.MenuAction;
|
||||
import net.runelite.client.plugins.party.data.PartyData;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.components.ComponentConstants;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.ProgressBarComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
import net.runelite.client.ws.PartyService;
|
||||
|
||||
public class PartyStatsOverlay extends Overlay
|
||||
public class PartyStatsOverlay extends OverlayPanel
|
||||
{
|
||||
private static final Color HP_FG = new Color(0, 146, 54, 230);
|
||||
private static final Color HP_BG = new Color(102, 15, 16, 230);
|
||||
@@ -52,7 +52,6 @@ public class PartyStatsOverlay extends Overlay
|
||||
private final PartyPlugin plugin;
|
||||
private final PartyService party;
|
||||
private final PartyConfig config;
|
||||
private final PanelComponent body = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private PartyStatsOverlay(final PartyPlugin plugin, final PartyService party, final PartyConfig config)
|
||||
@@ -61,8 +60,8 @@ public class PartyStatsOverlay extends Overlay
|
||||
this.plugin = plugin;
|
||||
this.party = party;
|
||||
this.config = config;
|
||||
body.setBorder(new Rectangle());
|
||||
body.setGap(new Point(0, ComponentConstants.STANDARD_BORDER / 2));
|
||||
panelComponent.setBorder(new Rectangle());
|
||||
panelComponent.setGap(new Point(0, ComponentConstants.STANDARD_BORDER / 2));
|
||||
getMenuEntries().add(new OverlayMenuEntry(MenuAction.RUNELITE_OVERLAY, "Leave", "Party"));
|
||||
}
|
||||
|
||||
@@ -80,8 +79,7 @@ public class PartyStatsOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
body.getChildren().clear();
|
||||
body.setBackgroundColor(null);
|
||||
panelComponent.setBackgroundColor(null);
|
||||
|
||||
boolean only1 = plugin.getPartyDataMap().size() == 1;
|
||||
|
||||
@@ -93,7 +91,7 @@ public class PartyStatsOverlay extends Overlay
|
||||
{
|
||||
if (only1)
|
||||
{
|
||||
body.getChildren().add(TitleComponent.builder()
|
||||
panelComponent.getChildren().add(TitleComponent.builder()
|
||||
.text("No other party members")
|
||||
.color(Color.RED)
|
||||
.build());
|
||||
@@ -134,10 +132,10 @@ public class PartyStatsOverlay extends Overlay
|
||||
panel.getChildren().add(prayBar);
|
||||
}
|
||||
|
||||
body.getChildren().add(panel);
|
||||
panelComponent.getChildren().add(panel);
|
||||
});
|
||||
}
|
||||
|
||||
return body.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,20 +37,19 @@ import static net.runelite.api.MenuAction.RUNELITE_OVERLAY;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.client.game.WorldService;
|
||||
import net.runelite.client.plugins.raids.solver.Room;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.ComponentConstants;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
import net.runelite.http.api.worlds.World;
|
||||
import net.runelite.http.api.worlds.WorldRegion;
|
||||
import net.runelite.http.api.worlds.WorldResult;
|
||||
|
||||
public class RaidsOverlay extends Overlay
|
||||
public class RaidsOverlay extends OverlayPanel
|
||||
{
|
||||
private static final int OLM_PLANE = 0;
|
||||
static final String BROADCAST_ACTION = "Broadcast layout";
|
||||
@@ -59,7 +58,6 @@ public class RaidsOverlay extends Overlay
|
||||
private Client client;
|
||||
private RaidsPlugin plugin;
|
||||
private RaidsConfig config;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
@@ -90,8 +88,6 @@ public class RaidsOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
if (plugin.getRaid() == null || plugin.getRaid().getLayout() == null)
|
||||
{
|
||||
panelComponent.getChildren().add(TitleComponent.builder()
|
||||
@@ -99,7 +95,7 @@ public class RaidsOverlay extends Overlay
|
||||
.color(Color.RED)
|
||||
.build());
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
Color color = Color.WHITE;
|
||||
@@ -206,6 +202,6 @@ public class RaidsOverlay extends Overlay
|
||||
}
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -37,15 +37,14 @@ import static net.runelite.api.MenuAction.RUNELITE_OVERLAY;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.api.Skill;
|
||||
import net.runelite.client.plugins.xptracker.XpTrackerService;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
|
||||
class SmeltingOverlay extends Overlay
|
||||
class SmeltingOverlay extends OverlayPanel
|
||||
{
|
||||
private static final int SMELT_TIMEOUT = 7;
|
||||
static final String SMELTING_RESET = "Reset";
|
||||
@@ -54,8 +53,6 @@ class SmeltingOverlay extends Overlay
|
||||
private final SmeltingPlugin plugin;
|
||||
private final XpTrackerService xpTrackerService;
|
||||
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
SmeltingOverlay(Client client, SmeltingPlugin plugin, XpTrackerService xpTrackerService)
|
||||
{
|
||||
@@ -77,8 +74,6 @@ class SmeltingOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
if (isSmelting() || Duration.between(session.getLastItemSmelted(), Instant.now()).getSeconds() < SMELT_TIMEOUT)
|
||||
{
|
||||
panelComponent.getChildren().add(TitleComponent.builder()
|
||||
@@ -120,7 +115,7 @@ class SmeltingOverlay extends Overlay
|
||||
}
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -31,18 +31,16 @@ import javax.inject.Inject;
|
||||
import net.runelite.api.ItemID;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.client.game.ItemManager;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.OverlayPriority;
|
||||
import net.runelite.client.ui.overlay.components.ComponentOrientation;
|
||||
import net.runelite.client.ui.overlay.components.ImageComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
|
||||
public class TeamCapesOverlay extends Overlay
|
||||
public class TeamCapesOverlay extends OverlayPanel
|
||||
{
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
private final TeamCapesPlugin plugin;
|
||||
private final TeamCapesConfig config;
|
||||
private final ItemManager manager;
|
||||
@@ -70,8 +68,6 @@ public class TeamCapesOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
for (Map.Entry<Integer, Integer> team : teams.entrySet())
|
||||
{
|
||||
// Only display team capes that have a count greater than the configured minimum
|
||||
@@ -97,6 +93,6 @@ public class TeamCapesOverlay extends Overlay
|
||||
panelComponent.getChildren().add(new ImageComponent(manager.getImage(itemID, team.getValue(), true)));
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,18 +30,16 @@ import java.awt.Dimension;
|
||||
import java.awt.Graphics2D;
|
||||
import javax.inject.Inject;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
|
||||
class WintertodtOverlay extends Overlay
|
||||
class WintertodtOverlay extends OverlayPanel
|
||||
{
|
||||
private final WintertodtPlugin plugin;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private WintertodtOverlay(WintertodtPlugin plugin)
|
||||
@@ -60,9 +58,6 @@ class WintertodtOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
panelComponent.setPreferredSize(new Dimension(150, 0));
|
||||
|
||||
panelComponent.getChildren().add(TitleComponent.builder()
|
||||
.text(plugin.getCurrentActivity().getActionString())
|
||||
.color(plugin.getCurrentActivity() == WintertodtActivity.IDLE ? Color.RED : Color.GREEN)
|
||||
@@ -84,6 +79,6 @@ class WintertodtOverlay extends Overlay
|
||||
.rightColor(plugin.getNumKindling() + plugin.getNumLogs() > 0 ? Color.GREEN : Color.RED)
|
||||
.build());
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
}
|
||||
@@ -33,15 +33,14 @@ import static net.runelite.api.MenuAction.RUNELITE_OVERLAY;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.api.Skill;
|
||||
import net.runelite.client.plugins.xptracker.XpTrackerService;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.TitleComponent;
|
||||
|
||||
class WoodcuttingOverlay extends Overlay
|
||||
class WoodcuttingOverlay extends OverlayPanel
|
||||
{
|
||||
static final String WOODCUTTING_RESET = "Reset";
|
||||
|
||||
@@ -49,7 +48,6 @@ class WoodcuttingOverlay extends Overlay
|
||||
private final WoodcuttingPlugin plugin;
|
||||
private final WoodcuttingConfig config;
|
||||
private final XpTrackerService xpTrackerService;
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
|
||||
@Inject
|
||||
private WoodcuttingOverlay(Client client, WoodcuttingPlugin plugin, WoodcuttingConfig config, XpTrackerService xpTrackerService)
|
||||
@@ -78,8 +76,6 @@ class WoodcuttingOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
Axe axe = plugin.getAxe();
|
||||
if (axe != null && axe.matchesChoppingAnimation(client.getLocalPlayer()))
|
||||
{
|
||||
@@ -113,7 +109,7 @@ class WoodcuttingOverlay extends Overlay
|
||||
}
|
||||
}
|
||||
|
||||
return panelComponent.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -33,11 +33,13 @@ import java.awt.image.BufferedImage;
|
||||
import lombok.AccessLevel;
|
||||
import lombok.Getter;
|
||||
import net.runelite.api.Experience;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import net.runelite.api.Skill;
|
||||
import net.runelite.client.ui.FontManager;
|
||||
import net.runelite.client.ui.SkillColor;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
import net.runelite.client.ui.overlay.OverlayMenuEntry;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.components.ComponentOrientation;
|
||||
import net.runelite.client.ui.overlay.components.ImageComponent;
|
||||
import net.runelite.client.ui.overlay.components.LineComponent;
|
||||
@@ -45,18 +47,14 @@ import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.components.ProgressBarComponent;
|
||||
import net.runelite.client.ui.overlay.components.SplitComponent;
|
||||
import net.runelite.client.util.QuantityFormatter;
|
||||
import static net.runelite.api.MenuAction.RUNELITE_OVERLAY_CONFIG;
|
||||
import static net.runelite.client.ui.overlay.OverlayManager.OPTION_CONFIGURE;
|
||||
|
||||
class XpInfoBoxOverlay extends Overlay
|
||||
class XpInfoBoxOverlay extends OverlayPanel
|
||||
{
|
||||
private static final int PANEL_PREFERRED_WIDTH = 150;
|
||||
private static final int BORDER_SIZE = 2;
|
||||
private static final int XP_AND_PROGRESS_BAR_GAP = 2;
|
||||
private static final int XP_AND_ICON_GAP = 4;
|
||||
private static final Rectangle XP_AND_ICON_COMPONENT_BORDER = new Rectangle(2, 1, 4, 0);
|
||||
|
||||
private final PanelComponent panel = new PanelComponent();
|
||||
private final PanelComponent iconXpSplitPanel = new PanelComponent();
|
||||
private final XpTrackerPlugin plugin;
|
||||
private final XpTrackerConfig config;
|
||||
@@ -76,19 +74,16 @@ class XpInfoBoxOverlay extends Overlay
|
||||
this.config = config;
|
||||
this.skill = skill;
|
||||
this.icon = icon;
|
||||
panel.setBorder(new Rectangle(BORDER_SIZE, BORDER_SIZE, BORDER_SIZE, BORDER_SIZE));
|
||||
panel.setGap(new Point(0, XP_AND_PROGRESS_BAR_GAP));
|
||||
panel.setPreferredSize(new Dimension(PANEL_PREFERRED_WIDTH, 0));
|
||||
panelComponent.setBorder(new Rectangle(BORDER_SIZE, BORDER_SIZE, BORDER_SIZE, BORDER_SIZE));
|
||||
panelComponent.setGap(new Point(0, XP_AND_PROGRESS_BAR_GAP));
|
||||
iconXpSplitPanel.setBorder(XP_AND_ICON_COMPONENT_BORDER);
|
||||
iconXpSplitPanel.setBackgroundColor(null);
|
||||
iconXpSplitPanel.setPreferredSize(new Dimension(PANEL_PREFERRED_WIDTH, 0));
|
||||
getMenuEntries().add(new OverlayMenuEntry(RUNELITE_OVERLAY_CONFIG, OPTION_CONFIGURE, "XP Tracker overlay"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Dimension render(Graphics2D graphics)
|
||||
{
|
||||
panel.getChildren().clear();
|
||||
iconXpSplitPanel.getChildren().clear();
|
||||
|
||||
//Setting the font to rs small font so that the overlay isn't huge
|
||||
@@ -174,10 +169,10 @@ class XpInfoBoxOverlay extends Overlay
|
||||
|
||||
progressBarComponent.setValue(snapshot.getSkillProgressToGoal());
|
||||
|
||||
panel.getChildren().add(iconXpSplitPanel);
|
||||
panel.getChildren().add(progressBarComponent);
|
||||
panelComponent.getChildren().add(iconXpSplitPanel);
|
||||
panelComponent.getChildren().add(progressBarComponent);
|
||||
|
||||
return panel.render(graphics);
|
||||
return super.render(graphics);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -36,22 +36,20 @@ import javax.inject.Inject;
|
||||
import javax.inject.Singleton;
|
||||
import net.runelite.api.Client;
|
||||
import net.runelite.client.config.RuneLiteConfig;
|
||||
import net.runelite.client.ui.overlay.Overlay;
|
||||
import net.runelite.client.ui.overlay.OverlayPanel;
|
||||
import net.runelite.client.ui.overlay.OverlayPosition;
|
||||
import net.runelite.client.ui.overlay.components.ComponentOrientation;
|
||||
import net.runelite.client.ui.overlay.components.InfoBoxComponent;
|
||||
import net.runelite.client.ui.overlay.components.LayoutableRenderableEntity;
|
||||
import net.runelite.client.ui.overlay.components.PanelComponent;
|
||||
import net.runelite.client.ui.overlay.tooltip.Tooltip;
|
||||
import net.runelite.client.ui.overlay.tooltip.TooltipManager;
|
||||
|
||||
@Singleton
|
||||
public class InfoBoxOverlay extends Overlay
|
||||
public class InfoBoxOverlay extends OverlayPanel
|
||||
{
|
||||
private static final int GAP = 1;
|
||||
private static final int DEFAULT_WRAP_COUNT = 4;
|
||||
|
||||
private final PanelComponent panelComponent = new PanelComponent();
|
||||
private final InfoBoxManager infoboxManager;
|
||||
private final TooltipManager tooltipManager;
|
||||
private final Client client;
|
||||
@@ -69,6 +67,7 @@ public class InfoBoxOverlay extends Overlay
|
||||
this.client = client;
|
||||
this.config = config;
|
||||
setPosition(OverlayPosition.TOP_LEFT);
|
||||
setClearChildren(false);
|
||||
|
||||
panelComponent.setWrap(true);
|
||||
panelComponent.setBackgroundColor(null);
|
||||
@@ -86,8 +85,6 @@ public class InfoBoxOverlay extends Overlay
|
||||
return null;
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
|
||||
// Set preferred size to the size of DEFAULT_WRAP_COUNT infoboxes, including the padding - which is applied
|
||||
// to the last infobox prior to wrapping too.
|
||||
panelComponent.setPreferredSize(new Dimension(DEFAULT_WRAP_COUNT * (config.infoBoxSize() + GAP), DEFAULT_WRAP_COUNT * (config.infoBoxSize() + GAP)));
|
||||
@@ -117,7 +114,7 @@ public class InfoBoxOverlay extends Overlay
|
||||
panelComponent.getChildren().add(infoBoxComponent);
|
||||
}
|
||||
|
||||
final Dimension dimension = panelComponent.render(graphics);
|
||||
final Dimension dimension = super.render(graphics);
|
||||
|
||||
// Handle tooltips
|
||||
final Point mouse = new Point(client.getMouseCanvasPosition().getX(), client.getMouseCanvasPosition().getY());
|
||||
@@ -142,6 +139,7 @@ public class InfoBoxOverlay extends Overlay
|
||||
}
|
||||
}
|
||||
|
||||
panelComponent.getChildren().clear();
|
||||
return dimension;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user