Skip to content

Commit 19a0a83

Browse files
committed
log clicked component when inspecting tooltip
(cherry picked from commit 6d15b27)
1 parent ad0d911 commit 19a0a83

File tree

1 file changed

+33
-4
lines changed

1 file changed

+33
-4
lines changed

src/main/java/mcp/mobius/waila/gui/screen/InspectorScreen.java

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,15 @@
1212
import mcp.mobius.waila.gui.hud.InspectComponent;
1313
import mcp.mobius.waila.gui.hud.TooltipHandler;
1414
import mcp.mobius.waila.gui.hud.TooltipRenderer;
15+
import mcp.mobius.waila.util.Log;
1516
import net.minecraft.client.DeltaTracker;
1617
import net.minecraft.client.gui.GuiGraphics;
1718
import net.minecraft.network.chat.Component;
1819
import org.jetbrains.annotations.NotNull;
1920

2021
public class InspectorScreen extends YesIAmSureTheClientInstanceIsPresentByTheTimeIUseItScreen {
2122

23+
private static final Log LOG = Log.create();
2224
private static final String API_COMPONENTS = "mcp.mobius.waila.api.component.";
2325
private static final Component TITLE = Component.translatable(Tl.Gui.Inspector.TITLE);
2426
private static final State STATE = new State();
@@ -61,17 +63,19 @@ public void render(@NotNull GuiGraphics ctx, int mouseX, int mouseY, float tickD
6163
if (clazz.startsWith(API_COMPONENTS)) clazz = clazz.substring(API_COMPONENTS.length());
6264
ctx.drawString(minecraft.font, Component.literal(clazz), 5, 5, 0xFFFFFF);
6365

66+
var y = 1;
6467
var wrapper = (InspectComponent) hoveredComponent.getLast();
65-
ctx.drawString(minecraft.font, Component.translatable(Tl.Gui.Inspector.TAG, wrapper.tag), 5, 5 + h, 0xFFFFFF);
68+
var tag = wrapper.tag == null ? null : wrapper.tag.toString();
69+
if (tag != null) ctx.drawString(minecraft.font, Component.translatable(Tl.Gui.Inspector.TAG, tag), 5, 5 + h * (y++), 0xFFFFFF);
6670

6771
var provider = wrapper.origin.instance().getClass().getName();
68-
ctx.drawString(minecraft.font, Component.translatable(Tl.Gui.Inspector.PROVIDER, provider), 5, 5 + h * 2, 0xFFFFFF);
72+
ctx.drawString(minecraft.font, Component.translatable(Tl.Gui.Inspector.PROVIDER, provider), 5, 5 + h * (y++), 0xFFFFFF);
6973

7074
var pluginId = wrapper.origin.plugin().getPluginId().toString();
71-
ctx.drawString(minecraft.font, Component.translatable(Tl.Gui.Inspector.PLUGIN_ID, pluginId), 5, 5 + h * 3, 0xFFFFFF);
75+
ctx.drawString(minecraft.font, Component.translatable(Tl.Gui.Inspector.PLUGIN_ID, pluginId), 5, 5 + h * (y++), 0xFFFFFF);
7276

7377
var mod = wrapper.origin.plugin().getModInfo();
74-
ctx.drawString(minecraft.font, Component.translatable(Tl.Gui.Inspector.MOD, mod.getName(), mod.getId()), 5, 5 + h * 4, 0xFFFFFF);
78+
ctx.drawString(minecraft.font, Component.translatable(Tl.Gui.Inspector.MOD, mod.getName(), mod.getId()), 5, 5 + h * y, 0xFFFFFF);
7579
}
7680

7781
if (tickSuccess) {
@@ -85,6 +89,31 @@ public void render(@NotNull GuiGraphics ctx, int mouseX, int mouseY, float tickD
8589
}
8690
}
8791

92+
@Override
93+
public boolean mouseClicked(double mouseX, double mouseY, int button) {
94+
if (!hoveredComponent.isEmpty()) {
95+
var sb = new StringBuilder();
96+
97+
var wrapper = (InspectComponent) hoveredComponent.getLast();
98+
var tag = wrapper.tag == null ? null : wrapper.tag.toString();
99+
if (tag != null) sb.append("tag: ").append(tag).append("\n\t");
100+
101+
var provider = wrapper.origin.instance().getClass().getName();
102+
sb.append("provider: ").append(provider).append("\n\t");
103+
104+
var pluginId = wrapper.origin.plugin().getPluginId().toString();
105+
sb.append("pluginId: ").append(pluginId).append("\n\t");
106+
107+
var mod = wrapper.origin.plugin().getModInfo();
108+
sb.append("modName: ").append(mod.getName()).append("\n\t");
109+
sb.append("modId: ").append(mod.getId());
110+
111+
LOG.info(sb.toString());
112+
}
113+
114+
return super.mouseClicked(mouseX, mouseY, button);
115+
}
116+
88117
private class Renderer extends ComponentRenderer {
89118

90119
int mouseX, mouseY;

0 commit comments

Comments
 (0)