private Component buildDistributionLabel() {
		String content = distributionInfo;

		// Use java native JLabel and let it auto-detect html content
		JLabel resizer = new JLabel(content);

		final int desiredTextViewWidth = imageWidth - (MARGIN * 2);

		// If the splash.txt file contains non-HTML text, view is null
		View view = (View) resizer.getClientProperty(javax.swing.plaf.basic.BasicHTML.propertyKey);
		if (view == null) {
			// must not be HTML content in the splash screen text (this shouldn't
			// happen, but let's just protect against this anyway).
			JLabel label = new GDLabel(content) {
				@Override
				public Dimension getPreferredSize() {
					Dimension preferredSize = super.getPreferredSize();
					preferredSize.width = desiredTextViewWidth;
					return preferredSize;
				}
			};
			return label;
		}

		view.setSize(desiredTextViewWidth, 0);
		float w = view.getPreferredSpan(View.X_AXIS);
		float h = view.getPreferredSpan(View.Y_AXIS);

		JLabel distLabel = new GHtmlLabel(content);
		distLabel.setPreferredSize(new Dimension((int) Math.ceil(w), (int) Math.ceil(h + 10)));
		return distLabel;
	}
Create the contents of the window.
Ghidra/Features/Base/src/main/java/ghidra/framework/main/InfoPanel.java