private void createActions() {

		new ActionBuilder("Show Source Map Entries", getName())
				.popupMenuPath("Show Source Map Entries")
				.description("Show a table of the source map entries associated with a SourceFile")
				.helpLocation(
					new HelpLocation(sourceFilesTablePlugin.getName(), "Show_Source_Map_Entries"))
				.withContext(SourceFilesTableActionContext.class)
				.enabledWhen(c -> c.getSelectedRowCount() == 1)
				.onAction(this::showSourceMapEntries)
				.buildAndInstallLocal(this);

		new ActionBuilder("Transform File", getName()).popupMenuPath("Tranform File")
				.description("Enter a file transform for a SourceFile")
				.helpLocation(new HelpLocation(sourceFilesTablePlugin.getName(), "Transform_File"))
				.withContext(SourceFilesTableActionContext.class)
				.enabledWhen(c -> c.getSelectedRowCount() == 1)
				.onAction(this::transformSourceFileAction)
				.buildAndInstallLocal(this);

		new ActionBuilder("Transform Directory", getName())
				.popupMenuPath("Transform Directory")
				.description("Add a directory transform based on this file's path")
				.helpLocation(
					new HelpLocation(sourceFilesTablePlugin.getName(), "Transform_Directory"))
				.withContext(SourceFilesTableActionContext.class)
				.enabledWhen(c -> c.getSelectedRowCount() == 1)
				.onAction(this::transformPath)
				.buildAndInstallLocal(this);

		new ActionBuilder("Remove Transform", getName()).popupMenuPath("Remove Transform")
				.description("Remove a transform")
				.helpLocation(
					new HelpLocation(sourceFilesTablePlugin.getName(), "Remove_Transform"))
				.withContext(TransformTableActionContext.class)
				.enabledWhen(c -> c.getSelectedRowCount() == 1)
				.onAction(this::removeTransform)
				.buildAndInstallLocal(this);

		new ActionBuilder("Edit Transform", getName()).popupMenuPath("Edit Transform")
				.description("Edit the transform")
				.helpLocation(new HelpLocation(sourceFilesTablePlugin.getName(), "Edit_Transform"))
				.withContext(TransformTableActionContext.class)
				.onAction(c -> editTransform())
				.buildAndInstallLocal(this);

		new ActionBuilder("Reload Source File Table", getName()).toolBarIcon(Icons.REFRESH_ICON)
				.description("Reloads the Source File Table")
				.helpLocation(
					new HelpLocation(sourceFilesTablePlugin.getName(), "Reload_Source_Files_Model"))
				.enabledWhen(c -> isStale)
				.onAction(c -> reloadModels(sourceFilesTablePlugin.getCurrentProgram()))
				.buildAndInstallLocal(this);

	}
Sets isStale to {@code true} when {@code rec} has an event type relevant to the source
file table.  If the event type is {@link ProgramEvent#SOURCE_FILE_REMOVED}, any associated
file transform is also removed.

@param rec program change record
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/sourcefilestable/SourceFilesTableProvider.java