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