Skip to content

Commit 82f9763

Browse files
committed
Show env name in thread tooltip
1 parent 0cdbe04 commit 82f9763

File tree

6 files changed

+26
-5
lines changed

6 files changed

+26
-5
lines changed

Common/src/main/kotlin/gay/object/hexdebug/impl/HexDebugCoreAPIImpl.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,10 @@ class HexDebugCoreAPIImpl : HexDebugCoreAPI {
2323
return DebugAdapterManager[caster]?.debugger(sessionId)?.debugEnv
2424
}
2525

26+
override fun getDebugEnv(caster: ServerPlayer, threadId: Int): DebugEnvironment? {
27+
return DebugAdapterManager[caster]?.debugger(threadId)?.debugEnv
28+
}
29+
2630
override fun isSessionDebugging(debugEnv: DebugEnvironment): Boolean {
2731
return DebugAdapterManager[debugEnv.caster]?.debugger(debugEnv.sessionId) != null
2832
}

Common/src/main/kotlin/gay/object/hexdebug/items/DebuggerItem.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ class DebuggerItem(
192192
override fun handleShiftScroll(sender: ServerPlayer, stack: ItemStack, delta: Double, isCtrl: Boolean) {
193193
val increase = delta < 0
194194
val component = if (isCtrl) {
195-
rotateThreadId(stack, increase)
195+
rotateThreadId(sender, stack, increase)
196196
} else {
197197
rotateStepMode(stack, increase)
198198
}

Common/src/main/kotlin/gay/object/hexdebug/items/EvaluatorItem.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ class EvaluatorItem(
8787
override fun canShiftScroll(isCtrl: Boolean) = isCtrl && isQuenched
8888

8989
override fun handleShiftScroll(sender: ServerPlayer, stack: ItemStack, delta: Double, isCtrl: Boolean) {
90-
val component = rotateThreadId(stack, delta < 0)
90+
val component = rotateThreadId(sender, stack, delta < 0)
9191
sender.displayClientMessage(component, true)
9292
}
9393

Common/src/main/kotlin/gay/object/hexdebug/items/base/ShiftScrollable.kt

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package gay.`object`.hexdebug.items.base
33
import at.petrak.hexcasting.api.utils.asTranslatedComponent
44
import at.petrak.hexcasting.api.utils.getInt
55
import at.petrak.hexcasting.api.utils.putInt
6+
import gay.`object`.hexdebug.adapter.DebugAdapterManager
67
import gay.`object`.hexdebug.config.HexDebugServerConfig
78
import net.minecraft.network.chat.Component
89
import net.minecraft.server.level.ServerPlayer
@@ -20,9 +21,16 @@ private const val THREAD_ID_TAG = "thread_id"
2021

2122
fun getThreadId(stack: ItemStack) = stack.getInt(THREAD_ID_TAG)
2223

23-
fun rotateThreadId(stack: ItemStack, increase: Boolean): Component {
24+
fun rotateThreadId(caster: ServerPlayer, stack: ItemStack, increase: Boolean): Component {
2425
val threadId = (getThreadId(stack) + (if (increase) 1 else -1))
2526
.coerceIn(0 until HexDebugServerConfig.config.maxDebugThreads)
27+
2628
stack.putInt(THREAD_ID_TAG, threadId)
27-
return "hexdebug.tooltip.thread_id".asTranslatedComponent(threadId)
29+
30+
val envName = DebugAdapterManager[caster]?.debugger(threadId)?.envName
31+
return if (envName != null) {
32+
"hexdebug.tooltip.thread.active".asTranslatedComponent(threadId, envName)
33+
} else {
34+
"hexdebug.tooltip.thread.inactive".asTranslatedComponent(threadId)
35+
}
2836
}

Common/src/main/resources/assets/hexdebug/lang/en_us.flatten.json5

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -257,7 +257,10 @@
257257

258258
hexdebug: {
259259
tooltip: {
260-
thread_id: "Thread: %d",
260+
thread: {
261+
inactive: "Thread %d",
262+
active: "Thread %d (%s)",
263+
},
261264
debugger: {
262265
step_mode: {
263266
continue: "Mode: Continue",

Core/src/main/java/gay/object/hexdebug/core/api/HexDebugCoreAPI.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,12 @@ default DebugEnvironment getDebugEnv(@NotNull ServerPlayer caster, @NotNull UUID
3838
return null;
3939
}
4040

41+
@Contract(pure = true)
42+
@Nullable
43+
default DebugEnvironment getDebugEnv(@NotNull ServerPlayer caster, int threadId) {
44+
return null;
45+
}
46+
4147
@Contract(pure = true)
4248
default boolean isSessionDebugging(@NotNull DebugEnvironment debugEnv) {
4349
return false;

0 commit comments

Comments
 (0)