void LookConfig::reloadThemes(const boost::optional<ThemeInfo::StyleInfo> configuredStyle) { const ThemeMap themes = Themes::getThemes(); int selectedThemeEntry = 0; qcbTheme->clear(); qcbTheme->addItem(tr("None")); for (ThemeMap::const_iterator theme = themes.begin(); theme != themes.end(); ++theme) { for (ThemeInfo::StylesMap::const_iterator styleit = theme->styles.begin(); styleit != theme->styles.end(); ++styleit) { if (configuredStyle && configuredStyle->themeName == styleit->themeName && configuredStyle->name == styleit->name) { selectedThemeEntry = qcbTheme->count(); } qcbTheme->addItem(theme->name + QLatin1String(" - ") + styleit->name, QVariant::fromValue(*styleit)); } } qcbTheme->setCurrentIndex(selectedThemeEntry); }