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 class
private class
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate ActionListener
private HexWithControls
private TextWithControls
private TextWithControls
private ActionListener
private static final String
private HexWithControls
private final JTabbedPane
private JPanel
private JPanel
private TextWithControls
private JButton
private JPanel
private ActionListener
private JTextField
private JPanel
private ActionListener
private JPanel
private JScrollPane
private JTextField
private final Color
private JPanel
private QuickCompiler
private JButton
private JButton
private ClassesAndMethodsProvider
private DependenciesReader
private static final String
private JButton
private JFrame
private JButton
private ClassListRenderer
private ActionListener
private JButton
private JButton
private File
private String
private String
private String
private String
private ClassInfo[]
private final JFrame
private JCheckBox
private JButton
private static final Insets
private JComboBox<DecompilerWrapper>
private JButton
private JButton
private ActionListener
private JButton
private boolean
private JCheckBox
private JSplitPane
private boolean
private JButton
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate void
addClassesGui
(boolean boot, String[] fqnFilePairs) private void
addClassGui
(String fqn, String file) private void
static Dimension
buttonSizeBasedOnTextField
(JButton originalButton, JTextField referenceTextField) private void
bytesWorker
(String name) private void
boolean
boolean
Constructor creates the graphics and adds the action listeners.private void
private void
handleClassInfoSwitching
(boolean reload) private void
private boolean
private boolean
private boolean
private boolean
private boolean
private boolean
matchesAny
(List<ClassInfo> filtered, Pattern p, ClassInfo clazz) void
refreshComboBox
(List<DecompilerWrapper> wrappers) void
reloadClassList
(ClassInfo[] classesToReload) Sets the unfiltered class list array and invokes an update.void
reloadTextField
(String name, String decompiledClass, byte[] source, String additionalDecompiledClass, byte[] additionalSource, String additionalSrcClass) Sets the decompiled code into JTextAreavoid
setAddActionListener
(ActionListener listener) void
setBytesActionListener
(ActionListener listener) void
setClassesActionListener
(ActionListener listener) void
setCompileListener
(QuickCompiler listener) void
private void
setDecompiledClass
(String name, String data, byte[] source, String additionalData, byte[] additionalSource, String additionalSrcData) void
setDepsProvider
(DependenciesReader depsReader) void
setInitActionListener
(ActionListener listener) void
setJarActionListener
(ActionListener listener) void
void
void
static String
private 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
-