Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
keyescgm
jadx
提交
f3700595
J
jadx
项目概览
keyescgm
/
jadx
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
jadx
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
f3700595
编写于
10月 27, 2021
作者:
S
Skylot
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(gui): sort results in usage dialog (#1104)
上级
dfdc14ea
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
29 addition
and
7 deletion
+29
-7
jadx-gui/src/main/java/jadx/gui/treemodel/CodeNode.java
jadx-gui/src/main/java/jadx/gui/treemodel/CodeNode.java
+17
-5
jadx-gui/src/main/java/jadx/gui/treemodel/JClass.java
jadx-gui/src/main/java/jadx/gui/treemodel/JClass.java
+7
-1
jadx-gui/src/main/java/jadx/gui/ui/dialog/UsageDialog.java
jadx-gui/src/main/java/jadx/gui/ui/dialog/UsageDialog.java
+5
-1
未找到文件。
jadx-gui/src/main/java/jadx/gui/treemodel/CodeNode.java
浏览文件 @
f3700595
package
jadx.gui.treemodel
;
import
java.util.Comparator
;
import
javax.swing.Icon
;
import
org.jetbrains.annotations.NotNull
;
import
jadx.api.JavaNode
;
import
jadx.gui.utils.search.StringRef
;
public
class
CodeNode
extends
JNode
{
public
class
CodeNode
extends
JNode
implements
Comparable
<
CodeNode
>
{
private
static
final
long
serialVersionUID
=
1658650786734966545L
;
private
final
transient
JNode
jNode
;
private
final
transient
JClass
jParent
;
private
final
transient
StringRef
line
;
private
final
transient
int
lineNum
;
private
transient
int
pos
;
private
final
transient
int
pos
;
public
CodeNode
(
JNode
jNode
,
StringRef
lineStr
,
int
lineNum
,
int
pos
)
{
this
.
jNode
=
jNode
;
...
...
@@ -84,6 +87,11 @@ public class CodeNode extends JNode {
return
jNode
.
getSyntaxName
();
}
@Override
public
int
getPos
()
{
return
pos
;
}
@Override
public
boolean
equals
(
Object
o
)
{
if
(
this
==
o
)
{
...
...
@@ -101,8 +109,12 @@ public class CodeNode extends JNode {
return
jNode
.
hashCode
();
}
public
static
final
Comparator
<
CodeNode
>
COMPARATOR
=
Comparator
.
comparing
(
CodeNode:
:
getJParent
)
.
thenComparingInt
(
CodeNode:
:
getPos
);
@Override
public
int
getPos
(
)
{
return
pos
;
public
int
compareTo
(
@NotNull
CodeNode
other
)
{
return
COMPARATOR
.
compare
(
this
,
other
)
;
}
}
jadx-gui/src/main/java/jadx/gui/treemodel/JClass.java
浏览文件 @
f3700595
...
...
@@ -4,6 +4,7 @@ import javax.swing.Icon;
import
javax.swing.ImageIcon
;
import
org.fife.ui.rsyntaxtextarea.SyntaxConstants
;
import
org.jetbrains.annotations.NotNull
;
import
org.jetbrains.annotations.Nullable
;
import
jadx.api.ICodeInfo
;
...
...
@@ -19,7 +20,7 @@ import jadx.gui.ui.panel.ContentPanel;
import
jadx.gui.utils.NLS
;
import
jadx.gui.utils.UiUtils
;
public
class
JClass
extends
JLoadableNode
{
public
class
JClass
extends
JLoadableNode
implements
Comparable
<
JClass
>
{
private
static
final
long
serialVersionUID
=
-
1239986875244097177L
;
private
static
final
ImageIcon
ICON_CLASS
=
UiUtils
.
openSvgIcon
(
"nodes/class"
);
...
...
@@ -198,4 +199,9 @@ public class JClass extends JLoadableNode {
public
String
makeLongString
()
{
return
cls
.
getFullName
();
}
@Override
public
int
compareTo
(
@NotNull
JClass
o
)
{
return
this
.
getFullName
().
compareTo
(
o
.
getFullName
());
}
}
jadx-gui/src/main/java/jadx/gui/ui/dialog/UsageDialog.java
浏览文件 @
f3700595
...
...
@@ -3,6 +3,7 @@ package jadx.gui.ui.dialog;
import
java.awt.BorderLayout
;
import
java.awt.Container
;
import
java.awt.FlowLayout
;
import
java.util.Collections
;
import
java.util.Comparator
;
import
java.util.List
;
import
java.util.stream.Collectors
;
...
...
@@ -17,6 +18,7 @@ import jadx.api.JavaClass;
import
jadx.api.JavaNode
;
import
jadx.gui.jobs.IndexService
;
import
jadx.gui.jobs.TaskStatus
;
import
jadx.gui.treemodel.CodeNode
;
import
jadx.gui.treemodel.JNode
;
import
jadx.gui.ui.MainWindow
;
import
jadx.gui.utils.CodeUsageInfo
;
...
...
@@ -95,7 +97,9 @@ public class UsageDialog extends CommonSearchDialog {
if
(
usageInfo
==
null
)
{
return
;
}
resultsModel
.
addAll
(
usageInfo
.
getUsageList
(
node
));
List
<
CodeNode
>
usageList
=
usageInfo
.
getUsageList
(
node
);
Collections
.
sort
(
usageList
);
resultsModel
.
addAll
(
usageList
);
// TODO: highlight only needed node usage
highlightText
=
null
;
super
.
performSearch
();
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录