Program: 61956
Project: 61956
Buggy source:
@Override public void actionPerformed(ActionEvent e){
switch (e.getActionCommand()) {
case "String_Node_Str":
    if (oldValue instanceof FontTag) {
      FontEmbedDialog fed=new FontEmbedDialog(fontSelection.getSelectedItem().toString(),fontAddCharactersField.getText(),((FontTag)oldValue).getFontStyle());
      if (fed.display()) {
        Set<Integer> selChars=fed.getSelectedChars();
        if (!selChars.isEmpty()) {
          String selFont=fed.getSelectedFont();
          fontSelection.setSelectedItem(selFont);
          fontAddChars((FontTag)oldValue,selChars,selFont);
          fontAddCharactersField.setText("String_Node_Str");
          reload(true);
        }
      }
    }
  break;
case "String_Node_Str":
Color newColor=JColorChooser.showDialog(null,AppStrings.translate("String_Node_Str"),View.swfBackgroundColor);
if (newColor != null) {
View.swfBackgroundColor=newColor;
reload(true);
}
break;
case "String_Node_Str":
if (View.showConfirmDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.YES_NO_OPTION,JOptionPane.WARNING_MESSAGE) == JOptionPane.YES_OPTION) {
Main.reloadSWF();
}
break;
case "String_Node_Str":
Main.advancedSettings();
break;
case "String_Node_Str":
Main.loadFromMemory();
break;
case "String_Node_Str":
Main.loadFromCache();
break;
case "String_Node_Str":
Main.displayErrorFrame();
break;
case "String_Node_Str":
String newchars=fontAddCharactersField.getText();
if (oldValue instanceof FontTag) {
Set<Integer> selChars=new TreeSet<>();
for (int c=0; c < newchars.length(); c++) {
selChars.add(newchars.codePointAt(c));
}
fontAddChars((FontTag)oldValue,selChars,fontSelection.getSelectedItem().toString());
fontAddCharactersField.setText("String_Node_Str");
reload(true);
}
break;
case "String_Node_Str":
Configuration.gotoMainClassOnStartup.set(miGotoMainClassOnStartup.isSelected());
break;
case "String_Node_Str":
Configuration.cacheOnDisk.set(miCacheDisk.isSelected());
if (miCacheDisk.isSelected()) {
Cache.setStorageType(Cache.STORAGE_FILES);
}
 else {
Cache.setStorageType(Cache.STORAGE_MEMORY);
}
break;
case "String_Node_Str":
new SelectLanguageDialog().display();
break;
case "String_Node_Str":
Configuration.decompile.set(!miDecompile.isSelected());
clearCache();
if (abcPanel != null) {
abcPanel.reload();
}
reload(true);
doFilter();
break;
case "String_Node_Str":
if (miAssociate.isSelected() == Main.isAddedToContextMenu()) {
return;
}
Main.addToContextMenu(miAssociate.isSelected());
new Timer().schedule(new TimerTask(){
@Override public void run(){
miAssociate.setSelected(Main.isAddedToContextMenu());
}
}
,1000);
break;
case "String_Node_Str":
gotoDocumentClass();
break;
case "String_Node_Str":
String confStr=translate("String_Node_Str") + "String_Node_Str";
if (miParallelSpeedUp.isSelected()) {
confStr+="String_Node_Str" + translate("String_Node_Str");
}
 else {
confStr+="String_Node_Str" + translate("String_Node_Str");
}
if (View.showConfirmDialog(null,confStr,translate("String_Node_Str"),JOptionPane.OK_CANCEL_OPTION) == JOptionPane.OK_OPTION) {
Configuration.parallelSpeedUp.set((Boolean)miParallelSpeedUp.isSelected());
}
 else {
miParallelSpeedUp.setSelected(!miParallelSpeedUp.isSelected());
}
break;
case "String_Node_Str":
Configuration.internalFlashViewer.set(miInternalViewer.isSelected());
reload(true);
break;
case "String_Node_Str":
if (searchDialog == null) {
searchDialog=new SearchDialog();
}
searchDialog.setVisible(true);
if (searchDialog.result) {
final String txt=searchDialog.searchField.getText();
if (!txt.isEmpty()) {
if (abcPanel != null) {
(new Thread(){
@Override public void run(){
if (abcPanel.search(txt,searchDialog.ignoreCaseCheckBox.isSelected(),searchDialog.regexpCheckBox.isSelected())) {
View.execInEventDispatch(new Runnable(){
@Override public void run(){
showDetail(DETAILCARDAS3NAVIGATOR);
showCard(CARDACTIONSCRIPTPANEL);
}
}
);
}
 else {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str",txt),translate("String_Node_Str"),JOptionPane.INFORMATION_MESSAGE);
}
}
}
).start();
}
 else {
(new Thread(){
@Override public void run(){
if (actionPanel.search(txt,searchDialog.ignoreCaseCheckBox.isSelected(),searchDialog.regexpCheckBox.isSelected())) {
View.execInEventDispatch(new Runnable(){
@Override public void run(){
showCard(CARDACTIONSCRIPTPANEL);
}
}
);
}
 else {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str",txt),translate("String_Node_Str"),JOptionPane.INFORMATION_MESSAGE);
}
}
}
).start();
}
}
}
break;
case "String_Node_Str":
Object tagObj=tagTree.getLastSelectedPathComponent();
if (tagObj == null) {
return;
}
if (tagObj instanceof TagNode) {
tagObj=((TagNode)tagObj).tag;
}
if (tagObj instanceof ImageTag) {
ImageTag it=(ImageTag)tagObj;
if (it.importSupported()) {
JFileChooser fc=new JFileChooser();
fc.setCurrentDirectory(new File(Configuration.lastOpenDir.get()));
fc.setFileFilter(new FileFilter(){
@Override public boolean accept(File f){
return (f.getName().toLowerCase().endsWith("String_Node_Str")) || (f.getName().toLowerCase().endsWith("String_Node_Str")) || (f.getName().toLowerCase().endsWith("String_Node_Str"))|| (f.getName().toLowerCase().endsWith("String_Node_Str"))|| (f.isDirectory());
}
@Override public String getDescription(){
return translate("String_Node_Str");
}
}
);
JFrame f=new JFrame();
View.setWindowIcon(f);
int returnVal=fc.showOpenDialog(f);
if (returnVal == JFileChooser.APPROVE_OPTION) {
Configuration.lastOpenDir.set(Helper.fixDialogFile(fc.getSelectedFile()).getParentFile().getAbsolutePath());
File selfile=Helper.fixDialogFile(fc.getSelectedFile());
byte[] data=Helper.readFile(selfile.getAbsolutePath());
try {
it.setImage(data);
swf.clearImageCache();
}
 catch (IOException ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE,"String_Node_Str",ex);
View.showMessageDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
reload(true);
}
}
}
break;
case "String_Node_Str":
List<Object> sel=getSelected(tagTree);
List<Tag> tagsToRemove=new ArrayList<>();
for (Object o : sel) {
Object tag=o;
if (o instanceof TagNode) {
tag=((TagNode)o).tag;
}
if (tag instanceof Tag) {
tagsToRemove.add((Tag)tag);
}
}
if (tagsToRemove.size() == 1) {
Tag tag=tagsToRemove.get(0);
if (View.showConfirmDialog(this,translate("String_Node_Str").replace("String_Node_Str",tag.toString()),translate("String_Node_Str"),JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION) {
swf.removeTag(tag);
showCard(CARDEMPTYPANEL);
refreshTree();
}
}
 else if (tagsToRemove.size() > 1) {
if (View.showConfirmDialog(this,translate("String_Node_Str").replace("String_Node_Str",Integer.toString(tagsToRemove.size())),translate("String_Node_Str"),JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION) {
for (Tag tag : tagsToRemove) {
swf.removeTag(tag);
}
showCard(CARDEMPTYPANEL);
refreshTree();
}
}
break;
case "String_Node_Str":
setEditText(true);
break;
case "String_Node_Str":
setEditText(false);
break;
case "String_Node_Str":
if (oldValue instanceof TextTag) {
try {
if (((TextTag)oldValue).setFormattedText(new MissingCharacterHandler(){
@Override public boolean handle(FontTag font,List<Tag> tags,char character){
String fontName=sourceFontsMap.get(font.getFontId());
if (fontName == null) {
fontName=font.getFontName(tags);
}
fontName=FontTag.findInstalledFontName(fontName);
Font f=new Font(fontName,font.getFontStyle(),18);
if (!f.canDisplay(character)) {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str","String_Node_Str" + character),translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
return false;
}
font.addCharacter(tags,character,fontName);
return true;
}
}
,swf.tags,textValue.getText(),fontSelection.getSelectedItem().toString())) {
setEditText(false);
}
}
 catch (ParseException ex) {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str",ex.text).replace("String_Node_Str","String_Node_Str" + ex.line),translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
}
break;
case "String_Node_Str":
if (View.showConfirmDialog(this,translate("String_Node_Str") + "String_Node_Str" + (miAutoDeobfuscation.isSelected() ? translate("String_Node_Str") : translate("String_Node_Str")),translate("String_Node_Str"),JOptionPane.OK_CANCEL_OPTION) == JOptionPane.OK_OPTION) {
Configuration.autoDeobfuscate.set(miAutoDeobfuscation.isSelected());
clearCache();
if (abcPanel != null) {
abcPanel.reload();
}
reload(true);
doFilter();
}
 else {
miAutoDeobfuscation.setSelected(!miAutoDeobfuscation.isSelected());
}
break;
case "String_Node_Str":
setVisible(false);
if (Main.proxyFrame != null) {
if (Main.proxyFrame.isVisible()) {
return;
}
}
Main.exit();
break;
}
if (Main.isWorking()) {
return;
}
switch (e.getActionCommand()) {
case "String_Node_Str":
if (swf.fileAttributes.actionScript3) {
final int multiName=abcPanel.decompiledTextArea.getMultinameUnderCursor();
if (multiName > 0) {
(new Thread(){
@Override public void run(){
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
renameMultiname(multiName);
Main.stopWork();
}
}
).start();
}
 else {
View.showMessageDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.INFORMATION_MESSAGE);
}
}
 else {
final String identifier=actionPanel.getStringUnderCursor();
if (identifier != null) {
(new Thread(){
@Override public void run(){
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
try {
renameIdentifier(identifier);
}
 catch (InterruptedException ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE,null,ex);
}
Main.stopWork();
}
}
).start();
}
 else {
View.showMessageDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.INFORMATION_MESSAGE);
}
}
break;
case "String_Node_Str":
Main.about();
break;
case "String_Node_Str":
Main.showProxy();
break;
case "String_Node_Str":
if (e.getSource() instanceof JCheckBoxMenuItem) {
Main.setSubLimiter(((JCheckBoxMenuItem)e.getSource()).getState());
}
break;
case "String_Node_Str":
try {
Main.saveFile(Main.file);
}
 catch (IOException ex) {
Logger.getLogger(com.jpexs.decompiler.flash.gui.abc.ABCPanel.class.getName()).log(Level.SEVERE,null,ex);
View.showMessageDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
break;
case "String_Node_Str":
if (Main.saveFileDialog()) {
setTitle(ApplicationInfo.applicationVerName + (Configuration.displayFileName.get() ? "String_Node_Str" + Main.getFileTitle() : "String_Node_Str"));
saveCommandButton.setEnabled(!Main.readOnly);
}
break;
case "String_Node_Str":
Main.openFileDialog();
break;
case "String_Node_Str":
JFileChooser fc=new JFileChooser();
String selDir=Configuration.lastOpenDir.get();
fc.setCurrentDirectory(new File(selDir));
if (!selDir.endsWith(File.separator)) {
selDir+=File.separator;
}
String fileName=(new File(Main.file).getName());
fileName=fileName.substring(0,fileName.length() - 4) + "String_Node_Str";
fc.setSelectedFile(new File(selDir + fileName));
FileFilter fla=new FileFilter(){
@Override public boolean accept(File f){
return f.isDirectory() || (f.getName().toLowerCase().endsWith("String_Node_Str"));
}
@Override public String getDescription(){
return translate("String_Node_Str");
}
}
;
FileFilter xfl=new FileFilter(){
@Override public boolean accept(File f){
return f.isDirectory() || (f.getName().toLowerCase().endsWith("String_Node_Str"));
}
@Override public String getDescription(){
return translate("String_Node_Str");
}
}
;
fc.setFileFilter(fla);
fc.addChoosableFileFilter(xfl);
fc.setAcceptAllFileFilterUsed(false);
JFrame f=new JFrame();
View.setWindowIcon(f);
int returnVal=fc.showSaveDialog(f);
if (returnVal == JFileChooser.APPROVE_OPTION) {
Configuration.lastOpenDir.set(Helper.fixDialogFile(fc.getSelectedFile()).getParentFile().getAbsolutePath());
File sf=Helper.fixDialogFile(fc.getSelectedFile());
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
final boolean compressed=fc.getFileFilter() == fla;
if (!compressed) {
if (sf.getName().endsWith("String_Node_Str")) {
sf=new File(sf.getAbsolutePath().substring(0,sf.getAbsolutePath().length() - 4) + "String_Node_Str");
}
}
final File selfile=sf;
(new Thread(){
@Override public void run(){
Helper.freeMem();
try {
if (compressed) {
swf.exportFla(errorHandler,selfile.getAbsolutePath(),new File(Main.file).getName(),ApplicationInfo.applicationName,ApplicationInfo.applicationVerName,ApplicationInfo.version,Configuration.parallelSpeedUp.get());
}
 else {
swf.exportXfl(errorHandler,selfile.getAbsolutePath(),new File(Main.file).getName(),ApplicationInfo.applicationName,ApplicationInfo.applicationVerName,ApplicationInfo.version,Configuration.parallelSpeedUp.get());
}
}
 catch (IOException ex) {
View.showMessageDialog(null,translate("String_Node_Str") + "String_Node_Str" + ex.getClass().getName()+ "String_Node_Str"+ ex.getLocalizedMessage(),translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
Helper.freeMem();
Main.stopWork();
}
}
).start();
}
break;
case "String_Node_Str":
case "String_Node_Str":
final ExportDialog export=new ExportDialog();
export.setVisible(true);
if (!export.cancelled) {
JFileChooser chooser=new JFileChooser();
chooser.setCurrentDirectory(new File(Configuration.lastExportDir.get()));
chooser.setDialogTitle(translate("String_Node_Str"));
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
chooser.setAcceptAllFileFilterUsed(false);
if (chooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
final long timeBefore=System.currentTimeMillis();
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
final String selFile=Helper.fixDialogFile(chooser.getSelectedFile()).getAbsolutePath();
Configuration.lastExportDir.set(Helper.fixDialogFile(chooser.getSelectedFile()).getAbsolutePath());
final ExportMode exportMode=ExportMode.get(export.getOption(ExportDialog.OPTION_ACTIONSCRIPT));
final boolean isMp3OrWav=export.getOption(ExportDialog.OPTION_SOUNDS) == 0;
final boolean isFormatted=export.getOption(ExportDialog.OPTION_TEXTS) == 1;
final boolean onlySel=e.getActionCommand().endsWith("String_Node_Str");
(new Thread(){
@Override public void run(){
try {
if (onlySel) {
exportSelection(errorHandler,selFile,export);
}
 else {
swf.exportImages(errorHandler,selFile + File.separator + "String_Node_Str");
swf.exportShapes(errorHandler,selFile + File.separator + "String_Node_Str");
swf.exportTexts(errorHandler,selFile + File.separator + "String_Node_Str",isFormatted);
swf.exportMovies(errorHandler,selFile + File.separator + "String_Node_Str");
swf.exportSounds(errorHandler,selFile + File.separator + "String_Node_Str",isMp3OrWav,isMp3OrWav);
swf.exportBinaryData(errorHandler,selFile + File.separator + "String_Node_Str");
swf.exportActionScript(errorHandler,selFile,exportMode,Configuration.parallelSpeedUp.get());
}
}
 catch (Exception ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE,"String_Node_Str",ex);
View.showMessageDialog(null,translate("String_Node_Str") + "String_Node_Str" + ex.getClass().getName()+ "String_Node_Str"+ ex.getLocalizedMessage());
}
Main.stopWork();
long timeAfter=System.currentTimeMillis();
long timeMs=timeAfter - timeBefore;
setStatus(translate("String_Node_Str").replace("String_Node_Str",Helper.formatTimeSec(timeMs)));
}
}
).start();
}
}
break;
case "String_Node_Str":
if (!Main.checkForUpdates()) {
View.showMessageDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.INFORMATION_MESSAGE);
}
break;
case "String_Node_Str":
String helpUsURL=ApplicationInfo.projectPage + "String_Node_Str";
if (java.awt.Desktop.isDesktopSupported()) {
java.awt.Desktop desktop=java.awt.Desktop.getDesktop();
try {
java.net.URI uri=new java.net.URI(helpUsURL);
desktop.browse(uri);
}
 catch (URISyntaxException|IOException ex) {
}
}
 else {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str",helpUsURL));
}
break;
case "String_Node_Str":
String homePageURL=ApplicationInfo.projectPage;
if (java.awt.Desktop.isDesktopSupported()) {
java.awt.Desktop desktop=java.awt.Desktop.getDesktop();
try {
java.net.URI uri=new java.net.URI(homePageURL);
desktop.browse(uri);
}
 catch (URISyntaxException|IOException ex) {
}
}
 else {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str",homePageURL));
}
break;
case "String_Node_Str":
case "String_Node_Str":
Main.startWork(translate("String_Node_Str"));
final boolean all=e.getActionCommand().endsWith("String_Node_Str");
if ((!all) || confirmExperimental()) {
new SwingWorker(){
@Override protected Object doInBackground() throws Exception {
int cnt=0;
if (all) {
for (ABCContainerTag tag : abcPanel.list) {
tag.getABC().restoreControlFlow();
}
}
 else {
int bi=abcPanel.detailPanel.methodTraitPanel.methodCodePanel.getBodyIndex();
if (bi != -1) {
abcPanel.abc.bodies[bi].restoreControlFlow(abcPanel.abc.constants,abcPanel.decompiledTextArea.getCurrentTrait(),abcPanel.abc.method_info[abcPanel.abc.bodies[bi].method_info]);
}
abcPanel.detailPanel.methodTraitPanel.methodCodePanel.setBodyIndex(bi,abcPanel.abc,abcPanel.decompiledTextArea.getCurrentTrait());
}
Main.stopWork();
View.showMessageDialog(null,"String_Node_Str");
abcPanel.reload();
doFilter();
return true;
}
}
.execute();
}
break;
case "String_Node_Str":
if (confirmExperimental()) {
final RenameType renameType=new RenameDialog().display();
if (renameType != null) {
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
new SwingWorker(){
@Override protected Object doInBackground() throws Exception {
try {
int cnt=0;
cnt=swf.deobfuscateIdentifiers(renameType);
Main.stopWork();
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str","String_Node_Str" + cnt));
swf.assignClassesToSymbols();
clearCache();
if (abcPanel != null) {
abcPanel.reload();
}
doFilter();
reload(true);
}
 catch (Exception ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE,"String_Node_Str",ex);
}
return true;
}
}
.execute();
}
}
break;
case "String_Node_Str":
case "String_Node_Str":
if (deobfuscationDialog == null) {
deobfuscationDialog=new DeobfuscationDialog();
}
deobfuscationDialog.setVisible(true);
if (deobfuscationDialog.ok) {
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
new SwingWorker(){
@Override protected Object doInBackground() throws Exception {
try {
if (deobfuscationDialog.processAllCheckbox.isSelected()) {
for (ABCContainerTag tag : abcPanel.list) {
if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_REMOVE_DEAD_CODE) {
tag.getABC().removeDeadCode();
}
 else if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_REMOVE_TRAPS) {
tag.getABC().removeTraps();
}
 else if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_RESTORE_CONTROL_FLOW) {
tag.getABC().removeTraps();
tag.getABC().restoreControlFlow();
}
}
}
 else {
int bi=abcPanel.detailPanel.methodTraitPanel.methodCodePanel.getBodyIndex();
Trait t=abcPanel.decompiledTextArea.getCurrentTrait();
if (bi != -1) {
if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_REMOVE_DEAD_CODE) {
abcPanel.abc.bodies[bi].removeDeadCode(abcPanel.abc.constants,t,abcPanel.abc.method_info[abcPanel.abc.bodies[bi].method_info]);
}
 else if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_REMOVE_TRAPS) {
abcPanel.abc.bodies[bi].removeTraps(abcPanel.abc.constants,abcPanel.abc,t,abcPanel.decompiledTextArea.getScriptLeaf().scriptIndex,abcPanel.decompiledTextArea.getClassIndex(),abcPanel.decompiledTextArea.getIsStatic(),"String_Node_Str");
}
 else if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_RESTORE_CONTROL_FLOW) {
abcPanel.abc.bodies[bi].removeTraps(abcPanel.abc.constants,abcPanel.abc,t,abcPanel.decompiledTextArea.getScriptLeaf().scriptIndex,abcPanel.decompiledTextArea.getClassIndex(),abcPanel.decompiledTextArea.getIsStatic(),"String_Node_Str");
abcPanel.abc.bodies[bi].restoreControlFlow(abcPanel.abc.constants,t,abcPanel.abc.method_info[abcPanel.abc.bodies[bi].method_info]);
}
}
abcPanel.detailPanel.methodTraitPanel.methodCodePanel.setBodyIndex(bi,abcPanel.abc,t);
}
}
 catch (Exception ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE,"String_Node_Str",ex);
}
Main.stopWork();
View.showMessageDialog(null,translate("String_Node_Str"));
clearCache();
abcPanel.reload();
doFilter();
return true;
}
}
.execute();
}
break;
}
}

