ABCPanel exec in event dispatch fix

Issue #1083 Fixed offsets of try after AS3 deobfuscation
This commit is contained in:
Jindra Petřík
2015-11-23 05:54:10 +01:00
parent 22aadefd59
commit b2136f8f17
4 changed files with 29 additions and 48 deletions

View File

@@ -789,24 +789,31 @@ public class ABCPanel extends JPanel implements ItemListener, SearchListener<ABC
}
public void setDecompiledEditMode(boolean val) {
if (val) {
lastDecompiled = decompiledTextArea.getText();
} else {
decompiledTextArea.setText(lastDecompiled);
}
View.execInEventDispatch(new Runnable() {
decompiledTextArea.setEditable(val);
saveDecompiledButton.setVisible(val);
saveDecompiledButton.setEnabled(false);
editDecompiledButton.setVisible(!val);
experimentalLabel.setVisible(!val);
cancelDecompiledButton.setVisible(val);
decompiledTextArea.getCaret().setVisible(true);
decLabel.setIcon(val ? View.getIcon("editing16") : null);
detailPanel.setVisible(!val);
@Override
public void run() {
if (val) {
lastDecompiled = decompiledTextArea.getText();
} else {
decompiledTextArea.setText(lastDecompiled);
}
decompiledTextArea.setEditable(val);
saveDecompiledButton.setVisible(val);
saveDecompiledButton.setEnabled(false);
editDecompiledButton.setVisible(!val);
experimentalLabel.setVisible(!val);
cancelDecompiledButton.setVisible(val);
decompiledTextArea.getCaret().setVisible(true);
decLabel.setIcon(val ? View.getIcon("editing16") : null);
detailPanel.setVisible(!val);
decompiledTextArea.ignoreCarret = val;
decompiledTextArea.requestFocusInWindow();
}
});
decompiledTextArea.ignoreCarret = val;
decompiledTextArea.requestFocusInWindow();
}
private void editDecompiledButtonActionPerformed(ActionEvent evt) {