Package ghidra.framework.plugintool
Class ToolServicesAdapter
java.lang.Object
ghidra.framework.plugintool.ToolServicesAdapter
- All Implemented Interfaces:
ToolServices
-
Field Summary
Fields inherited from interface ghidra.framework.model.ToolServices
DEFAULT_TOOLNAME
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Add a listener that will be notified when the default tool specification changesboolean
canAutoSave
(PluginTool tool) Returns true if this tool should be saved base on the state of other running instances of the same toolvoid
closeTool
(PluginTool tool) Notify the framework that the tool is closing.void
displaySimilarTool
(PluginTool tool, DomainFile domainFile, PluginEvent event) Find a running tool like the one specified that has the named domain file.exportTool
(ToolTemplate tool) Save the tool to the given location on the local file system.getCompatibleTools
(Class<? extends DomainObject> domainClass) Returns a set of tools that can open the given domain file class.Returns theassociations
, which describe content types and the tools used to open them, for all content types known to the system.getDefaultToolTemplate
(DomainFile domainFile) Returns the default tool template used to open the tool.Return array of running toolsGet the tool chest for the projectlaunchDefaultTool
(DomainFile domainFile) Launch the default tool; if domainFile is not null, this file will be opened in the tool.launchTool
(String toolName, DomainFile domainFile) Launch the tool with the given namevoid
Remove the listenervoid
saveTool
(PluginTool tool) Saves the tool's configuration in the standard tool location.void
Sets theassociations
, which describe content types and the tools used to open them, for the system.
-
Constructor Details
-
ToolServicesAdapter
public ToolServicesAdapter()
-
-
Method Details
-
addDefaultToolChangeListener
Description copied from interface:ToolServices
Add a listener that will be notified when the default tool specification changes- Specified by:
addDefaultToolChangeListener
in interfaceToolServices
- Parameters:
listener
- the listener
-
canAutoSave
Description copied from interface:ToolServices
Returns true if this tool should be saved base on the state of other running instances of the same tool- Specified by:
canAutoSave
in interfaceToolServices
- Parameters:
tool
- the tool to check for saving- Returns:
- true if the tool should be saved
-
closeTool
Description copied from interface:ToolServices
Notify the framework that the tool is closing.- Specified by:
closeTool
in interfaceToolServices
- Parameters:
tool
- tool that is closing
-
displaySimilarTool
Description copied from interface:ToolServices
Find a running tool like the one specified that has the named domain file. If it finds a matching tool, then it is brought to the front. Otherwise, it creates one and runs it. It then invokes the specified event on the running tool.- Specified by:
displaySimilarTool
in interfaceToolServices
- Parameters:
tool
- find/create a tool like this one.domainFile
- open this file in the found/created tool.event
- invoke this event on the found/created tool
-
exportTool
Description copied from interface:ToolServices
Save the tool to the given location on the local file system.- Specified by:
exportTool
in interfaceToolServices
- Parameters:
tool
- the tool template to write- Returns:
- the file to which the tool was saved
- Throws:
FileNotFoundException
- thrown if the file's directory doesn't exist.IOException
- thrown if there is an error writing the file.
-
getCompatibleTools
Description copied from interface:ToolServices
Returns a set of tools that can open the given domain file class.- Specified by:
getCompatibleTools
in interfaceToolServices
- Parameters:
domainClass
- The domain file class type for which to get tools- Returns:
- the tools
-
getContentTypeToolAssociations
Description copied from interface:ToolServices
Returns theassociations
, which describe content types and the tools used to open them, for all content types known to the system.- Specified by:
getContentTypeToolAssociations
in interfaceToolServices
- Returns:
- the associations
- See Also:
-
getDefaultToolTemplate
Description copied from interface:ToolServices
Returns the default tool template used to open the tool. Here default means the tool that should be used to open the given file, whether defined by the user or the system default.- Specified by:
getDefaultToolTemplate
in interfaceToolServices
- Parameters:
domainFile
- The file for which to find the preferred tool.- Returns:
- The preferred tool that should be used to open the given file.
-
getRunningTools
Description copied from interface:ToolServices
Return array of running tools- Specified by:
getRunningTools
in interfaceToolServices
- Returns:
- array of Tools
-
getToolChest
Description copied from interface:ToolServices
Get the tool chest for the project- Specified by:
getToolChest
in interfaceToolServices
- Returns:
- the tool chest
-
launchDefaultTool
Description copied from interface:ToolServices
Launch the default tool; if domainFile is not null, this file will be opened in the tool.- Specified by:
launchDefaultTool
in interfaceToolServices
- Parameters:
domainFile
- the file to open; may be null- Returns:
- the tool
-
launchTool
Description copied from interface:ToolServices
Launch the tool with the given name- Specified by:
launchTool
in interfaceToolServices
- Parameters:
toolName
- name of the tool to launchdomainFile
- the file to open; may be null- Returns:
- the tool
-
removeDefaultToolChangeListener
Description copied from interface:ToolServices
Remove the listener- Specified by:
removeDefaultToolChangeListener
in interfaceToolServices
- Parameters:
listener
- the listener
-
saveTool
Description copied from interface:ToolServices
Saves the tool's configuration in the standard tool location.- Specified by:
saveTool
in interfaceToolServices
- Parameters:
tool
- tool to save.
-
setContentTypeToolAssociations
Description copied from interface:ToolServices
Sets theassociations
, which describe content types and the tools used to open them, for the system.- Specified by:
setContentTypeToolAssociations
in interfaceToolServices
- Parameters:
infos
- The associations to be applied- See Also:
-