Package ghidra.framework.main
Class FrontEndPlugin
- java.lang.Object
-
- ghidra.framework.plugintool.Plugin
-
- ghidra.framework.main.FrontEndPlugin
-
- All Implemented Interfaces:
RemoteAdapterListener
,FrontEndService
,ProgramaticUseOnly
,PluginEventListener
,ServiceListener
,ExtensionPoint
public class FrontEndPlugin extends Plugin implements FrontEndService, RemoteAdapterListener, ProgramaticUseOnly
Main plugin component for the Ghidra Project Window, which is a PluginTool. This plugin manages all of the GUI elements, e.g., the Data tree panel, view panels for other projects, etc.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface ghidra.util.classfinder.ExtensionPoint
ExtensionPoint.Exclude, ExtensionPoint.Util
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.List<DockingAction>
openActions
-
Fields inherited from class ghidra.framework.plugintool.Plugin
name, pluginDescription, tool
-
-
Constructor Summary
Constructors Constructor Description FrontEndPlugin(PluginTool tool)
Construct a new FrontEndPlugin.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addProjectListener(ProjectListener l)
Adds the specified listener to the front-end tool.void
connectionStateChanged(java.lang.Object adapter)
Callback notification indicating the remote object connection state has changed.protected void
createToolSpecificOpenActions()
protected void
dispose()
Tells a plugin that it is no longer needed.Workspace
getActiveWorkspace()
static java.lang.String
getCategory()
Get the category where this plugin belongs.javax.swing.JComponent
getComponent()
Get the component for this plugin.static java.lang.String
getDescription()
Get the plugin's description.static java.lang.String
getDescriptiveName()
Get the descriptive name for this plugin.void
openDomainFile(DomainFile domainFile)
void
readDataState(SaveState saveState)
Tells the Plugin to read its data-dependent state from the given SaveState object.void
removeProjectListener(ProjectListener l)
Removes the specified listener from the front-end tool.void
writeDataState(SaveState saveState)
Tells the Plugin to write any data-dependent state to the output stream.-
Methods inherited from class ghidra.framework.plugintool.Plugin
acceptData, canClose, canCloseDomainObject, cleanup, close, dataStateRestoreCompleted, dependsUpon, deregisterService, equals, eventSent, firePluginEvent, getData, getMissingRequiredServices, getName, getPluginDescription, getPluginName, getServicesRequired, getSupportedDataTypes, getTool, getTransientState, getUndoRedoState, hashCode, hasMissingRequiredService, hasUnsaveData, init, isDisposed, prepareToSave, processEvent, readConfigState, registerDynamicEventConsumed, registerDynamicServiceProvided, registerEventConsumed, registerEventProduced, registerServiceProvided, registerServiceUsed, restoreTransientState, restoreUndoRedoState, saveData, serviceAdded, serviceRemoved, writeConfigState
-
-
-
-
Field Detail
-
openActions
protected java.util.List<DockingAction> openActions
-
-
Constructor Detail
-
FrontEndPlugin
public FrontEndPlugin(PluginTool tool)
Construct a new FrontEndPlugin. This plugin is constructed once when the Front end tool (Ghidra Project Window) is created. When a previously opened project is created, the Ghidra Project Window is restored to the state associated with that project.- Parameters:
tool
- the front end tool
-
-
Method Detail
-
createToolSpecificOpenActions
protected void createToolSpecificOpenActions()
-
getComponent
public javax.swing.JComponent getComponent()
Get the component for this plugin. NOTE: made plugin for JUnits...
-
getDescriptiveName
public static java.lang.String getDescriptiveName()
Get the descriptive name for this plugin.
-
getDescription
public static java.lang.String getDescription()
Get the plugin's description.
-
getCategory
public static java.lang.String getCategory()
Get the category where this plugin belongs.
-
connectionStateChanged
public void connectionStateChanged(java.lang.Object adapter)
Description copied from interface:RemoteAdapterListener
Callback notification indicating the remote object connection state has changed.- Specified by:
connectionStateChanged
in interfaceRemoteAdapterListener
- Parameters:
adapter
- remote interface adapter (e.g., RepositoryServerAdapter).
-
writeDataState
public void writeDataState(SaveState saveState)
Description copied from class:Plugin
Tells the Plugin to write any data-dependent state to the output stream.- Overrides:
writeDataState
in classPlugin
- Parameters:
saveState
- object that holds primitives for state information
-
readDataState
public void readDataState(SaveState saveState)
Description copied from class:Plugin
Tells the Plugin to read its data-dependent state from the given SaveState object.- Overrides:
readDataState
in classPlugin
- Parameters:
saveState
- object that holds primitives for state information
-
getActiveWorkspace
public final Workspace getActiveWorkspace()
-
dispose
protected void dispose()
Description copied from class:Plugin
Tells a plugin that it is no longer needed. The plugin should release any resources that it has. All actions, components, services will automatically be cleaned up.
-
addProjectListener
public void addProjectListener(ProjectListener l)
Description copied from interface:FrontEndService
Adds the specified listener to the front-end tool.- Specified by:
addProjectListener
in interfaceFrontEndService
- Parameters:
l
- the project listener- See Also:
FrontEndService.addProjectListener(ghidra.framework.model.ProjectListener)
-
removeProjectListener
public void removeProjectListener(ProjectListener l)
Description copied from interface:FrontEndService
Removes the specified listener from the front-end tool.- Specified by:
removeProjectListener
in interfaceFrontEndService
- Parameters:
l
- the project listener- See Also:
FrontEndService.removeProjectListener(ghidra.framework.model.ProjectListener)
-
openDomainFile
public void openDomainFile(DomainFile domainFile)
-
-