Configurable popup delay in preferences.
parent
3db22d92e9
commit
da9ea30219
Binary file not shown.
After Width: | Height: | Size: 2.0 KiB |
|
@ -27,6 +27,7 @@ public class GeneralConfig {
|
|||
private static final String SMART_TARGET="target";
|
||||
private static final String DIFFICULTY="difficulty";
|
||||
private static final String EXTRA_LIFE="extra";
|
||||
private static final String POPUP_DELAY="popup";
|
||||
|
||||
private static final int DEFAULT_LEFT=-1;
|
||||
private static final int DEFAULT_TOP=-1;
|
||||
|
@ -41,6 +42,7 @@ public class GeneralConfig {
|
|||
private static final boolean DEFAULT_TARGET=true;
|
||||
private static final int DEFAULT_DIFFICULTY=6;
|
||||
private static final int DEFAULT_EXTRA_LIFE=0;
|
||||
private static final int DEFAULT_POPUP_DELAY=300;
|
||||
|
||||
private int left=DEFAULT_LEFT;
|
||||
private int top=DEFAULT_TOP;
|
||||
|
@ -55,6 +57,7 @@ public class GeneralConfig {
|
|||
private boolean smartTarget=DEFAULT_TARGET;
|
||||
private int difficulty=DEFAULT_DIFFICULTY;
|
||||
private int extraLife=DEFAULT_EXTRA_LIFE;
|
||||
private int popupDelay=DEFAULT_POPUP_DELAY;
|
||||
|
||||
private GeneralConfig() {
|
||||
|
||||
|
@ -210,6 +213,16 @@ public class GeneralConfig {
|
|||
this.extraLife=extraLife;
|
||||
}
|
||||
|
||||
public int getPopupDelay() {
|
||||
|
||||
return popupDelay;
|
||||
}
|
||||
|
||||
public void setPopupDelay(final int popupDelay) {
|
||||
|
||||
this.popupDelay=popupDelay;
|
||||
}
|
||||
|
||||
public void load(final Properties properties) {
|
||||
|
||||
left=Integer.parseInt(properties.getProperty(LEFT,""+DEFAULT_LEFT));
|
||||
|
@ -225,6 +238,7 @@ public class GeneralConfig {
|
|||
smartTarget=Boolean.parseBoolean(properties.getProperty(SMART_TARGET,""+DEFAULT_TARGET));
|
||||
difficulty=Integer.parseInt(properties.getProperty(DIFFICULTY,""+DEFAULT_DIFFICULTY));
|
||||
extraLife=Integer.parseInt(properties.getProperty(EXTRA_LIFE,""+DEFAULT_EXTRA_LIFE));
|
||||
popupDelay=Integer.parseInt(properties.getProperty(POPUP_DELAY,""+DEFAULT_POPUP_DELAY));
|
||||
}
|
||||
|
||||
public void load() {
|
||||
|
@ -251,6 +265,7 @@ public class GeneralConfig {
|
|||
properties.setProperty(SMART_TARGET,String.valueOf(smartTarget));
|
||||
properties.setProperty(DIFFICULTY,String.valueOf(difficulty));
|
||||
properties.setProperty(EXTRA_LIFE,String.valueOf(extraLife));
|
||||
properties.setProperty(POPUP_DELAY,String.valueOf(popupDelay));
|
||||
}
|
||||
|
||||
public void save() {
|
||||
|
|
|
@ -93,6 +93,7 @@ public class IconImages {
|
|||
public static final ImageIcon VALID=loadIcon("valid.gif");
|
||||
public static final ImageIcon STRENGTH=loadIcon("strength.png");
|
||||
public static final ImageIcon EDIT=loadIcon("edit.png");
|
||||
public static final ImageIcon DELAY=loadIcon("delay.png");
|
||||
|
||||
public static final ImageIcon FLYING=loadIcon("flying.png");
|
||||
public static final ImageIcon TRAMPLE=loadIcon("trample.png");
|
||||
|
|
|
@ -13,6 +13,7 @@ import javax.swing.JComponent;
|
|||
import javax.swing.SwingUtilities;
|
||||
|
||||
import magic.ai.ArtificialWorkerPool;
|
||||
import magic.data.GeneralConfig;
|
||||
import magic.data.IconImages;
|
||||
import magic.model.MagicCard;
|
||||
import magic.model.MagicCardDefinition;
|
||||
|
@ -28,7 +29,6 @@ import magic.ui.viewer.GameViewer;
|
|||
public class GameController {
|
||||
|
||||
private static final long MAX_TEST_MODE_DURATION=10000;
|
||||
private static final int CARD_VIEW_DELAY=300;
|
||||
|
||||
private final GamePanel gamePanel;
|
||||
private final MagicGame game;
|
||||
|
@ -168,7 +168,7 @@ public class GameController {
|
|||
}
|
||||
imageCardViewer.setCard(cardDefinition,index);
|
||||
imageCardViewer.setLocation(x,y);
|
||||
DelayedViewersThread.getInstance().showViewer(imageCardViewer,CARD_VIEW_DELAY);
|
||||
DelayedViewersThread.getInstance().showViewer(imageCardViewer,GeneralConfig.getInstance().getPopupDelay());
|
||||
}
|
||||
|
||||
public void viewInfoRight(final MagicCardDefinition cardDefinition,final int index,final Rectangle rect) {
|
||||
|
@ -187,7 +187,7 @@ public class GameController {
|
|||
}
|
||||
imageCardViewer.setCard(cardDefinition,index);
|
||||
imageCardViewer.setLocation(x,y);
|
||||
DelayedViewersThread.getInstance().showViewer(imageCardViewer,CARD_VIEW_DELAY);
|
||||
DelayedViewersThread.getInstance().showViewer(imageCardViewer,GeneralConfig.getInstance().getPopupDelay());
|
||||
}
|
||||
|
||||
public void hideInfo() {
|
||||
|
|
|
@ -32,6 +32,7 @@ public class PreferencesDialog extends JDialog implements ActionListener {
|
|||
private final JCheckBox alwaysPassCheckBox;
|
||||
private final JCheckBox smartTargetCheckBox;
|
||||
private final SliderPanel undoLevelsSlider;
|
||||
private final SliderPanel popupDelaySlider;
|
||||
private final JButton okButton;
|
||||
private final JButton cancelButton;
|
||||
|
||||
|
@ -39,7 +40,7 @@ public class PreferencesDialog extends JDialog implements ActionListener {
|
|||
|
||||
super(frame,true);
|
||||
this.setTitle("Preferences");
|
||||
this.setSize(400,290);
|
||||
this.setSize(400,340);
|
||||
this.setLocationRelativeTo(frame);
|
||||
this.setResizable(false);
|
||||
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
|
||||
|
@ -91,9 +92,13 @@ public class PreferencesDialog extends JDialog implements ActionListener {
|
|||
mainPanel.add(smartTargetCheckBox);
|
||||
|
||||
undoLevelsSlider=new SliderPanel("Undo",IconImages.UNDO,1,7,1,config.getUndoLevels());
|
||||
undoLevelsSlider.setBounds(70,155,250,50);
|
||||
undoLevelsSlider.setBounds(60,155,270,50);
|
||||
mainPanel.add(undoLevelsSlider);
|
||||
|
||||
popupDelaySlider=new SliderPanel("Popup",IconImages.DELAY,0,500,50,config.getPopupDelay());
|
||||
popupDelaySlider.setBounds(60,205,270,50);
|
||||
mainPanel.add(popupDelaySlider);
|
||||
|
||||
getContentPane().setLayout(new BorderLayout());
|
||||
getContentPane().add(mainPanel,BorderLayout.CENTER);
|
||||
getContentPane().add(buttonPanel,BorderLayout.SOUTH);
|
||||
|
@ -112,6 +117,7 @@ public class PreferencesDialog extends JDialog implements ActionListener {
|
|||
config.setSkipSingle(skipSingleCheckBox.isSelected());
|
||||
config.setAlwaysPass(alwaysPassCheckBox.isSelected());
|
||||
config.setSmartTarget(smartTargetCheckBox.isSelected());
|
||||
config.setPopupDelay(popupDelaySlider.getValue());
|
||||
config.save();
|
||||
frame.repaint();
|
||||
dispose();
|
||||
|
|
Loading…
Reference in New Issue