private JComponent createComponent() {

		markupPanel = new JPanel(new BorderLayout());
		markupPanel.getAccessibleContext().setAccessibleName("Markup");
		markupItemsTable = createMarkupItemTable();
		markupItemsTablePanel = new JPanel(new BorderLayout());
		markupItemsTablePanel.getAccessibleContext().setAccessibleName("Markup Item Table");
		JPanel filterAreaPanel = createFilterArea();
		filterAreaPanel.getAccessibleContext().setAccessibleName("Filter Area");
		markupItemsTablePanel.add(tablePanel, BorderLayout.CENTER);
		markupItemsTablePanel.add(filterAreaPanel, BorderLayout.SOUTH);

		functionComparisonPanel = new FunctionComparisonPanel(tool, getOwner());
		addSpecificCodeComparisonActions();
		functionComparisonPanel.setCurrentTabbedComponent(ListingCodeComparisonPanel.NAME);
		functionComparisonPanel.getAccessibleContext().setAccessibleName("Function Comparison");
		functionComparisonPanel.setTitlePrefixes("Source:", "Destination:");
		ListingCodeComparisonPanel dualListingPanel = functionComparisonPanel.getDualListingPanel();
		if (dualListingPanel != null) {

			dualListingPanel.getListingPanel(LEFT)
					.setProgramLocationListener(new SourceProgramLocationListener());
			dualListingPanel.getListingPanel(RIGHT)
					.setProgramLocationListener(
						new DestinationProgramLocationListener());

			sourceHighlightProvider = new VTDualListingHighlightProvider(controller, true);
			destinationHighlightProvider = new VTDualListingHighlightProvider(controller, false);
			dualListingPanel.addHighlightProviders(sourceHighlightProvider,
				destinationHighlightProvider);
			sourceHighlightProvider.setListingPanel(dualListingPanel.getListingPanel(LEFT));
			destinationHighlightProvider.setListingPanel(dualListingPanel.getListingPanel(RIGHT));

			new VTDualListingDragNDropHandler(controller, dualListingPanel);
		}

		splitPane = new JSplitPane(JSplitPane.VERTICAL_SPLIT, markupItemsTablePanel,
			functionComparisonPanel);
		splitPane.setResizeWeight(0.4);
		splitPane.getAccessibleContext().setAccessibleName("Markup Items and Function Comparison");
		markupPanel.add(splitPane, BorderLayout.CENTER);

		markupItemsTable.setAccessibleNamePrefix("Markup Items");

		return markupPanel;
	}
Creates a new markup items table provider for displaying markup items, and code comparison
views such as a dual listing for the currently selected version tracking match.
@param controller the version tracking controller for this provider
Ghidra/Features/VersionTracking/src/main/java/ghidra/feature/vt/gui/provider/markuptable/VTMarkupItemsTableProvider.java