private JComponent buildComponent(LSHVectorFactory vectorFactory) {
		JPanel panel = new JPanel(new BorderLayout());

		overviewModel = new BSimOverviewModel(tool, program, vectorFactory);
		GhidraFilterTable<BSimOverviewRowObject> filterTable =
			new GhidraFilterTable<>(overviewModel);
		table = filterTable.getTable();
		table.getSelectionModel().addListSelectionListener(e -> notifyContextChanged());
		table.setNavigateOnSelectionEnabled(true);

		overviewModel.addTableModelListener(e -> updateSubTitle());

		filterTable.installNavigation(tool);

		panel.setPreferredSize(new Dimension(600, 400));
		panel.add(filterTable, BorderLayout.CENTER);
		return panel;
	}
ComponentProvider to display the results of a BSim Overview query
Ghidra/Features/BSim/src/main/java/ghidra/features/bsim/gui/overview/BSimOverviewProvider.java