@Override
		public Highlight[] createHighlights(String text, ListingField field, int cursorTextOffset) {

			//
			// Gather and use all other registered providers.
			//
			// Note: we loop backwards here as a hacky method to make sure that the middle-mouse
			//       highlighter runs last and is thus painted above other highlights.  This
			//       works because the middle-mouse highlighter is installed before any other
			//       highlighters.
			List<Highlight> list = new ArrayList<>();
			int size = highlightProviders.size();
			for (int i = size - 1; i >= 0; i--) {
				ListingHighlightProvider provider = highlightProviders.get(i);
				Highlight[] highlights =
					provider.createHighlights(text, field, cursorTextOffset);
				for (Highlight highlight : highlights) {
					list.add(highlight);
				}
			}

			return list.toArray(new Highlight[list.size()]);
		}
Restores the state of this LayoutController from the given SaveState
object.

@param saveState the SaveState to read from.
Ghidra/Features/Base/src/main/java/ghidra/app/util/viewer/format/FormatManager.java