mirror of
https://github.com/magefree/mage.git
synced 2025-12-20 10:40:06 -08:00
GUI, preferences: fixed that auto-target settings doesn't save, removed outdated code (phase stops settings are global now, not per game);
This commit is contained in:
parent
76db1d3e65
commit
546fc1ed9a
1 changed files with 56 additions and 66 deletions
|
|
@ -334,8 +334,6 @@ public class PreferencesDialog extends javax.swing.JDialog {
|
||||||
|
|
||||||
private static final Map<String, String> CACHE = new HashMap<>();
|
private static final Map<String, String> CACHE = new HashMap<>();
|
||||||
|
|
||||||
private static final Boolean UPDATE_CACHE_POLICY = Boolean.TRUE; // TODO: delete
|
|
||||||
|
|
||||||
public static final String OPEN_CONNECTION_TAB = "Open-Connection-Tab";
|
public static final String OPEN_CONNECTION_TAB = "Open-Connection-Tab";
|
||||||
public static final String OPEN_PHASES_TAB = "Open-Phases-Tab";
|
public static final String OPEN_PHASES_TAB = "Open-Phases-Tab";
|
||||||
|
|
||||||
|
|
@ -2843,40 +2841,36 @@ public class PreferencesDialog extends javax.swing.JDialog {
|
||||||
Preferences prefs = MageFrame.getPreferences();
|
Preferences prefs = MageFrame.getPreferences();
|
||||||
|
|
||||||
// main
|
// main
|
||||||
save(prefs, dialog.tooltipDelay, KEY_SHOW_TOOLTIPS_DELAY, UPDATE_CACHE_POLICY);
|
save(prefs, dialog.tooltipDelay, KEY_SHOW_TOOLTIPS_DELAY);
|
||||||
save(prefs, dialog.showCardName, KEY_SHOW_CARD_NAMES, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.showCardName, KEY_SHOW_CARD_NAMES, "true", "false");
|
||||||
save(prefs, dialog.showFullImagePath, KEY_SHOW_FULL_IMAGE_PATH, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.showFullImagePath, KEY_SHOW_FULL_IMAGE_PATH, "true", "false");
|
||||||
save(prefs, dialog.nonLandPermanentsInOnePile, KEY_PERMANENTS_IN_ONE_PILE, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.nonLandPermanentsInOnePile, KEY_PERMANENTS_IN_ONE_PILE, "true", "false");
|
||||||
save(prefs, dialog.showPlayerNamesPermanently, KEY_SHOW_PLAYER_NAMES_PERMANENTLY, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.showPlayerNamesPermanently, KEY_SHOW_PLAYER_NAMES_PERMANENTLY, "true", "false");
|
||||||
save(prefs, dialog.displayLifeOnAvatar, KEY_DISPLAY_LIVE_ON_AVATAR, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.displayLifeOnAvatar, KEY_DISPLAY_LIVE_ON_AVATAR, "true", "false");
|
||||||
save(prefs, dialog.showAbilityPickerForced, KEY_SHOW_ABILITY_PICKER_FORCED, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.showAbilityPickerForced, KEY_SHOW_ABILITY_PICKER_FORCED, "true", "false");
|
||||||
save(prefs, dialog.cbAllowRequestToShowHandCards, KEY_GAME_ALLOW_REQUEST_SHOW_HAND_CARDS, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbAllowRequestToShowHandCards, KEY_GAME_ALLOW_REQUEST_SHOW_HAND_CARDS, "true", "false");
|
||||||
save(prefs, dialog.cbConfirmEmptyManaPool, KEY_GAME_CONFIRM_EMPTY_MANA_POOL, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbConfirmEmptyManaPool, KEY_GAME_CONFIRM_EMPTY_MANA_POOL, "true", "false");
|
||||||
save(prefs, dialog.cbAskMoveToGraveOrder, KEY_GAME_ASK_MOVE_TO_GRAVE_ORDER, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbAskMoveToGraveOrder, KEY_GAME_ASK_MOVE_TO_GRAVE_ORDER, "true", "false");
|
||||||
save(prefs, dialog.cbGameLogShowTurnInfo, KEY_GAME_LOG_SHOW_TURN_INFO, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbGameLogShowTurnInfo, KEY_GAME_LOG_SHOW_TURN_INFO, "true", "false");
|
||||||
save(prefs, dialog.cbGameLogAutoSave, KEY_GAME_LOG_AUTO_SAVE, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbGameLogAutoSave, KEY_GAME_LOG_AUTO_SAVE, "true", "false");
|
||||||
save(prefs, dialog.cbDraftLogAutoSave, KEY_DRAFT_LOG_AUTO_SAVE, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbDraftLogAutoSave, KEY_DRAFT_LOG_AUTO_SAVE, "true", "false");
|
||||||
save(prefs, dialog.cbLimitedDeckAutoSave, KEY_LIMITED_DECK_AUTO_SAVE, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbLimitedDeckAutoSave, KEY_LIMITED_DECK_AUTO_SAVE, "true", "false");
|
||||||
save(prefs, dialog.cbGameJsonLogAutoSave, KEY_JSON_GAME_LOG_AUTO_SAVE, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbGameJsonLogAutoSave, KEY_JSON_GAME_LOG_AUTO_SAVE, "true", "false");
|
||||||
|
|
||||||
String paramName = KEY_BATTLEFIELD_FEEDBACK_COLORIZING_MODE;
|
String paramName = KEY_BATTLEFIELD_FEEDBACK_COLORIZING_MODE;
|
||||||
int paramValue = dialog.cbBattlefieldFeedbackColorizingMode.getSelectedIndex();
|
int paramValue = dialog.cbBattlefieldFeedbackColorizingMode.getSelectedIndex();
|
||||||
int paramDefault = BATTLEFIELD_FEEDBACK_COLORIZING_MODE_ENABLE_BY_MULTICOLOR;
|
int paramDefault = BATTLEFIELD_FEEDBACK_COLORIZING_MODE_ENABLE_BY_MULTICOLOR;
|
||||||
if (getCachedValue(paramName, paramDefault) != paramValue) {
|
if (getCachedValue(paramName, paramDefault) != paramValue) {
|
||||||
prefs.putInt(paramName, paramValue);
|
prefs.putInt(paramName, paramValue);
|
||||||
if (UPDATE_CACHE_POLICY) {
|
|
||||||
updateCache(paramName, Integer.toString(paramValue));
|
updateCache(paramName, Integer.toString(paramValue));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
String paramNameAutoTarget = KEY_AUTO_TARGET_LEVEL;
|
paramName = KEY_AUTO_TARGET_LEVEL;
|
||||||
int paramValueAutoTarger = dialog.cbTargetAutoChooseLevel.getSelectedIndex();
|
paramValue = dialog.cbTargetAutoChooseLevel.getSelectedIndex();
|
||||||
int paramDefaultAutoTarget = AUTO_TARGET_NON_FEEL_BAD;
|
paramDefault = AUTO_TARGET_NON_FEEL_BAD;
|
||||||
if (getCachedValue(paramNameAutoTarget, paramDefault) != paramValueAutoTarger) {
|
if (getCachedValue(paramName, paramDefault) != paramValue) {
|
||||||
prefs.putInt(paramNameAutoTarget, paramValueAutoTarger);
|
prefs.putInt(paramName, paramValue);
|
||||||
if (UPDATE_CACHE_POLICY) {
|
updateCache(paramName, Integer.toString(paramValue));
|
||||||
updateCache(paramNameAutoTarget, Integer.toString(paramValueAutoTarger));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
saveGUISize(false, false);
|
saveGUISize(false, false);
|
||||||
|
|
@ -2898,42 +2892,42 @@ public class PreferencesDialog extends javax.swing.JDialog {
|
||||||
save(prefs, dialog.checkBoxMain2Others, MAIN_TWO_OTHERS);
|
save(prefs, dialog.checkBoxMain2Others, MAIN_TWO_OTHERS);
|
||||||
save(prefs, dialog.checkBoxEndTurnOthers, END_OF_TURN_OTHERS);
|
save(prefs, dialog.checkBoxEndTurnOthers, END_OF_TURN_OTHERS);
|
||||||
|
|
||||||
save(prefs, dialog.cbStopAttack, KEY_STOP_ATTACK, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbStopAttack, KEY_STOP_ATTACK, "true", "false");
|
||||||
save(prefs, dialog.cbStopBlockWithAny, KEY_STOP_BLOCK_WITH_ANY, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbStopBlockWithAny, KEY_STOP_BLOCK_WITH_ANY, "true", "false");
|
||||||
save(prefs, dialog.cbStopBlockWithZero, KEY_STOP_BLOCK_WITH_ZERO, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbStopBlockWithZero, KEY_STOP_BLOCK_WITH_ZERO, "true", "false");
|
||||||
save(prefs, dialog.cbStopOnAllMain, KEY_STOP_ALL_MAIN_PHASES, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbStopOnAllMain, KEY_STOP_ALL_MAIN_PHASES, "true", "false");
|
||||||
save(prefs, dialog.cbStopOnAllEnd, KEY_STOP_ALL_END_PHASES, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbStopOnAllEnd, KEY_STOP_ALL_END_PHASES, "true", "false");
|
||||||
save(prefs, dialog.cbStopOnNewStackObjects, KEY_STOP_NEW_STACK_OBJECTS, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbStopOnNewStackObjects, KEY_STOP_NEW_STACK_OBJECTS, "true", "false");
|
||||||
save(prefs, dialog.cbPassPriorityCast, KEY_PASS_PRIORITY_CAST, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbPassPriorityCast, KEY_PASS_PRIORITY_CAST, "true", "false");
|
||||||
save(prefs, dialog.cbPassPriorityActivation, KEY_PASS_PRIORITY_ACTIVATION, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbPassPriorityActivation, KEY_PASS_PRIORITY_ACTIVATION, "true", "false");
|
||||||
save(prefs, dialog.cbAutoOrderTrigger, KEY_AUTO_ORDER_TRIGGER, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbAutoOrderTrigger, KEY_AUTO_ORDER_TRIGGER, "true", "false");
|
||||||
save(prefs, dialog.cbUseSameSettingsForReplacementEffect, KEY_USE_SAME_SETTINGS_FOR_SAME_REPLACEMENT_EFFECTS, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbUseSameSettingsForReplacementEffect, KEY_USE_SAME_SETTINGS_FOR_SAME_REPLACEMENT_EFFECTS, "true", "false");
|
||||||
|
|
||||||
// images
|
// images
|
||||||
save(prefs, dialog.cbUseDefaultImageFolder, KEY_CARD_IMAGES_USE_DEFAULT, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbUseDefaultImageFolder, KEY_CARD_IMAGES_USE_DEFAULT, "true", "false");
|
||||||
saveImagesPath(prefs);
|
saveImagesPath(prefs);
|
||||||
save(prefs, dialog.cbSaveToZipFiles, KEY_CARD_IMAGES_SAVE_TO_ZIP, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbSaveToZipFiles, KEY_CARD_IMAGES_SAVE_TO_ZIP, "true", "false");
|
||||||
save(prefs, dialog.cbNumberOfDownloadThreads, KEY_CARD_IMAGES_THREADS);
|
save(prefs, dialog.cbNumberOfDownloadThreads, KEY_CARD_IMAGES_THREADS);
|
||||||
save(prefs, dialog.cbPreferredImageLanguage, KEY_CARD_IMAGES_PREF_LANGUAGE);
|
save(prefs, dialog.cbPreferredImageLanguage, KEY_CARD_IMAGES_PREF_LANGUAGE);
|
||||||
|
|
||||||
save(prefs, dialog.cbUseDefaultBackground, KEY_BACKGROUND_IMAGE_DEFAULT, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbUseDefaultBackground, KEY_BACKGROUND_IMAGE_DEFAULT, "true", "false");
|
||||||
save(prefs, dialog.cbUseDefaultBattleImage, KEY_BATTLEFIELD_IMAGE_DEFAULT, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbUseDefaultBattleImage, KEY_BATTLEFIELD_IMAGE_DEFAULT, "true", "false");
|
||||||
save(prefs, dialog.cbUseRandomBattleImage, KEY_BATTLEFIELD_IMAGE_RANDOM, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbUseRandomBattleImage, KEY_BATTLEFIELD_IMAGE_RANDOM, "true", "false");
|
||||||
|
|
||||||
// rendering
|
// rendering
|
||||||
save(prefs, dialog.cbCardRenderImageFallback, KEY_CARD_RENDERING_IMAGE_MODE, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbCardRenderImageFallback, KEY_CARD_RENDERING_IMAGE_MODE, "true", "false");
|
||||||
save(prefs, dialog.cbCardRenderIconsForAbilities, KEY_CARD_RENDERING_ICONS_FOR_ABILITIES, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbCardRenderIconsForAbilities, KEY_CARD_RENDERING_ICONS_FOR_ABILITIES, "true", "false");
|
||||||
save(prefs, dialog.cbCardRenderIconsForPlayable, KEY_CARD_RENDERING_ICONS_FOR_PLAYABLE, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbCardRenderIconsForPlayable, KEY_CARD_RENDERING_ICONS_FOR_PLAYABLE, "true", "false");
|
||||||
save(prefs, dialog.cbCardRenderHideSetSymbol, KEY_CARD_RENDERING_SET_SYMBOL, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbCardRenderHideSetSymbol, KEY_CARD_RENDERING_SET_SYMBOL, "true", "false");
|
||||||
save(prefs, dialog.cbCardRenderShowReminderText, KEY_CARD_RENDERING_REMINDER_TEXT, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbCardRenderShowReminderText, KEY_CARD_RENDERING_REMINDER_TEXT, "true", "false");
|
||||||
save(prefs, dialog.cbCardRenderShowAbilityTextOverlay, KEY_CARD_RENDERING_ABILITY_TEXT_OVERLAY, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbCardRenderShowAbilityTextOverlay, KEY_CARD_RENDERING_ABILITY_TEXT_OVERLAY, "true", "false");
|
||||||
|
|
||||||
// sounds
|
// sounds
|
||||||
save(prefs, dialog.cbEnableGameSounds, KEY_SOUNDS_GAME_ON, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbEnableGameSounds, KEY_SOUNDS_GAME_ON, "true", "false");
|
||||||
save(prefs, dialog.cbEnableDraftSounds, KEY_SOUNDS_DRAFT_ON, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbEnableDraftSounds, KEY_SOUNDS_DRAFT_ON, "true", "false");
|
||||||
save(prefs, dialog.cbEnableSkipButtonsSounds, KEY_SOUNDS_SKIP_BUTTONS_ON, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbEnableSkipButtonsSounds, KEY_SOUNDS_SKIP_BUTTONS_ON, "true", "false");
|
||||||
save(prefs, dialog.cbEnableOtherSounds, KEY_SOUNDS_OTHER_ON, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbEnableOtherSounds, KEY_SOUNDS_OTHER_ON, "true", "false");
|
||||||
save(prefs, dialog.cbEnableBattlefieldBGM, KEY_SOUNDS_MATCH_MUSIC_ON, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.cbEnableBattlefieldBGM, KEY_SOUNDS_MATCH_MUSIC_ON, "true", "false");
|
||||||
saveSoundPath(prefs);
|
saveSoundPath(prefs);
|
||||||
if (prefs.get(KEY_SOUNDS_MATCH_MUSIC_ON, SOUNDS_MATCH_MUSIC_ENABLE_BY_DEFAULT).equals("true")) {
|
if (prefs.get(KEY_SOUNDS_MATCH_MUSIC_ON, SOUNDS_MATCH_MUSIC_ENABLE_BY_DEFAULT).equals("true")) {
|
||||||
if (MageFrame.isGameActive()) {
|
if (MageFrame.isGameActive()) {
|
||||||
|
|
@ -2948,7 +2942,7 @@ public class PreferencesDialog extends javax.swing.JDialog {
|
||||||
save(prefs, dialog.txtProxyServer, KEY_PROXY_ADDRESS);
|
save(prefs, dialog.txtProxyServer, KEY_PROXY_ADDRESS);
|
||||||
save(prefs, dialog.txtProxyPort, KEY_PROXY_PORT);
|
save(prefs, dialog.txtProxyPort, KEY_PROXY_PORT);
|
||||||
save(prefs, dialog.txtProxyUserName, KEY_PROXY_USERNAME);
|
save(prefs, dialog.txtProxyUserName, KEY_PROXY_USERNAME);
|
||||||
save(prefs, dialog.rememberPswd, KEY_PROXY_REMEMBER, "true", "false", UPDATE_CACHE_POLICY);
|
save(prefs, dialog.rememberPswd, KEY_PROXY_REMEMBER, "true", "false");
|
||||||
if (dialog.rememberPswd.isSelected()) {
|
if (dialog.rememberPswd.isSelected()) {
|
||||||
char[] input = txtPasswordField.getPassword();
|
char[] input = txtPasswordField.getPassword();
|
||||||
prefs.put(KEY_PROXY_PSWD, new String(input));
|
prefs.put(KEY_PROXY_PSWD, new String(input));
|
||||||
|
|
@ -3007,7 +3001,7 @@ public class PreferencesDialog extends javax.swing.JDialog {
|
||||||
PreferencesDialog dialog = PreferencesDialog.getInstance();
|
PreferencesDialog dialog = PreferencesDialog.getInstance();
|
||||||
Preferences prefs = MageFrame.getPreferences();
|
Preferences prefs = MageFrame.getPreferences();
|
||||||
dialog.sizeSettings.values().forEach(setting -> {
|
dialog.sizeSettings.values().forEach(setting -> {
|
||||||
save(prefs, setting.slider, setting.key, UPDATE_CACHE_POLICY);
|
save(prefs, setting.slider, setting.key);
|
||||||
});
|
});
|
||||||
|
|
||||||
// refresh full GUI with new settings (except theme)
|
// refresh full GUI with new settings (except theme)
|
||||||
|
|
@ -3621,7 +3615,7 @@ public class PreferencesDialog extends javax.swing.JDialog {
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void save(Preferences prefs, JCheckBox checkBox, String propName) {
|
private static void save(Preferences prefs, JCheckBox checkBox, String propName) {
|
||||||
save(prefs, checkBox, propName, PHASE_ON, PHASE_OFF, false);
|
save(prefs, checkBox, propName, PHASE_ON, PHASE_OFF);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void setPrefValue(String key, boolean value) {
|
public static void setPrefValue(String key, boolean value) {
|
||||||
|
|
@ -3629,24 +3623,20 @@ public class PreferencesDialog extends javax.swing.JDialog {
|
||||||
switch (key) {
|
switch (key) {
|
||||||
case KEY_GAME_ALLOW_REQUEST_SHOW_HAND_CARDS:
|
case KEY_GAME_ALLOW_REQUEST_SHOW_HAND_CARDS:
|
||||||
dialog.cbAllowRequestToShowHandCards.setSelected(value);
|
dialog.cbAllowRequestToShowHandCards.setSelected(value);
|
||||||
save(MageFrame.getPreferences(), dialog.cbAllowRequestToShowHandCards, KEY_GAME_ALLOW_REQUEST_SHOW_HAND_CARDS, "true", "false", UPDATE_CACHE_POLICY);
|
save(MageFrame.getPreferences(), dialog.cbAllowRequestToShowHandCards, KEY_GAME_ALLOW_REQUEST_SHOW_HAND_CARDS, "true", "false");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void save(Preferences prefs, JCheckBox checkBox, String propName, String yesValue, String noValue, boolean updateCache) {
|
private static void save(Preferences prefs, JCheckBox checkBox, String propName, String yesValue, String noValue) {
|
||||||
prefs.put(propName, checkBox.isSelected() ? yesValue : noValue);
|
prefs.put(propName, checkBox.isSelected() ? yesValue : noValue);
|
||||||
if (updateCache) {
|
|
||||||
updateCache(propName, checkBox.isSelected() ? yesValue : noValue);
|
updateCache(propName, checkBox.isSelected() ? yesValue : noValue);
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private static void save(Preferences prefs, JSlider slider, String propName, boolean updateCache) {
|
private static void save(Preferences prefs, JSlider slider, String propName) {
|
||||||
prefs.put(propName, Integer.toString(slider.getValue()));
|
prefs.put(propName, Integer.toString(slider.getValue()));
|
||||||
if (updateCache) {
|
|
||||||
updateCache(propName, Integer.toString(slider.getValue()));
|
updateCache(propName, Integer.toString(slider.getValue()));
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
private static void save(Preferences prefs, JTextField textField, String propName) {
|
private static void save(Preferences prefs, JTextField textField, String propName) {
|
||||||
prefs.put(propName, textField.getText().trim());
|
prefs.put(propName, textField.getText().trim());
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue