do not recreate tree model every time

This commit is contained in:
honfika@gmail.com
2015-03-07 14:38:26 +01:00
parent 99ec0a592c
commit 3c995f42e3
21 changed files with 625 additions and 145 deletions

View File

@@ -278,7 +278,7 @@ public final class SWF implements SWFContainerItem, Timelined {
@Internal
public SWFBundle bundle;
@Internal
private Timeline timeline;
@@ -865,6 +865,15 @@ public final class SWF implements SWFContainerItem, Timelined {
return this;
}
public SWF getRootSwf() {
SWF result = this;
while (result.binaryData != null) {
result = result.binaryData.getSwf();
}
return result;
}
public String getFile() {
return file;
}

View File

@@ -34,16 +34,16 @@ public class SWFList implements List<SWF>, SWFContainerItem {
public String name;
//public boolean isBundle;
public SWFBundle bundle;
//public Class bundleClass;
public SWFSourceInfo sourceInfo;
public List<SWF> swfs = new ArrayList<>();
public boolean isBundle() {
return bundle != null;
}
@Override
public SWF getSwf() {
throw new UnsupportedOperationException("Not supported.");
@@ -51,7 +51,7 @@ public class SWFList implements List<SWF>, SWFContainerItem {
@Override
public String toString() {
if (bundle != null) {
if (isBundle()) {
return name;
} else {
return swfs.get(0).getFileTitle();

View File

@@ -17,7 +17,6 @@
package com.jpexs.decompiler.flash.treeitems;
import com.jpexs.decompiler.flash.SWF;
import com.jpexs.decompiler.flash.SWFBundle;
/**
*