Files
Spine_lab/tools/deobf/anchors.tsv
T
tianmo 13bce4509d 让鼠标滚轮能滚列表:把列表 ScrollPane 的 touchable 从默认 childrenOnly 改成 enabled(无参返回枚举的方法=getTouchable,枚举 dv 第0常量=enabled)
- 诊断证据:程序化 scrollY(200) 生效(before=0 after=200),说明可滚范围没问题,
  是滚轮事件没送到面板 —— 因为 childrenOnly 时 ScrollPane 自己不是命中目标,收不到 enter、
  也就不会 setScrollFocus。
- 顺带把这条 Actor/Touchable 映射写进 anchors.tsv + names.tsv。
2026-10-16 16:18:28 +08:00

5.0 KiB

1# 名字映射锚点(只放**已确定**的;每条都要能说清依据,依据写进 混淆名对照表.md)
2# 列:ownernamedescnewName (desc 写 * 表示该 owner 下所有同名成员)
3#
4# ---- libGDX:Table(载荷名 et);依据 Obf.java + 直读字节码 ----
5etD(Ldl;)LdR;add
6etD([Ldl;)Let;addAll
7etI()LdR;row
8etZ(Z)VsetFillParent
9etSourceFile()VclearChildren
10etD(Ljava/lang/CharSequence;)LdR;addLabel
11# ---- libGDX:Cell(载荷名 dR)----
12dRStackMapTable()LdR;expand
13dRD()LdR;fill
14dRC()LdR;left
15dRS()LdR;top
16# ---- libGDX:Button / Label(保名类)----
17com/badlogic/gdx/scenes/scene2d/ui/ButtonString()ZisChecked
18com/badlogic/gdx/scenes/scene2d/ui/ButtonI(Z)VsetChecked
19com/badlogic/gdx/scenes/scene2d/ui/ButtonB(ZZ)VsetCheckedAndFire
20com/badlogic/gdx/scenes/scene2d/ui/Buttona_(Z)VsetDisabled
21com/badlogic/gdx/scenes/scene2d/ui/LabelD(Ljava/lang/CharSequence;)VsetText
22com/badlogic/gdx/scenes/scene2d/ui/LabelD()Ljava/lang/StringBuilder;getTextBuilder
23# ---- libGDX:SelectBox(载荷名 KP);依据 DumpSites 解出的 (Ljava/lang/String;)V ----
24KPB(Ljava/lang/String;)VsetSelected
25KPB()Ljava/lang/String;getSelected
26KPB(I)VsetSelectedIndex
27# ---- 场景模型:Gp = 骨骼;依据 gp_2.java 的 toString()/D(String,boolean)V ----
28GpDLjava/lang/String;name
29GpD(Ljava/lang/String;Z)VsetName
30# ---- 场景模型:Gp = 骨骼的变换字段 ----
31# 证据:用户在编辑器里把 root 转到 341.456 / 平移(-168,-116) / 缩放(0.8799,0.572) / 斜切(-52.221,-28.63),
32# 面板 Inspector 同步显示 Z=-168.00009 V=-116.0 F=33.676704 Code=0.8799178 SourceFile=0.5720396
33# StackMapTable=-52.220505 LineNumberTable=-28.629883 —— 一一对应,故确定语义。
34GpZFx
35GpVFy
36GpFFrotation
37GpCodeFscaleX
38GpSourceFileFscaleY
39GpStackMapTableFshearX
40GpLineNumberTableFshearY
41# 静止姿态(rest pose)那一组:值与默认姿态吻合(0,0,0,1,1,0),且未改动时与上面那组相等 —— 推断,留注释待复核
42GpDFsetupX
43GpBFsetupY
44GpLFsetupRotation
45GpIFsetupScaleX
46GpSFsetupScaleY
47GpCFsetupShear
48# 引用类字段:skeleton 由 hd.D(set, bone.D)+GP.D(LGp;) 的用法确定;parent 由创建骨骼时 bone.D=parent 确定
49GpDLGP;skeleton
50GpDLGp;parent
51GpBLcom/badlogic/gdx/graphics/Color;color
52# ---- 2026-10-16 setup pose 实测补充(用户拍照:root/bone/slot/region 四种对象)----
53# Gp(root/bone):面板 Length=0.0 与 float Class=0.0 同;Ljava/java 与 Code/SourceFile 相等 → 世界缩放
54GpClassFlength
55GpLjavaFworldScaleX
56GpjavaFworldScaleY
57# GU(插槽 mega_dg4):面板 Slot 属性只有 Name/Color;Inspector 里 String D=mega_dg4、Gp D=所属骨骼、Gn D=附件
58GUDLjava/lang/String;name
59GUDLGp;bone
60GUDLGn;attachment
61GUDLcom/badlogic/gdx/graphics/Color;color
62# GO(region 附件 mega_dg4):面板只有 Image path/Color;Inspector 六个 float 与
63# Region 附件的 旋转49.00014 / 缩放(1.997,1.335) / 宽高(157,154) 一一对应
64GOSFrotation
65GOLFscaleX
66GOIFscaleY
67GOCFwidth
68GOZFheight
69# ---- ScrollPane(保名类 com/badlogic/gdx/scenes/scene2d/ui/ScrollPane)----
70# 依据:MapMethods 对 gdx-1.11.0 指纹比对(tools/deobf/anchors-libgdx.tsv 自动生成),
71# 并且**踩过一次**:一直以为 B(ZZ)V 是 setForceScroll,传了 (false,true),
72com/badlogic/gdx/scenes/scene2d/ui/ScrollPaneB(ZZ)VsetScrollingDisabled
73com/badlogic/gdx/scenes/scene2d/ui/ScrollPaneL(FFFF)VscrollTo
74com/badlogic/gdx/scenes/scene2d/ui/ScrollPaneD(Ldl;)VaddActor
75com/badlogic/gdx/scenes/scene2d/ui/ScrollPaneD(Ldl;Z)ZremoveActor
76# ---- ScrollPane / Cell 的滚动与尺寸方法(用于把面板列表改成可滚动;依据:MapMethods 指纹比对)----
77# ScrollPane:B(ZZ)V=setScrollingDisabled、I(ZZ)V=setForceScroll、L(ZZ)V=setOverscroll
78#(候选顺序 size/… 已核对;踩坑:把 B(ZZ) 当 setForceScroll 用,等于关掉纵向滚动)
79com/badlogic/gdx/scenes/scene2d/ui/ScrollPaneI(ZZ)VsetForceScroll
80com/badlogic/gdx/scenes/scene2d/ui/ScrollPaneL(ZZ)VsetOverscroll
81# Cell 的 (F)LdR; 成组按声明顺序:B=size L=width I=height S=minWidth C=minHeight Z=prefWidth V=prefHeight
82dRB(F)LdR;size
83dRL(F)LdR;width
84dRI(F)LdR;height
85dRS(F)LdR;minWidth
86dRC(F)LdR;minHeight
87dRZ(F)LdR;prefWidth
88dRV(F)LdR;prefHeight
89# ---- Actor 的 Touchable(点击/进入命中相关;用于让 ScrollPane 收到鼠标进入→拿到 scroll focus)----
90# 定位方式(不靠名字):`Actor.getTouchable()` = **无参且返回枚举**的那个方法;枚举类 = dv;
91# libGDX Touchable 声明顺序 enabled/disabled/childrenOnly → 第 0 个常量就是 enabled。
92# 现象佐证:ScrollPane 默认 childrenOnly 时自己不是命中目标,收不到 enter → 滚轮事件不会送到它,
93# 但程序化 scrollY() 是生效的(实测 before=0 after=200)。
94dlL(Ldv;)VsetTouchable