12
12
import mcp .mobius .waila .gui .hud .InspectComponent ;
13
13
import mcp .mobius .waila .gui .hud .TooltipHandler ;
14
14
import mcp .mobius .waila .gui .hud .TooltipRenderer ;
15
+ import mcp .mobius .waila .util .Log ;
15
16
import net .minecraft .client .DeltaTracker ;
16
17
import net .minecraft .client .gui .GuiGraphics ;
17
18
import net .minecraft .network .chat .Component ;
18
19
import org .jetbrains .annotations .NotNull ;
19
20
20
21
public class InspectorScreen extends YesIAmSureTheClientInstanceIsPresentByTheTimeIUseItScreen {
21
22
23
+ private static final Log LOG = Log .create ();
22
24
private static final String API_COMPONENTS = "mcp.mobius.waila.api.component." ;
23
25
private static final Component TITLE = Component .translatable (Tl .Gui .Inspector .TITLE );
24
26
private static final State STATE = new State ();
@@ -61,17 +63,19 @@ public void render(@NotNull GuiGraphics ctx, int mouseX, int mouseY, float tickD
61
63
if (clazz .startsWith (API_COMPONENTS )) clazz = clazz .substring (API_COMPONENTS .length ());
62
64
ctx .drawString (minecraft .font , Component .literal (clazz ), 5 , 5 , 0xFFFFFF );
63
65
66
+ var y = 1 ;
64
67
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 );
66
70
67
71
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 );
69
73
70
74
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 );
72
76
73
77
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 );
75
79
}
76
80
77
81
if (tickSuccess ) {
@@ -85,6 +89,31 @@ public void render(@NotNull GuiGraphics ctx, int mouseX, int mouseY, float tickD
85
89
}
86
90
}
87
91
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
+
88
117
private class Renderer extends ComponentRenderer {
89
118
90
119
int mouseX , mouseY ;
0 commit comments