From c207060611165bb45a23e2b2de7ccbf49c0484ff Mon Sep 17 00:00:00 2001 From: BetaSteward Date: Wed, 31 Aug 2011 22:52:20 -0400 Subject: [PATCH] added preferences option to disable image check at startup --- .../src/main/java/mage/client/MageFrame.java | 5 +++-- .../mage/client/dialog/PreferencesDialog.form | 13 ++++++++++++- .../mage/client/dialog/PreferencesDialog.java | 16 +++++++++++++++- 3 files changed, 30 insertions(+), 4 deletions(-) diff --git a/Mage.Client/src/main/java/mage/client/MageFrame.java b/Mage.Client/src/main/java/mage/client/MageFrame.java index b0b61071222..c14861e7748 100644 --- a/Mage.Client/src/main/java/mage/client/MageFrame.java +++ b/Mage.Client/src/main/java/mage/client/MageFrame.java @@ -287,7 +287,8 @@ public class MageFrame extends javax.swing.JFrame implements MageClient { SwingUtilities.invokeLater(new Runnable() { public void run() { disableButtons(); - checkForNewImages(); + if (PreferencesDialog.getCachedValue(PreferencesDialog.KEY_CARD_IMAGES_CHECK, "true").equals("true")) + checkForNewImages(); if (autoConnect()) enableButtons(); else { @@ -431,7 +432,7 @@ public class MageFrame extends javax.swing.JFrame implements MageClient { List notImplemented = CardsStorage.getNotImplementedCards(); cards.addAll(notImplemented); if (Plugins.getInstance().newImage(cards)) { - if (JOptionPane.showConfirmDialog(null, "New cards are available. Do you want to download the images?") == JOptionPane.OK_OPTION) { + if (JOptionPane.showConfirmDialog(null, "New cards are available. Do you want to download the images?", "New images available", JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION) { Plugins.getInstance().downloadImage(cards); } } diff --git a/Mage.Client/src/main/java/mage/client/dialog/PreferencesDialog.form b/Mage.Client/src/main/java/mage/client/dialog/PreferencesDialog.form index 16465a08c25..0f79fd64d70 100644 --- a/Mage.Client/src/main/java/mage/client/dialog/PreferencesDialog.form +++ b/Mage.Client/src/main/java/mage/client/dialog/PreferencesDialog.form @@ -417,6 +417,10 @@ + + + + @@ -432,7 +436,9 @@ - + + + @@ -456,6 +462,11 @@ + + + + + diff --git a/Mage.Client/src/main/java/mage/client/dialog/PreferencesDialog.java b/Mage.Client/src/main/java/mage/client/dialog/PreferencesDialog.java index 316b61ecb8f..2fe1faa72aa 100644 --- a/Mage.Client/src/main/java/mage/client/dialog/PreferencesDialog.java +++ b/Mage.Client/src/main/java/mage/client/dialog/PreferencesDialog.java @@ -58,6 +58,7 @@ public class PreferencesDialog extends javax.swing.JDialog { public static final String KEY_PERMANENTS_IN_ONE_PILE = "nonLandPermanentsInOnePile"; public static final String KEY_CARD_IMAGES_USE_DEFAULT = "cardImagesUseDefault"; public static final String KEY_CARD_IMAGES_PATH = "cardImagesPath"; + public static final String KEY_CARD_IMAGES_CHECK = "cardImagesCheck"; private static Map cache = new HashMap(); private static final Boolean UPDATE_CACHE_POLICY = Boolean.TRUE; @@ -121,6 +122,7 @@ public class PreferencesDialog extends javax.swing.JDialog { useDefaultImageFolder = new javax.swing.JCheckBox(); imageFolderPath = new javax.swing.JTextField(); browseButton = new javax.swing.JButton(); + checkForNewImages = new javax.swing.JCheckBox(); saveButton = new javax.swing.JButton(); exitButton = new javax.swing.JButton(); @@ -350,6 +352,8 @@ public class PreferencesDialog extends javax.swing.JDialog { } }); + checkForNewImages.setText("check for new images on startup"); + javax.swing.GroupLayout jPanel5Layout = new javax.swing.GroupLayout(jPanel5); jPanel5.setLayout(jPanel5Layout); jPanel5Layout.setHorizontalGroup( @@ -363,7 +367,10 @@ public class PreferencesDialog extends javax.swing.JDialog { .addGap(19, 19, 19) .addComponent(imageFolderPath, javax.swing.GroupLayout.PREFERRED_SIZE, 284, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) - .addComponent(browseButton))) + .addComponent(browseButton)) + .addGroup(jPanel5Layout.createSequentialGroup() + .addContainerGap() + .addComponent(checkForNewImages))) .addContainerGap(19, Short.MAX_VALUE)) ); jPanel5Layout.setVerticalGroup( @@ -375,6 +382,8 @@ public class PreferencesDialog extends javax.swing.JDialog { .addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(imageFolderPath, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(browseButton)) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) + .addComponent(checkForNewImages) .addContainerGap(75, Short.MAX_VALUE)) ); @@ -558,6 +567,8 @@ public class PreferencesDialog extends javax.swing.JDialog { dialog.imageFolderPath.setText(path); updateCache(KEY_CARD_IMAGES_PATH, path); } + dialog.checkForNewImages.setSelected(Boolean.parseBoolean(prefs.get(KEY_CARD_IMAGES_CHECK, "true"))); + updateCache(KEY_CARD_IMAGES_CHECK, Boolean.toString(dialog.checkForNewImages.isSelected())); } private static void saveImagesPath(Preferences prefs) { @@ -571,6 +582,8 @@ public class PreferencesDialog extends javax.swing.JDialog { prefs.put(KEY_CARD_IMAGES_PATH, path); updateCache(KEY_CARD_IMAGES_PATH, path); } + prefs.put(KEY_CARD_IMAGES_CHECK, Boolean.toString(dialog.checkForNewImages.isSelected())); + updateCache(KEY_CARD_IMAGES_CHECK, Boolean.toString(dialog.checkForNewImages.isSelected())); } private static void load(Preferences prefs, JCheckBox checkBox, String propName, String yesValue) { @@ -629,6 +642,7 @@ public class PreferencesDialog extends javax.swing.JDialog { private javax.swing.JCheckBox checkBoxMainYou; private javax.swing.JCheckBox checkBoxUpkeepOthers; private javax.swing.JCheckBox checkBoxUpkeepYou; + private javax.swing.JCheckBox checkForNewImages; private javax.swing.JCheckBox displayBigCardsInHand; private javax.swing.JButton exitButton; private javax.swing.JTextField imageFolderPath;