mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2026-05-24 03:09:36 +08:00
Merge remote-tracking branch 'origin/GP-1728_DebugNoOutput' into patch
This commit is contained in:
+9
-7
@@ -19,34 +19,36 @@ import java.io.File;
|
||||
|
||||
import javax.swing.JComponent;
|
||||
|
||||
import docking.ActionContext;
|
||||
import docking.action.DockingAction;
|
||||
import docking.action.MenuData;
|
||||
import docking.widgets.OptionDialog;
|
||||
import docking.widgets.filechooser.GhidraFileChooser;
|
||||
import ghidra.app.decompiler.component.DecompilerController;
|
||||
import ghidra.app.plugin.core.decompile.DecompilerActionContext;
|
||||
import ghidra.app.plugin.core.decompile.DecompilePlugin;
|
||||
import ghidra.app.util.HelpTopics;
|
||||
import ghidra.util.HelpLocation;
|
||||
import ghidra.util.filechooser.ExtensionFileFilter;
|
||||
|
||||
public class DebugDecompilerAction extends AbstractDecompilerAction {
|
||||
public class DebugDecompilerAction extends DockingAction {
|
||||
|
||||
private DecompilerController controller;
|
||||
|
||||
public DebugDecompilerAction(DecompilerController controller) {
|
||||
super("Debug Function Decompilation");
|
||||
super("Debug Function Decompilation", DecompilePlugin.class.getSimpleName());
|
||||
setHelpLocation(new HelpLocation(HelpTopics.DECOMPILER, "ToolBarDebug"));
|
||||
this.controller = controller;
|
||||
setMenuBarData(new MenuData(new String[] { "Debug Function Decompilation" }, "xDebug"));
|
||||
}
|
||||
|
||||
@Override
|
||||
protected boolean isEnabledForDecompilerContext(DecompilerActionContext context) {
|
||||
return context.getFunction() != null;
|
||||
public boolean isEnabledForContext(ActionContext context) {
|
||||
return (controller.getFunction() != null);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void decompilerActionPerformed(DecompilerActionContext context) {
|
||||
JComponent parentComponent = context.getDecompilerPanel();
|
||||
public void actionPerformed(ActionContext context) {
|
||||
JComponent parentComponent = controller.getDecompilerPanel();
|
||||
GhidraFileChooser fileChooser = new GhidraFileChooser(parentComponent);
|
||||
fileChooser.setTitle("Please Choose Output File");
|
||||
fileChooser.setFileFilter(new ExtensionFileFilter(new String[] { "xml" }, "XML Files"));
|
||||
|
||||
Reference in New Issue
Block a user