protected void buildCurrentValues() {
		GThemeValueMap map = new GThemeValueMap();
		map.load(javaDefaults);
		map.load(applicationDefaults.getLightValues());
		if (useDarkDefaults) {
			map.load(applicationDefaults.getDarkValues());
		}
		map.load(applicationDefaults.getLookAndFeelValues(getLookAndFeelType()));
		map.load(activeTheme);
		currentValues = map;
	}
This method is called to create the internal set of theme value used by the application. To
do this, we use a layered approach to install values, with the last values added overwriting
any pre-existing values with the same key.  The values are added in the following order:
<pre>
java defaults -> light values -> dark values -> look and feel values -> property file values -> theme values
</pre>
<p>
At the point this method is called, this is the state of these various values:
<ul>
    <li>The 'javaValues' are normalized in the form of 'laf.font.TextArea'
    </li>
    <li>The 'applicationDefaults' contains values loaded from the {@code theme.properties}
    files:
    <pre>
    font.listing.base
    font.monospaced
    [color]Viewport.background = color.bg
    [laf.font]TextArea.font = font.monospaced
    [laf.boolean]Button.rollover = true
    </pre>
    </li>
    <li>The 'activeTheme' values are those loaded by the current theme, which has any changes
    made to the default values
    </li>
</ul>
Ghidra/Framework/Gui/src/main/java/generic/theme/ThemeManager.java