mirror of
https://github.com/Card-Forge/forge.git
synced 2025-11-15 10:18:01 +00:00
- Fix: theme combo displays "Dark Ascension" when current theme is "Default". [#716]
This commit is contained in:
@@ -25,6 +25,7 @@ import forge.gui.toolbox.FSkin;
|
|||||||
import forge.properties.ForgePreferences;
|
import forge.properties.ForgePreferences;
|
||||||
import forge.properties.ForgePreferences.FPref;
|
import forge.properties.ForgePreferences.FPref;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -216,11 +217,26 @@ public enum CSubmenuPreferences implements ICDoc {
|
|||||||
|
|
||||||
private void initializeSkinsComboBox() {
|
private void initializeSkinsComboBox() {
|
||||||
FPref userSetting = FPref.UI_SKIN;
|
FPref userSetting = FPref.UI_SKIN;
|
||||||
FComboBoxPanel<String> panel = this.view.getSkinsComboBoxPanel();
|
FComboBoxPanel<String> panel = this.view.getSkinsComboBoxPanel();
|
||||||
JComboBox<String> comboBox = createComboBox(FSkin.getSkinNamesArray(), userSetting);
|
String[] installedSkins = getSortedListOfInstalledSkins();
|
||||||
|
validatePreferredSkinName(installedSkins);
|
||||||
|
JComboBox<String> comboBox = createComboBox(installedSkins, userSetting);
|
||||||
String selectedItem = this.prefs.getPref(userSetting);
|
String selectedItem = this.prefs.getPref(userSetting);
|
||||||
panel.setComboBox(comboBox, selectedItem);
|
panel.setComboBox(comboBox, selectedItem);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String[] getSortedListOfInstalledSkins() {
|
||||||
|
String[] skins = FSkin.getSkinNamesArray();
|
||||||
|
java.util.Arrays.sort(skins);
|
||||||
|
return skins;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void validatePreferredSkinName(String[] installedSkins) {
|
||||||
|
String preferredSkin = this.prefs.getPref(FPref.UI_SKIN);
|
||||||
|
if (!Arrays.asList(installedSkins).contains(preferredSkin)) {
|
||||||
|
this.prefs.setPref(FPref.UI_SKIN, "Default");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
private <E> JComboBox<E> createComboBox(E[] items, final ForgePreferences.FPref setting) {
|
private <E> JComboBox<E> createComboBox(E[] items, final ForgePreferences.FPref setting) {
|
||||||
final JComboBox<E> comboBox = new JComboBox<E>(items);
|
final JComboBox<E> comboBox = new JComboBox<E>(items);
|
||||||
|
|||||||
Reference in New Issue
Block a user