app menu items enabled/disabled

This commit is contained in:
honfika@gmail.com
2015-05-24 17:48:19 +02:00
parent 3c834fe696
commit 2d6715f73e
2 changed files with 1008 additions and 988 deletions

View File

@@ -2637,23 +2637,22 @@ public final class SWF implements SWFContainerItem, Timelined {
}
private void removeTagWithDependenciesFromTimeline(Tag toRemove, Timeline timeline) {
int characterId = 0;
if (toRemove instanceof CharacterTag) {
characterId = ((CharacterTag) toRemove).getCharacterId();
}
Map<Integer, Integer> stage = new HashMap<>();
Set<Integer> dependingChars = new HashSet<>();
if (characterId != 0) {
dependingChars.add(characterId);
for (int i = 0; i < timeline.tags.size(); i++) {
Tag t = timeline.tags.get(i);
if (t instanceof CharacterIdTag) {
CharacterIdTag c = (CharacterIdTag) t;
Set<Integer> needed = new HashSet<>();
t.getNeededCharacters(needed);
if (needed.contains(characterId)) {
dependingChars.add(c.getCharacterId());
if (toRemove instanceof CharacterTag) {
int characterId = ((CharacterTag) toRemove).getCharacterId();
if (characterId != 0) {
dependingChars.add(characterId);
for (int i = 0; i < timeline.tags.size(); i++) {
Tag t = timeline.tags.get(i);
if (t instanceof CharacterIdTag) {
CharacterIdTag c = (CharacterIdTag) t;
Set<Integer> needed = new HashSet<>();
t.getNeededCharacters(needed);
if (needed.contains(characterId)) {
dependingChars.add(c.getCharacterId());
}
}
}
}