@Override
	public ListingField getField(ProxyObj<?> proxy, int varWidth) {

		if (!enabled) {
			return null;
		}

		// Exit if we're not at a code unit.
		Object obj = proxy.getObject();
		if (!(obj instanceof CodeUnit)) {
			return null;
		}
		CodeUnit cu = (CodeUnit) obj;

		// Create the text block we want to show.
		List<AttributedString> attributedStrings = createBlockStartText(cu);
		if (attributedStrings == null || attributedStrings.isEmpty()) {
			return null;
		}

		// Convert the text to field elements.
		List<FieldElement> elements = createFieldElements(attributedStrings);

		// And put the elements in a text field.
		ListingTextField ltf = ListingTextField.createMultilineTextField(this, proxy, elements,
			startX + varWidth, width, 10, hlProvider);
		ltf.setPrimary(true);

		return ltf;
	}
@see ghidra.app.util.viewer.field.FieldFactory#getField(ProxyObj, int)
Ghidra/Features/Base/src/main/java/ghidra/app/util/viewer/field/MemoryBlockStartFieldFactory.java