private void createPluginActions() {

		openAction = new DockingAction("Open Tree View", getName()) {
			@Override
			public void actionPerformed(ActionContext context) {
				openView(context.getSourceObject());
			}
		};

		Icon icon = new GIcon("icon.plugin.programtree.open.tree");
		openAction.setToolBarData(new ToolBarData(icon));
		openAction.setEnabled(false);
		openAction.setDescription("Open Tree View");
		openAction.setHelpLocation(new HelpLocation(getName(), "Open_Tree_View"));

		createAction = new DockingAction("Create Default Tree View", getName()) {
			@Override
			public void actionPerformed(ActionContext context) {
				createDefaultTreeView();
			}
		};

		icon = new GIcon("icon.plugin.programtree.new.tree");
		createAction.setToolBarData(new ToolBarData(icon));
		createAction.setEnabled(false);
		createAction.setDescription(HTMLUtilities.toHTML("Create a new default tree view; shows\n" +
			"a fragment for each of the memory blocks."));
		createAction.setHelpLocation(new HelpLocation(getName(), "Create_Default_Tree_View"));

		selectionToggleAction = new ToggleDockingAction("Navigation", getName()) {
			@Override
			public void actionPerformed(ActionContext context) {
				if (selectionToggleAction.isSelected()) {
					selectFragments();
				}
			}
		};
		selectionToggleAction.setEnabled(true);
		selectionToggleAction.setSelected(false);
		selectionToggleAction.setToolBarData(new ToolBarData(NAVIGATION_ICON));
		selectionToggleAction.setDescription(
			HTMLUtilities.toHTML("Toggle <b>On</b> means to select the fragment(s)\n" +
				"that corresponds to the current location."));
		selectionToggleAction
				.setHelpLocation(new HelpLocation(getName(), selectionToggleAction.getName()));
	}
Create the local actions that are shared among all the providers.
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/programtree/ProgramTreePlugin.java