Class BytecodeDecompilerView
java.lang.Object
org.jrd.frontend.frame.main.decompilerview.BytecodeDecompilerView
Class that creates GUI for attached VM.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate classprivate class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate ActionListenerprivate HexWithControlsprivate TextWithControlsprivate TextWithControlsprivate ActionListenerprivate static final Stringprivate HexWithControlsprivate final JTabbedPaneprivate JPanelprivate JPanelprivate TextWithControlsprivate JButtonprivate JPanelprivate ActionListenerprivate JTextFieldprivate JPanelprivate ActionListenerprivate JPanelprivate JScrollPaneprivate JTextFieldprivate final Colorprivate JPanelprivate QuickCompilerprivate JButtonprivate JButtonprivate ClassesAndMethodsProviderprivate DependenciesReaderprivate static final Stringprivate JButtonprivate JFrameprivate JButtonprivate ClassListRendererprivate ActionListenerprivate JButtonprivate JButtonprivate Fileprivate Stringprivate Stringprivate Stringprivate Stringprivate ClassInfo[]private final JFrameprivate JCheckBoxprivate JButtonprivate static final Insetsprivate JComboBox<DecompilerWrapper>private JButtonprivate JButtonprivate ActionListenerprivate JButtonprivate booleanprivate JCheckBoxprivate JSplitPaneprivate booleanprivate JButton -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate voidaddClassesGui(boolean boot, String[] fqnFilePairs) private voidaddClassGui(String fqn, String file) private voidstatic DimensionbuttonSizeBasedOnTextField(JButton originalButton, JTextField referenceTextField) private voidbytesWorker(String name) private voidbooleanbooleanConstructor creates the graphics and adds the action listeners.private voidprivate voidhandleClassInfoSwitching(boolean reload) private voidprivate booleanprivate booleanprivate booleanprivate booleanprivate booleanprivate booleanmatchesAny(List<ClassInfo> filtered, Pattern p, ClassInfo clazz) voidrefreshComboBox(List<DecompilerWrapper> wrappers) voidreloadClassList(ClassInfo[] classesToReload) Sets the unfiltered class list array and invokes an update.voidreloadTextField(String name, String decompiledClass, byte[] source, String additionalDecompiledClass, byte[] additionalSource, String additionalSrcClass) Sets the decompiled code into JTextAreavoidsetAddActionListener(ActionListener listener) voidsetBytesActionListener(ActionListener listener) voidsetClassesActionListener(ActionListener listener) voidsetCompileListener(QuickCompiler listener) voidprivate voidsetDecompiledClass(String name, String data, byte[] source, String additionalData, byte[] additionalSource, String additionalSrcData) voidsetDepsProvider(DependenciesReader depsReader) voidsetInitActionListener(ActionListener listener) voidsetJarActionListener(ActionListener listener) voidvoidvoidstatic Stringprivate void
-
Field Details
-
bytecodeDecompilerPanel
-
splitPane
-
classes
-
classesToolBar
-
reloadClassesButton
-
searchInClassesButton
-
showInfoCheckBox
-
classCount
-
classesSortField
-
metadata
-
classesSortFieldColor
-
classesPanel
-
classesScrollPane
-
filteredClassesJList
-
filteredClassesRenderer
-
buffersPanel
-
buffersToolBar
-
diffButton
-
undoButton
-
redoButton
-
insertButton
-
bytecodeButton
-
detachButton
-
initClassButton
-
overwriteButton
-
compileButton
-
compileAndUploadButton
-
pluginComboBox
-
buffers
-
bytecodeBuffer
-
binary
-
additionalSrcBuffer
-
additionalBytecodeBuffer
-
additionalBinary
-
bytesActionListener
-
classesActionListener
-
searchClassesActionListener
-
initActionListener
-
addActionListener
-
addJar
-
compileAction
-
completionHelper
-
overwriteActionListener
-
dependenciesReader
-
loadedClasses
-
lastDecompiledClass
-
lastFqn
-
lastAddedFqn
-
lastAddedFile
-
lastSearch
-
splitPaneFirstResize
private boolean splitPaneFirstResize -
shouldAttach
private boolean shouldAttach -
mainFrame
-
detachedBytecodeFrame
-
CLASS_LIST_REGISTERED_KEY_CODES
-
PANEL_INSETS
-
DETACH_BUTTON_TEXT
- See Also:
-
ATTACH_BUTTON_TEXT
- See Also:
-
-
Constructor Details
-
BytecodeDecompilerView
-
-
Method Details
-
getBytecodeDecompilerPanel
Constructor creates the graphics and adds the action listeners.- Returns:
- BytecodeDecompilerPanel
-
handleClassInfoSwitching
private void handleClassInfoSwitching(boolean reload) -
getDependenciesReader
-
setDepsProvider
-
isDecompiledBytecodeBufferVisible
private boolean isDecompiledBytecodeBufferVisible() -
isBinaryBufferVisible
private boolean isBinaryBufferVisible() -
isAdditionalBinaryBufferVisible
private boolean isAdditionalBinaryBufferVisible() -
isAdditionalDecompiledBytecodeBufferVisible
private boolean isAdditionalDecompiledBytecodeBufferVisible() -
isAdditionalSrcBufferVisible
private boolean isAdditionalSrcBufferVisible() -
handleBuffersDetaching
private void handleBuffersDetaching() -
styleTooltip
-
updateClassList
private void updateClassList() -
matchesAny
-
reloadClassList
Sets the unfiltered class list array and invokes an update.- Parameters:
classesToReload- String[] classesToReload.
-
reloadTextField
public void reloadTextField(String name, String decompiledClass, byte[] source, String additionalDecompiledClass, byte[] additionalSource, String additionalSrcClass) Sets the decompiled code into JTextArea- Parameters:
decompiledClass- String of source code of decompiler class
-
setDecompiledClass
-
setSearchInActionListener
-
setClassesActionListener
-
setInitActionListener
-
setAddActionListener
-
setJarActionListener
-
setCompileListener
-
setCompletionHelper
-
getCompletionHelper
-
setBytesActionListener
-
setPopup
-
setOverwriteActionListener
-
refreshComboBox
-
getSelectedDecompiler
-
buttonSizeBasedOnTextField
public static Dimension buttonSizeBasedOnTextField(JButton originalButton, JTextField referenceTextField) -
classWorker
private void classWorker() -
bytesWorker
-
doShowClassInfo
public boolean doShowClassInfo() -
doSearchInClassInfo
public boolean doSearchInClassInfo() -
addJar
-
addClassGui
-
initGui
-
addClassesGui
- Throws:
IOException
-