Fixed version (ground truth):
@Override public void actionPerformed(ActionEvent e){
switch (e.getActionCommand()) {
case "String_Node_Str":
    if (oldValue instanceof FontTag) {
      FontEmbedDialog fed=new FontEmbedDialog(fontSelection.getSelectedItem().toString(),fontAddCharactersField.getText(),((FontTag)oldValue).getFontStyle());
      if (fed.display()) {
        Set<Integer> selChars=fed.getSelectedChars();
        if (!selChars.isEmpty()) {
          String selFont=fed.getSelectedFont();
          fontSelection.setSelectedItem(selFont);
          fontAddChars((FontTag)oldValue,selChars,selFont);
          fontAddCharactersField.setText("String_Node_Str");
          reload(true);
        }
      }
    }
  break;
case "String_Node_Str":
Color newColor=JColorChooser.showDialog(null,AppStrings.translate("String_Node_Str"),View.swfBackgroundColor);
if (newColor != null) {
View.swfBackgroundColor=newColor;
reload(true);
}
break;
case "String_Node_Str":
if (View.showConfirmDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.YES_NO_OPTION,JOptionPane.WARNING_MESSAGE) == JOptionPane.YES_OPTION) {
Main.reloadSWF();
}
break;
case "String_Node_Str":
Main.advancedSettings();
break;
case "String_Node_Str":
Main.loadFromMemory();
break;
case "String_Node_Str":
Main.loadFromCache();
break;
case "String_Node_Str":
Main.displayErrorFrame();
break;
case "String_Node_Str":
String newchars=fontAddCharactersField.getText();
if (oldValue instanceof FontTag) {
Set<Integer> selChars=new TreeSet<>();
for (int c=0; c < newchars.length(); c++) {
selChars.add(newchars.codePointAt(c));
}
fontAddChars((FontTag)oldValue,selChars,fontSelection.getSelectedItem().toString());
fontAddCharactersField.setText("String_Node_Str");
reload(true);
}
break;
case "String_Node_Str":
Configuration.gotoMainClassOnStartup.set(miGotoMainClassOnStartup.isSelected());
break;
case "String_Node_Str":
Configuration.cacheOnDisk.set(miCacheDisk.isSelected());
if (miCacheDisk.isSelected()) {
Cache.setStorageType(Cache.STORAGE_FILES);
}
 else {
Cache.setStorageType(Cache.STORAGE_MEMORY);
}
break;
case "String_Node_Str":
new SelectLanguageDialog().display();
break;
case "String_Node_Str":
Configuration.decompile.set(!miDecompile.isSelected());
clearCache();
if (abcPanel != null) {
abcPanel.reload();
}
reload(true);
doFilter();
break;
case "String_Node_Str":
if (miAssociate.isSelected() == Main.isAddedToContextMenu()) {
return;
}
Main.addToContextMenu(miAssociate.isSelected());
new Timer().schedule(new TimerTask(){
@Override public void run(){
miAssociate.setSelected(Main.isAddedToContextMenu());
}
}
,1000);
break;
case "String_Node_Str":
gotoDocumentClass();
break;
case "String_Node_Str":
String confStr=translate("String_Node_Str") + "String_Node_Str";
if (miParallelSpeedUp.isSelected()) {
confStr+="String_Node_Str" + translate("String_Node_Str");
}
 else {
confStr+="String_Node_Str" + translate("String_Node_Str");
}
if (View.showConfirmDialog(null,confStr,translate("String_Node_Str"),JOptionPane.OK_CANCEL_OPTION) == JOptionPane.OK_OPTION) {
Configuration.parallelSpeedUp.set((Boolean)miParallelSpeedUp.isSelected());
}
 else {
miParallelSpeedUp.setSelected(!miParallelSpeedUp.isSelected());
}
break;
case "String_Node_Str":
Configuration.internalFlashViewer.set(miInternalViewer.isSelected());
reload(true);
break;
case "String_Node_Str":
if (searchDialog == null) {
searchDialog=new SearchDialog();
}
searchDialog.setVisible(true);
if (searchDialog.result) {
final String txt=searchDialog.searchField.getText();
if (!txt.isEmpty()) {
if (abcPanel != null) {
(new Thread(){
@Override public void run(){
if (abcPanel.search(txt,searchDialog.ignoreCaseCheckBox.isSelected(),searchDialog.regexpCheckBox.isSelected())) {
View.execInEventDispatch(new Runnable(){
@Override public void run(){
showDetail(DETAILCARDAS3NAVIGATOR);
showCard(CARDACTIONSCRIPTPANEL);
}
}
);
}
 else {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str",txt),translate("String_Node_Str"),JOptionPane.INFORMATION_MESSAGE);
}
}
}
).start();
}
 else {
(new Thread(){
@Override public void run(){
if (actionPanel.search(txt,searchDialog.ignoreCaseCheckBox.isSelected(),searchDialog.regexpCheckBox.isSelected())) {
View.execInEventDispatch(new Runnable(){
@Override public void run(){
showCard(CARDACTIONSCRIPTPANEL);
}
}
);
}
 else {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str",txt),translate("String_Node_Str"),JOptionPane.INFORMATION_MESSAGE);
}
}
}
).start();
}
}
}
break;
case "String_Node_Str":
Object tagObj=tagTree.getLastSelectedPathComponent();
if (tagObj == null) {
return;
}
if (tagObj instanceof TagNode) {
tagObj=((TagNode)tagObj).tag;
}
if (tagObj instanceof ImageTag) {
ImageTag it=(ImageTag)tagObj;
if (it.importSupported()) {
JFileChooser fc=new JFileChooser();
fc.setCurrentDirectory(new File(Configuration.lastOpenDir.get()));
fc.setFileFilter(new FileFilter(){
@Override public boolean accept(File f){
return (f.getName().toLowerCase().endsWith("String_Node_Str")) || (f.getName().toLowerCase().endsWith("String_Node_Str")) || (f.getName().toLowerCase().endsWith("String_Node_Str"))|| (f.getName().toLowerCase().endsWith("String_Node_Str"))|| (f.isDirectory());
}
@Override public String getDescription(){
return translate("String_Node_Str");
}
}
);
JFrame f=new JFrame();
View.setWindowIcon(f);
int returnVal=fc.showOpenDialog(f);
if (returnVal == JFileChooser.APPROVE_OPTION) {
Configuration.lastOpenDir.set(Helper.fixDialogFile(fc.getSelectedFile()).getParentFile().getAbsolutePath());
File selfile=Helper.fixDialogFile(fc.getSelectedFile());
byte[] data=Helper.readFile(selfile.getAbsolutePath());
try {
it.setImage(data);
swf.clearImageCache();
}
 catch (IOException ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE,"String_Node_Str",ex);
View.showMessageDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
reload(true);
}
}
}
break;
case "String_Node_Str":
List<Object> sel=getSelected(tagTree);
List<Tag> tagsToRemove=new ArrayList<>();
for (Object o : sel) {
Object tag=o;
if (o instanceof TagNode) {
tag=((TagNode)o).tag;
}
if (tag instanceof Tag) {
tagsToRemove.add((Tag)tag);
}
}
if (tagsToRemove.size() == 1) {
Tag tag=tagsToRemove.get(0);
if (View.showConfirmDialog(this,translate("String_Node_Str").replace("String_Node_Str",tag.toString()),translate("String_Node_Str"),JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION) {
swf.removeTag(tag);
showCard(CARDEMPTYPANEL);
refreshTree();
}
}
 else if (tagsToRemove.size() > 1) {
if (View.showConfirmDialog(this,translate("String_Node_Str").replace("String_Node_Str",Integer.toString(tagsToRemove.size())),translate("String_Node_Str"),JOptionPane.YES_NO_OPTION,JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION) {
for (Tag tag : tagsToRemove) {
swf.removeTag(tag);
}
showCard(CARDEMPTYPANEL);
refreshTree();
}
}
break;
case "String_Node_Str":
setEditText(true);
break;
case "String_Node_Str":
setEditText(false);
break;
case "String_Node_Str":
if (oldValue instanceof TextTag) {
try {
if (((TextTag)oldValue).setFormattedText(new MissingCharacterHandler(){
@Override public boolean handle(FontTag font,List<Tag> tags,char character){
String fontName=sourceFontsMap.get(font.getFontId());
if (fontName == null) {
fontName=font.getFontName(tags);
}
fontName=FontTag.findInstalledFontName(fontName);
Font f=new Font(fontName,font.getFontStyle(),18);
if (!f.canDisplay(character)) {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str","String_Node_Str" + character),translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
return false;
}
font.addCharacter(tags,character,fontName);
return true;
}
}
,swf.tags,textValue.getText(),fontSelection.getSelectedItem().toString())) {
setEditText(false);
}
}
 catch (ParseException ex) {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str",ex.text).replace("String_Node_Str","String_Node_Str" + ex.line),translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
}
break;
case "String_Node_Str":
if (View.showConfirmDialog(this,translate("String_Node_Str") + "String_Node_Str" + (miAutoDeobfuscation.isSelected() ? translate("String_Node_Str") : translate("String_Node_Str")),translate("String_Node_Str"),JOptionPane.OK_CANCEL_OPTION) == JOptionPane.OK_OPTION) {
Configuration.autoDeobfuscate.set(miAutoDeobfuscation.isSelected());
clearCache();
if (abcPanel != null) {
abcPanel.reload();
}
reload(true);
doFilter();
}
 else {
miAutoDeobfuscation.setSelected(!miAutoDeobfuscation.isSelected());
}
break;
case "String_Node_Str":
setVisible(false);
if (Main.proxyFrame != null) {
if (Main.proxyFrame.isVisible()) {
return;
}
}
Main.exit();
break;
}
if (Main.isWorking()) {
return;
}
switch (e.getActionCommand()) {
case "String_Node_Str":
if (swf.fileAttributes.actionScript3) {
final int multiName=abcPanel.decompiledTextArea.getMultinameUnderCursor();
if (multiName > 0) {
(new Thread(){
@Override public void run(){
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
renameMultiname(multiName);
Main.stopWork();
}
}
).start();
}
 else {
View.showMessageDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.INFORMATION_MESSAGE);
}
}
 else {
final String identifier=actionPanel.getStringUnderCursor();
if (identifier != null) {
(new Thread(){
@Override public void run(){
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
try {
renameIdentifier(identifier);
}
 catch (InterruptedException ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE,null,ex);
}
Main.stopWork();
}
}
).start();
}
 else {
View.showMessageDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.INFORMATION_MESSAGE);
}
}
break;
case "String_Node_Str":
Main.about();
break;
case "String_Node_Str":
Main.showProxy();
break;
case "String_Node_Str":
if (e.getSource() instanceof JCheckBoxMenuItem) {
Main.setSubLimiter(((JCheckBoxMenuItem)e.getSource()).getState());
}
break;
case "String_Node_Str":
try {
Main.saveFile(Main.file);
}
 catch (IOException ex) {
Logger.getLogger(com.jpexs.decompiler.flash.gui.abc.ABCPanel.class.getName()).log(Level.SEVERE,null,ex);
View.showMessageDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
break;
case "String_Node_Str":
if (Main.saveFileDialog()) {
setTitle(ApplicationInfo.applicationVerName + (Configuration.displayFileName.get() ? "String_Node_Str" + Main.getFileTitle() : "String_Node_Str"));
saveCommandButton.setEnabled(!Main.readOnly);
}
break;
case "String_Node_Str":
Main.openFileDialog();
break;
case "String_Node_Str":
JFileChooser fc=new JFileChooser();
String selDir=Configuration.lastOpenDir.get();
fc.setCurrentDirectory(new File(selDir));
if (!selDir.endsWith(File.separator)) {
selDir+=File.separator;
}
String fileName=(new File(Main.file).getName());
fileName=fileName.substring(0,fileName.length() - 4) + "String_Node_Str";
fc.setSelectedFile(new File(selDir + fileName));
FileFilter fla=new FileFilter(){
@Override public boolean accept(File f){
return f.isDirectory() || (f.getName().toLowerCase().endsWith("String_Node_Str"));
}
@Override public String getDescription(){
return translate("String_Node_Str");
}
}
;
FileFilter xfl=new FileFilter(){
@Override public boolean accept(File f){
return f.isDirectory() || (f.getName().toLowerCase().endsWith("String_Node_Str"));
}
@Override public String getDescription(){
return translate("String_Node_Str");
}
}
;
fc.setFileFilter(fla);
fc.addChoosableFileFilter(xfl);
fc.setAcceptAllFileFilterUsed(false);
JFrame f=new JFrame();
View.setWindowIcon(f);
int returnVal=fc.showSaveDialog(f);
if (returnVal == JFileChooser.APPROVE_OPTION) {
Configuration.lastOpenDir.set(Helper.fixDialogFile(fc.getSelectedFile()).getParentFile().getAbsolutePath());
File sf=Helper.fixDialogFile(fc.getSelectedFile());
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
final boolean compressed=fc.getFileFilter() == fla;
if (!compressed) {
if (sf.getName().endsWith("String_Node_Str")) {
sf=new File(sf.getAbsolutePath().substring(0,sf.getAbsolutePath().length() - 4) + "String_Node_Str");
}
}
final File selfile=sf;
(new Thread(){
@Override public void run(){
Helper.freeMem();
try {
if (compressed) {
swf.exportFla(errorHandler,selfile.getAbsolutePath(),new File(Main.file).getName(),ApplicationInfo.applicationName,ApplicationInfo.applicationVerName,ApplicationInfo.version,Configuration.parallelSpeedUp.get());
}
 else {
swf.exportXfl(errorHandler,selfile.getAbsolutePath(),new File(Main.file).getName(),ApplicationInfo.applicationName,ApplicationInfo.applicationVerName,ApplicationInfo.version,Configuration.parallelSpeedUp.get());
}
}
 catch (IOException ex) {
View.showMessageDialog(null,translate("String_Node_Str") + "String_Node_Str" + ex.getClass().getName()+ "String_Node_Str"+ ex.getLocalizedMessage(),translate("String_Node_Str"),JOptionPane.ERROR_MESSAGE);
}
Helper.freeMem();
Main.stopWork();
}
}
).start();
}
break;
case "String_Node_Str":
case "String_Node_Str":
final ExportDialog export=new ExportDialog();
export.setVisible(true);
if (!export.cancelled) {
JFileChooser chooser=new JFileChooser();
chooser.setCurrentDirectory(new File(Configuration.lastExportDir.get()));
chooser.setDialogTitle(translate("String_Node_Str"));
chooser.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
chooser.setAcceptAllFileFilterUsed(false);
if (chooser.showOpenDialog(this) == JFileChooser.APPROVE_OPTION) {
final long timeBefore=System.currentTimeMillis();
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
final String selFile=Helper.fixDialogFile(chooser.getSelectedFile()).getAbsolutePath();
Configuration.lastExportDir.set(Helper.fixDialogFile(chooser.getSelectedFile()).getAbsolutePath());
final ExportMode exportMode=ExportMode.get(export.getOption(ExportDialog.OPTION_ACTIONSCRIPT));
final boolean isMp3OrWav=export.getOption(ExportDialog.OPTION_SOUNDS) == 0;
final boolean isFormatted=export.getOption(ExportDialog.OPTION_TEXTS) == 1;
final boolean onlySel=e.getActionCommand().endsWith("String_Node_Str");
(new Thread(){
@Override public void run(){
try {
if (onlySel) {
exportSelection(errorHandler,selFile,export);
}
 else {
swf.exportImages(errorHandler,selFile + File.separator + "String_Node_Str");
swf.exportShapes(errorHandler,selFile + File.separator + "String_Node_Str");
swf.exportTexts(errorHandler,selFile + File.separator + "String_Node_Str",isFormatted);
swf.exportMovies(errorHandler,selFile + File.separator + "String_Node_Str");
swf.exportSounds(errorHandler,selFile + File.separator + "String_Node_Str",isMp3OrWav,isMp3OrWav);
swf.exportBinaryData(errorHandler,selFile + File.separator + "String_Node_Str");
swf.exportActionScript(errorHandler,selFile,exportMode,Configuration.parallelSpeedUp.get());
}
}
 catch (Exception ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE,"String_Node_Str",ex);
View.showMessageDialog(null,translate("String_Node_Str") + "String_Node_Str" + ex.getClass().getName()+ "String_Node_Str"+ ex.getLocalizedMessage());
}
Main.stopWork();
long timeAfter=System.currentTimeMillis();
long timeMs=timeAfter - timeBefore;
setStatus(translate("String_Node_Str").replace("String_Node_Str",Helper.formatTimeSec(timeMs)));
}
}
).start();
}
}
break;
case "String_Node_Str":
if (!Main.checkForUpdates()) {
View.showMessageDialog(null,translate("String_Node_Str"),translate("String_Node_Str"),JOptionPane.INFORMATION_MESSAGE);
}
break;
case "String_Node_Str":
String helpUsURL=ApplicationInfo.projectPage + "String_Node_Str";
if (java.awt.Desktop.isDesktopSupported()) {
java.awt.Desktop desktop=java.awt.Desktop.getDesktop();
try {
java.net.URI uri=new java.net.URI(helpUsURL);
desktop.browse(uri);
}
 catch (URISyntaxException|IOException ex) {
}
}
 else {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str",helpUsURL));
}
break;
case "String_Node_Str":
String homePageURL=ApplicationInfo.projectPage;
if (java.awt.Desktop.isDesktopSupported()) {
java.awt.Desktop desktop=java.awt.Desktop.getDesktop();
try {
java.net.URI uri=new java.net.URI(homePageURL);
desktop.browse(uri);
}
 catch (URISyntaxException|IOException ex) {
}
}
 else {
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str",homePageURL));
}
break;
case "String_Node_Str":
case "String_Node_Str":
Main.startWork(translate("String_Node_Str"));
final boolean all=e.getActionCommand().endsWith("String_Node_Str");
if ((!all) || confirmExperimental()) {
new SwingWorker(){
@Override protected Object doInBackground() throws Exception {
int cnt=0;
if (all) {
for (ABCContainerTag tag : abcPanel.list) {
tag.getABC().restoreControlFlow();
}
}
 else {
int bi=abcPanel.detailPanel.methodTraitPanel.methodCodePanel.getBodyIndex();
if (bi != -1) {
abcPanel.abc.bodies[bi].restoreControlFlow(abcPanel.abc.constants,abcPanel.decompiledTextArea.getCurrentTrait(),abcPanel.abc.method_info[abcPanel.abc.bodies[bi].method_info]);
}
abcPanel.detailPanel.methodTraitPanel.methodCodePanel.setBodyIndex(bi,abcPanel.abc,abcPanel.decompiledTextArea.getCurrentTrait());
}
Main.stopWork();
View.showMessageDialog(null,"String_Node_Str");
abcPanel.reload();
doFilter();
return true;
}
}
.execute();
}
break;
case "String_Node_Str":
if (confirmExperimental()) {
final RenameType renameType=new RenameDialog().display();
if (renameType != null) {
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
new SwingWorker(){
@Override protected Object doInBackground() throws Exception {
try {
int cnt=0;
cnt=swf.deobfuscateIdentifiers(renameType);
Main.stopWork();
View.showMessageDialog(null,translate("String_Node_Str").replace("String_Node_Str","String_Node_Str" + cnt));
swf.assignClassesToSymbols();
clearCache();
if (abcPanel != null) {
abcPanel.reload();
}
doFilter();
reload(true);
}
 catch (Exception ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE,"String_Node_Str",ex);
}
return true;
}
}
.execute();
}
}
break;
case "String_Node_Str":
case "String_Node_Str":
if (deobfuscationDialog == null) {
deobfuscationDialog=new DeobfuscationDialog();
}
deobfuscationDialog.setVisible(true);
if (deobfuscationDialog.ok) {
Main.startWork(translate("String_Node_Str") + "String_Node_Str");
new SwingWorker(){
@Override protected Object doInBackground() throws Exception {
try {
if (deobfuscationDialog.processAllCheckbox.isSelected()) {
for (ABCContainerTag tag : abcPanel.list) {
if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_REMOVE_DEAD_CODE) {
tag.getABC().removeDeadCode();
}
 else if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_REMOVE_TRAPS) {
tag.getABC().removeTraps();
}
 else if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_RESTORE_CONTROL_FLOW) {
tag.getABC().removeTraps();
tag.getABC().restoreControlFlow();
}
}
}
 else {
int bi=abcPanel.detailPanel.methodTraitPanel.methodCodePanel.getBodyIndex();
Trait t=abcPanel.decompiledTextArea.getCurrentTrait();
if (bi != -1) {
if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_REMOVE_DEAD_CODE) {
abcPanel.abc.bodies[bi].removeDeadCode(abcPanel.abc.constants,t,abcPanel.abc.method_info[abcPanel.abc.bodies[bi].method_info]);
}
 else if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_REMOVE_TRAPS) {
abcPanel.abc.bodies[bi].removeTraps(abcPanel.abc.constants,abcPanel.abc,t,abcPanel.decompiledTextArea.getScriptLeaf().scriptIndex,abcPanel.decompiledTextArea.getClassIndex(),abcPanel.decompiledTextArea.getIsStatic(),"String_Node_Str");
}
 else if (deobfuscationDialog.codeProcessingLevel.getValue() == DeobfuscationDialog.LEVEL_RESTORE_CONTROL_FLOW) {
abcPanel.abc.bodies[bi].removeTraps(abcPanel.abc.constants,abcPanel.abc,t,abcPanel.decompiledTextArea.getScriptLeaf().scriptIndex,abcPanel.decompiledTextArea.getClassIndex(),abcPanel.decompiledTextArea.getIsStatic(),"String_Node_Str");
abcPanel.abc.bodies[bi].restoreControlFlow(abcPanel.abc.constants,t,abcPanel.abc.method_info[abcPanel.abc.bodies[bi].method_info]);
}
}
abcPanel.detailPanel.methodTraitPanel.methodCodePanel.setBodyIndex(bi,abcPanel.abc,t);
}
}
 catch (Exception ex) {
Logger.getLogger(MainFrame.class.getName()).log(Level.SEVERE,"String_Node_Str",ex);
}
Main.stopWork();
View.showMessageDialog(null,translate("String_Node_Str"));
clearCache();
abcPanel.reload();
doFilter();
return true;
}
}
.execute();
}
break;
case "String_Node_Str":
List<Tag> tags=new ArrayList<>(swf.tags);
for (Tag tag : tags) {
System.out.println(tag.getClass());
if (!(tag instanceof ABCContainerTag || tag instanceof ASMSource)) {
swf.removeTag(tag);
}
}
showCard(CARDEMPTYPANEL);
refreshTree();
break;
case "String_Node_Str":
clearCache();
if (abcPanel != null) {
abcPanel.reload();
}
reload(true);
doFilter();
break;
}
}