oops, yes you're right, I broke this
Problem is that the gui icons in the built-in font are white, and so is the background of the listbox. if changed and the icons were replaced by more colourful sprites, then the unselected icons would be painted black.
I guess the built-in font needs editing so that the icons have a nice colour (say with a black outline) in the first place, then they can change colour properly on selection.
edit:
okay I changed builtInFont.h so the icons have borders, and included the source bitmap. The skin value for highlighted icons now matches the text highlight, so colourful icons will be painted blue like in windows.
I also changed a couple of things in the old font loader, coloured fonts should now work (manually edit the bitmap file) and the background of the font texture won't shine through in the software driver when the gui is faded out. Hope I didn't break anything there.