@Override
	public Component getTableCellRendererComponent(GTableCellRenderingData data) {

		// be sure to let our parent perform any initialization needed
		JLabel renderer = (JLabel) super.getTableCellRendererComponent(data);

		Object value = data.getValue();
		JTable table = data.getTable();
		boolean isSelected = data.isSelected();

		setText("");
		setHorizontalAlignment(CENTER);
		VTMatch match = (VTMatch) value;

		VTAssociation association = match.getAssociation();
		if (!isSelected) {
			// gray out our background if we are locked-out
			renderer.setBackground(MatchTableRenderer.getBackgroundColor(association, table,
				renderer.getBackground()));
		}

		VTAssociationMarkupStatus markupStatus = association.getMarkupStatus();
		MultiIcon icon = new MultiIcon(new EmptyIcon(45, 16));
		icon.addIcon(
			markupStatus.hasUnexaminedMarkup() ? NOT_APPLIED_ICON : DISABLED_NOT_APPLIED_ICON);
		icon.addIcon(markupStatus.hasAppliedMarkup() ? APPLIED_ICON : DISABLED_APPLIED_ICON);
		icon.addIcon(markupStatus.hasRejectedMarkup() ? REJECTED_ICON : DISABLED_REJECTED_ICON);
		icon.addIcon(
			markupStatus.hasDontKnowMarkup() || markupStatus.hasDontCareMarkup() ? IGNORED_ICON
					: DISABLED_IGNORED_ICON);
		icon.addIcon(markupStatus.hasErrors() ? ERROR_ICON : DISABLED_ERROR_ICON);
		setIcon(icon);
		setToolTipText(getDescription(markupStatus));
		return this;
	}
A renderer for the {@link VTMatch} to show an icon for its applied status
Ghidra/Features/VersionTracking/src/main/java/ghidra/feature/vt/gui/provider/matchtable/MatchMarkupStatusRenderer.java