summaryrefslogtreecommitdiff
path: root/src/main/java/cuchaz/enigma/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/cuchaz/enigma/gui')
-rw-r--r--src/main/java/cuchaz/enigma/gui/Gui.java10
-rw-r--r--src/main/java/cuchaz/enigma/gui/MinecraftSyntaxKit.java32
-rw-r--r--src/main/java/cuchaz/enigma/gui/elements/MenuBar.java31
-rw-r--r--src/main/java/cuchaz/enigma/gui/highlight/DeobfuscatedHighlightPainter.java2
-rw-r--r--src/main/java/cuchaz/enigma/gui/highlight/ObfuscatedHighlightPainter.java4
-rw-r--r--src/main/java/cuchaz/enigma/gui/highlight/OtherHighlightPainter.java2
6 files changed, 55 insertions, 26 deletions
diff --git a/src/main/java/cuchaz/enigma/gui/Gui.java b/src/main/java/cuchaz/enigma/gui/Gui.java
index 86c97aa..4a891cf 100644
--- a/src/main/java/cuchaz/enigma/gui/Gui.java
+++ b/src/main/java/cuchaz/enigma/gui/Gui.java
@@ -68,13 +68,13 @@ public class Gui {
68 public JFileChooser exportJarFileChooser; 68 public JFileChooser exportJarFileChooser;
69 private GuiController controller; 69 private GuiController controller;
70 private JFrame frame; 70 private JFrame frame;
71 private PanelEditor editor; 71 public PanelEditor editor;
72 private JPanel classesPanel; 72 private JPanel classesPanel;
73 private JSplitPane splitClasses; 73 private JSplitPane splitClasses;
74 private PanelIdentifier infoPanel; 74 private PanelIdentifier infoPanel;
75 private ObfuscatedHighlightPainter obfuscatedHighlightPainter; 75 public ObfuscatedHighlightPainter obfuscatedHighlightPainter;
76 private DeobfuscatedHighlightPainter deobfuscatedHighlightPainter; 76 public DeobfuscatedHighlightPainter deobfuscatedHighlightPainter;
77 private OtherHighlightPainter otherHighlightPainter; 77 public OtherHighlightPainter otherHighlightPainter;
78 private SelectionHighlightPainter selectionHighlightPainter; 78 private SelectionHighlightPainter selectionHighlightPainter;
79 private JTree inheritanceTree; 79 private JTree inheritanceTree;
80 private JTree implementationsTree; 80 private JTree implementationsTree;
@@ -134,7 +134,7 @@ public class Gui {
134 this.editor = new PanelEditor(this); 134 this.editor = new PanelEditor(this);
135 JScrollPane sourceScroller = new JScrollPane(this.editor); 135 JScrollPane sourceScroller = new JScrollPane(this.editor);
136 this.editor.setContentType("text/minecraft"); 136 this.editor.setContentType("text/minecraft");
137 this.editor.setBackground(new Color(Config.INSTANCE.editorBackground)); 137 this.editor.setBackground(new Color(Config.getInstance().editorBackground));
138 DefaultSyntaxKit kit = (DefaultSyntaxKit) this.editor.getEditorKit(); 138 DefaultSyntaxKit kit = (DefaultSyntaxKit) this.editor.getEditorKit();
139 kit.toggleComponent(this.editor, "de.sciss.syntaxpane.components.TokenMarker"); 139 kit.toggleComponent(this.editor, "de.sciss.syntaxpane.components.TokenMarker");
140 140
diff --git a/src/main/java/cuchaz/enigma/gui/MinecraftSyntaxKit.java b/src/main/java/cuchaz/enigma/gui/MinecraftSyntaxKit.java
index 41de035..96327ab 100644
--- a/src/main/java/cuchaz/enigma/gui/MinecraftSyntaxKit.java
+++ b/src/main/java/cuchaz/enigma/gui/MinecraftSyntaxKit.java
@@ -4,12 +4,8 @@ import cuchaz.enigma.config.Config;
4import de.sciss.syntaxpane.syntaxkits.JavaSyntaxKit; 4import de.sciss.syntaxpane.syntaxkits.JavaSyntaxKit;
5import de.sciss.syntaxpane.util.Configuration; 5import de.sciss.syntaxpane.util.Configuration;
6 6
7/**
8 * Created by Mark on 04/06/2017.
9 */
10public class MinecraftSyntaxKit extends JavaSyntaxKit { 7public class MinecraftSyntaxKit extends JavaSyntaxKit {
11 8 private static Configuration configuration = null;
12 public Configuration configuration = null;
13 9
14 @Override 10 @Override
15 public Configuration getConfig() { 11 public Configuration getConfig() {
@@ -22,17 +18,21 @@ public class MinecraftSyntaxKit extends JavaSyntaxKit {
22 public void initConfig(Configuration baseConfig){ 18 public void initConfig(Configuration baseConfig){
23 configuration = baseConfig; 19 configuration = baseConfig;
24 //See de.sciss.syntaxpane.TokenType 20 //See de.sciss.syntaxpane.TokenType
25 configuration.put("Style.KEYWORD", Config.INSTANCE.highlightColor + ", 0"); 21 configuration.put("Style.KEYWORD", Config.getInstance().highlightColor + ", 0");
26 configuration.put("Style.KEYWORD2", Config.INSTANCE.highlightColor + ", 3"); 22 configuration.put("Style.KEYWORD2", Config.getInstance().highlightColor + ", 3");
27 configuration.put("Style.STRING", Config.INSTANCE.stringColor + ", 0"); 23 configuration.put("Style.STRING", Config.getInstance().stringColor + ", 0");
28 configuration.put("Style.STRING2", Config.INSTANCE.stringColor + ", 1"); 24 configuration.put("Style.STRING2", Config.getInstance().stringColor + ", 1");
29 configuration.put("Style.NUMBER", Config.INSTANCE.numberColor + ", 1"); 25 configuration.put("Style.NUMBER", Config.getInstance().numberColor + ", 1");
30 configuration.put("Style.OPERATOR", Config.INSTANCE.operatorColor + ", 0"); 26 configuration.put("Style.OPERATOR", Config.getInstance().operatorColor + ", 0");
31 configuration.put("Style.DELIMITER", Config.INSTANCE.delimiterColor + ", 1"); 27 configuration.put("Style.DELIMITER", Config.getInstance().delimiterColor + ", 1");
32 configuration.put("Style.TYPE", Config.INSTANCE.typeColor + ", 2"); 28 configuration.put("Style.TYPE", Config.getInstance().typeColor + ", 2");
33 configuration.put("Style.TYPE2", Config.INSTANCE.typeColor + ", 1"); 29 configuration.put("Style.TYPE2", Config.getInstance().typeColor + ", 1");
34 configuration.put("Style.IDENTIFIER", Config.INSTANCE.identifierColor + ", 0"); 30 configuration.put("Style.IDENTIFIER", Config.getInstance().identifierColor + ", 0");
35 configuration.put("Style.DEFAULT", Config.INSTANCE.defaultTextColor + ", 0"); 31 configuration.put("Style.DEFAULT", Config.getInstance().defaultTextColor + ", 0");
36 configuration.put("RightMarginColumn", "999"); //No need to have a right margin, if someone wants it add a config 32 configuration.put("RightMarginColumn", "999"); //No need to have a right margin, if someone wants it add a config
37 } 33 }
34
35 public static void invalidate(){
36 configuration = null;
37 }
38} 38}
diff --git a/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java b/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java
index e446c5a..c0568bf 100644
--- a/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java
+++ b/src/main/java/cuchaz/enigma/gui/elements/MenuBar.java
@@ -1,5 +1,7 @@
1package cuchaz.enigma.gui.elements; 1package cuchaz.enigma.gui.elements;
2 2
3import cuchaz.enigma.config.Config;
4import cuchaz.enigma.config.Themes;
3import cuchaz.enigma.gui.Gui; 5import cuchaz.enigma.gui.Gui;
4import cuchaz.enigma.gui.dialog.AboutDialog; 6import cuchaz.enigma.gui.dialog.AboutDialog;
5import cuchaz.enigma.throwables.MappingParseException; 7import cuchaz.enigma.throwables.MappingParseException;
@@ -211,6 +213,35 @@ public class MenuBar extends JMenuBar {
211 } 213 }
212 } 214 }
213 { 215 {
216 JMenu menu = new JMenu("View");
217 this.add(menu);
218 {
219 JMenu themes = new JMenu("Themes");
220 menu.add(themes);
221 {
222 JMenuItem defaultTheme = new JMenuItem("Default");
223 themes.add(defaultTheme);
224 defaultTheme.addActionListener(event -> Themes.setDefault(gui));
225 JMenuItem dark = new JMenuItem("Dank");
226 themes.add(dark);
227 dark.addActionListener(event -> Themes.setDark(gui));
228 themes.addSeparator();
229 JMenuItem refresh = new JMenuItem("Reload From config");
230 themes.add(refresh);
231 refresh.addActionListener(event -> {
232 try {
233 Config.getInstance().reset();
234 Config.getInstance().saveConfig();
235 Themes.updateTheme(gui);
236 } catch (IOException e) {
237 e.printStackTrace();
238 }
239 });
240 }
241
242 }
243 }
244 {
214 JMenu menu = new JMenu("Help"); 245 JMenu menu = new JMenu("Help");
215 this.add(menu); 246 this.add(menu);
216 { 247 {
diff --git a/src/main/java/cuchaz/enigma/gui/highlight/DeobfuscatedHighlightPainter.java b/src/main/java/cuchaz/enigma/gui/highlight/DeobfuscatedHighlightPainter.java
index ef651e3..41aa97f 100644
--- a/src/main/java/cuchaz/enigma/gui/highlight/DeobfuscatedHighlightPainter.java
+++ b/src/main/java/cuchaz/enigma/gui/highlight/DeobfuscatedHighlightPainter.java
@@ -16,6 +16,6 @@ import cuchaz.enigma.config.Config;
16public class DeobfuscatedHighlightPainter extends BoxHighlightPainter { 16public class DeobfuscatedHighlightPainter extends BoxHighlightPainter {
17 17
18 public DeobfuscatedHighlightPainter() { 18 public DeobfuscatedHighlightPainter() {
19 super(getColor(Config.INSTANCE.deobfuscatedColor, Config.INSTANCE.deobfuscatedHiglightAlpha), getColor(Config.INSTANCE.deobfuscatedColorOutline, Config.INSTANCE.deobfuscatedOutlineAlpha)); 19 super(getColor(Config.getInstance().deobfuscatedColor, Config.getInstance().deobfuscatedHiglightAlpha), getColor(Config.getInstance().deobfuscatedColorOutline, Config.getInstance().deobfuscatedOutlineAlpha));
20 } 20 }
21} 21}
diff --git a/src/main/java/cuchaz/enigma/gui/highlight/ObfuscatedHighlightPainter.java b/src/main/java/cuchaz/enigma/gui/highlight/ObfuscatedHighlightPainter.java
index 7887906..d735874 100644
--- a/src/main/java/cuchaz/enigma/gui/highlight/ObfuscatedHighlightPainter.java
+++ b/src/main/java/cuchaz/enigma/gui/highlight/ObfuscatedHighlightPainter.java
@@ -13,11 +13,9 @@ package cuchaz.enigma.gui.highlight;
13 13
14import cuchaz.enigma.config.Config; 14import cuchaz.enigma.config.Config;
15 15
16import java.awt.*;
17
18public class ObfuscatedHighlightPainter extends BoxHighlightPainter { 16public class ObfuscatedHighlightPainter extends BoxHighlightPainter {
19 17
20 public ObfuscatedHighlightPainter() { 18 public ObfuscatedHighlightPainter() {
21 super(getColor(Config.INSTANCE.obfuscatedColor, Config.INSTANCE.obfuscatedHiglightAlpha), getColor(Config.INSTANCE.obfuscatedColorOutline, Config.INSTANCE.obfuscatedOutlineAlpha)); 19 super(getColor(Config.getInstance().obfuscatedColor, Config.getInstance().obfuscatedHiglightAlpha), getColor(Config.getInstance().obfuscatedColorOutline, Config.getInstance().obfuscatedOutlineAlpha));
22 } 20 }
23} 21}
diff --git a/src/main/java/cuchaz/enigma/gui/highlight/OtherHighlightPainter.java b/src/main/java/cuchaz/enigma/gui/highlight/OtherHighlightPainter.java
index c5154e1..f4ae235 100644
--- a/src/main/java/cuchaz/enigma/gui/highlight/OtherHighlightPainter.java
+++ b/src/main/java/cuchaz/enigma/gui/highlight/OtherHighlightPainter.java
@@ -16,6 +16,6 @@ import cuchaz.enigma.config.Config;
16public class OtherHighlightPainter extends BoxHighlightPainter { 16public class OtherHighlightPainter extends BoxHighlightPainter {
17 17
18 public OtherHighlightPainter() { 18 public OtherHighlightPainter() {
19 super(null, getColor(Config.INSTANCE.otherColorOutline, Config.INSTANCE.otherOutlineAlpha)); 19 super(null, getColor(Config.getInstance().otherColorOutline, Config.getInstance().otherOutlineAlpha));
20 } 20 }
21} 21}