When this:

QFont font = settings.value("MainWindow/Font").value<QFont>();

Returns a valid font value,
why doesn't this:

QColor color = settings.value("MainWindow/Color").value<QColor>();

Return a valid color value?