Skip to content

Commit 01a60c3

Browse files
committed
log clicked component when inspecting tooltip
(cherry picked from commit 6d15b27)
1 parent 05fa345 commit 01a60c3

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,12 +12,14 @@
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.gui.GuiGraphics;
1617
import net.minecraft.network.chat.Component;
1718
import org.jetbrains.annotations.NotNull;
1819

1920
public class InspectorScreen extends YesIAmSureTheClientInstanceIsPresentByTheTimeIUseItScreen {
2021

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

65+
var y = 1;
6366
var wrapper = (InspectComponent) hoveredComponent.get(hoveredComponent.size() - 1);
64-
ctx.drawString(minecraft.font, Component.translatable(Tl.Gui.Inspector.TAG, wrapper.tag), 5, 5 + h, 0xFFFFFF);
67+
var tag = wrapper.tag == null ? null : wrapper.tag.toString();
68+
if (tag != null) ctx.drawString(minecraft.font, Component.translatable(Tl.Gui.Inspector.TAG, tag), 5, 5 + h * (y++), 0xFFFFFF);
6569

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

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

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

7680
if (tickSuccess) {
@@ -84,6 +88,31 @@ public void render(@NotNull GuiGraphics ctx, int mouseX, int mouseY, float tickD
8488
}
8589
}
8690

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

89118
int mouseX, mouseY;

0 commit comments

Comments
 (0)