diff --git a/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/WorkPaneMainComponent.java b/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/WorkPaneMainComponent.java index c08c6ce1..04ec9e05 100644 --- a/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/WorkPaneMainComponent.java +++ b/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/WorkPaneMainComponent.java @@ -158,9 +158,7 @@ public class WorkPaneMainComponent extends VisibleComponent //load class resources public void addClassResource(final FileContainer container, final String name, final ClassNode cn) { - final String workingName = container.name + ">" + name; - - addResource(container, name, new ClassViewer(container, name, cn, workingName)); + addResource(container, name, new ClassViewer(container, name, cn)); } //Load file resources @@ -168,16 +166,14 @@ public class WorkPaneMainComponent extends VisibleComponent { if (contents == null) //a directory return; - - final String workingName = container.name + ">" + name; - addResource(container, name, new FileViewer(container, name, contents, workingName)); + addResource(container, name, new FileViewer(container, name, contents)); } private void addResource(final FileContainer container, final String name, final ResourceViewer resourceView) { - final String workingName = container.name + ">" + name; - + final String workingName = container.generateWorkName(name); + //create a new tab if the resource isn't opened currently if (!openedTabs.contains(workingName)) { diff --git a/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/viewer/ClassViewer.java b/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/viewer/ClassViewer.java index d9e723e3..e38b5e63 100644 --- a/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/viewer/ClassViewer.java +++ b/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/viewer/ClassViewer.java @@ -69,9 +69,9 @@ public class ClassViewer extends ResourceViewer public List methods = Arrays.asList(new MethodParser(), new MethodParser(), new MethodParser()); public final String workingName; - public ClassViewer(final FileContainer container, final String name, final ClassNode cn, String workingName) + public ClassViewer(final FileContainer container, final String name, final ClassNode cn) { - this.workingName = workingName; + this.workingName = container.generateWorkName(name); this.container = container; this.name = name; diff --git a/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/viewer/FileViewer.java b/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/viewer/FileViewer.java index 3ae21966..912e2b9e 100644 --- a/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/viewer/FileViewer.java +++ b/src/main/java/the/bytecode/club/bytecodeviewer/gui/resourceviewer/viewer/FileViewer.java @@ -61,11 +61,11 @@ public class FileViewer extends ResourceViewer public BufferedImage image; public boolean canRefresh; - public FileViewer(final FileContainer container, final String name, final byte[] contents, String workingName) + public FileViewer(final FileContainer container, final String name, final byte[] contents) { this.name = name; this.contents = contents; - this.workingName = workingName; + this.workingName = container.generateWorkName(name); this.container = container; this.setName(name); this.setLayout(new BorderLayout()); diff --git a/src/main/java/the/bytecode/club/bytecodeviewer/util/FileContainer.java b/src/main/java/the/bytecode/club/bytecodeviewer/util/FileContainer.java index 99175ccb..6e1297c2 100644 --- a/src/main/java/the/bytecode/club/bytecodeviewer/util/FileContainer.java +++ b/src/main/java/the/bytecode/club/bytecodeviewer/util/FileContainer.java @@ -57,4 +57,9 @@ public class FileContainer { return null; } + + public String generateWorkName(String name) + { + return file.getAbsolutePath() + ">" + name; + } }