@Override
	public int getRow(int y) {

		// our start y value is our baseline - the heigh above the baseline
		int startY = -heightAbove;
		if (y < startY) {
			return 0;
		}

		int ySoFar = startY;
		int n = subFields.size();
		for (int i = 0; i < n; i++) {
			Field f = getField(i);
			ySoFar += f.getHeight();
			if (ySoFar > y) {
				return i;
			}
		}

		return n - 1;
	}
This constructor will create a text field from an array of FieldElements, putting each
element on its own line.

@param textElements the FieldElements to display
@param startX  the x position to draw the element
@param width   the max width allocated to this field
@param maxLines the max number of lines to display
@param hlFactory the highlight factory
@param rowSeparator The string used to space lines of text when concatenated by the
       getText() method.
Ghidra/Framework/Docking/src/main/java/docking/widgets/fieldpanel/field/VerticalLayoutTextField.java