summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/gui/MethodTreeCellRenderer.java
diff options
context:
space:
mode:
authorGravatar liach2019-02-24 12:43:41 -0800
committerGravatar Gegy2019-02-24 22:43:41 +0200
commitad49f6d08133253b5e2e54cc13fe3a54d85bf8d6 (patch)
tree81feffbf613a13d386eddb98a8df901e8b19e303 /src/main/java/cuchaz/enigma/gui/MethodTreeCellRenderer.java
parentFix name duplication checking not occurring on root classes (diff)
downloadenigma-fork-ad49f6d08133253b5e2e54cc13fe3a54d85bf8d6.tar.gz
enigma-fork-ad49f6d08133253b5e2e54cc13fe3a54d85bf8d6.tar.xz
enigma-fork-ad49f6d08133253b5e2e54cc13fe3a54d85bf8d6.zip
Adds a red highlight for overridden methods in method inheritance tree gui (#112)
* Make implemented method nodes in inheritance ui more obvious Signed-off-by: liach <liach@users.noreply.github.com> * Make the text green and italic instead Signed-off-by: liach <liach@users.noreply.github.com> * Update again for the new tree gen Also tweaked new tree gen to show only useful branch nodes Signed-off-by: liach <liach@users.noreply.github.com>
Diffstat (limited to 'src/main/java/cuchaz/enigma/gui/MethodTreeCellRenderer.java')
-rw-r--r--src/main/java/cuchaz/enigma/gui/MethodTreeCellRenderer.java40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/main/java/cuchaz/enigma/gui/MethodTreeCellRenderer.java b/src/main/java/cuchaz/enigma/gui/MethodTreeCellRenderer.java
new file mode 100644
index 0000000..c78ead2
--- /dev/null
+++ b/src/main/java/cuchaz/enigma/gui/MethodTreeCellRenderer.java
@@ -0,0 +1,40 @@
1/*******************************************************************************
2 * Copyright (c) 2015 Jeff Martin.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the GNU Lesser General Public
5 * License v3.0 which accompanies this distribution, and is available at
6 * http://www.gnu.org/licenses/lgpl.html
7 * <p>
8 * Contributors:
9 * Jeff Martin - initial API and implementation
10 ******************************************************************************/
11
12package cuchaz.enigma.gui;
13
14import cuchaz.enigma.analysis.MethodInheritanceTreeNode;
15
16import javax.swing.*;
17import javax.swing.tree.TreeCellRenderer;
18import java.awt.*;
19
20class MethodTreeCellRenderer implements TreeCellRenderer {
21
22 private final TreeCellRenderer parent;
23
24 MethodTreeCellRenderer(TreeCellRenderer parent) {
25 this.parent = parent;
26 }
27
28 @Override
29 public Component getTreeCellRendererComponent(JTree tree, Object value, boolean selected, boolean expanded, boolean leaf, int row, boolean hasFocus) {
30 Component ret = parent.getTreeCellRendererComponent(tree, value, selected, expanded, leaf, row, hasFocus);
31 if (value instanceof MethodInheritanceTreeNode && ((MethodInheritanceTreeNode) value).isImplemented()) {
32 ret.setForeground(Color.BLACK);
33 ret.setFont(ret.getFont().deriveFont(Font.PLAIN));
34 } else {
35 ret.setForeground(Color.GRAY);
36 ret.setFont(ret.getFont().deriveFont(Font.ITALIC));
37 }
38 return ret;
39 }
40}