Author: echatellier Date: 2009-10-08 19:08:09 +0200 (Thu, 08 Oct 2009) New Revision: 2671 Modified: trunk/src/main/java/org/chorem/jtimer/ui/alert/AlertCellEditor.java trunk/src/main/java/org/chorem/jtimer/ui/alert/AlertCellRenderer.java trunk/src/main/java/org/chorem/jtimer/ui/widget/DurationEditor.java Log: Fix duration editor bound changes. Modified: trunk/src/main/java/org/chorem/jtimer/ui/alert/AlertCellEditor.java =================================================================== --- trunk/src/main/java/org/chorem/jtimer/ui/alert/AlertCellEditor.java 2009-10-02 13:23:49 UTC (rev 2670) +++ trunk/src/main/java/org/chorem/jtimer/ui/alert/AlertCellEditor.java 2009-10-08 17:08:09 UTC (rev 2671) @@ -89,7 +89,7 @@ break; case 1: - DurationEditor durationEditor = new DurationEditor(); + DurationEditor durationEditor = new DurationEditor(9999); long duration = ((Long)value).longValue(); durationEditor.setDuration(duration); durationEditor.addPropertyChangeListener("duration", this); Modified: trunk/src/main/java/org/chorem/jtimer/ui/alert/AlertCellRenderer.java =================================================================== --- trunk/src/main/java/org/chorem/jtimer/ui/alert/AlertCellRenderer.java 2009-10-02 13:23:49 UTC (rev 2670) +++ trunk/src/main/java/org/chorem/jtimer/ui/alert/AlertCellRenderer.java 2009-10-08 17:08:09 UTC (rev 2671) @@ -60,7 +60,7 @@ break; case 1: - DurationEditor durationEditor = new DurationEditor(); + DurationEditor durationEditor = new DurationEditor(9999); long duration = ((Long)value).longValue(); durationEditor.setDuration(duration); c = durationEditor; Modified: trunk/src/main/java/org/chorem/jtimer/ui/widget/DurationEditor.java =================================================================== --- trunk/src/main/java/org/chorem/jtimer/ui/widget/DurationEditor.java 2009-10-02 13:23:49 UTC (rev 2670) +++ trunk/src/main/java/org/chorem/jtimer/ui/widget/DurationEditor.java 2009-10-08 17:08:09 UTC (rev 2671) @@ -66,12 +66,22 @@ /** * Constructor. + * + * Default hours set to 24. */ public DurationEditor() { + this(24); + } + + /** + * Constructor. + * + * @param maxHourValue max hour value + */ + public DurationEditor(int maxHourValue) { super(new FlowLayout(FlowLayout.CENTER, 0, 0)); - - // hack set 9999 Integer.MAX_VALUE make zone too huge - hourSpinnerModel = new SpinnerNumberModel(0, 0, 9999, 1); + + hourSpinnerModel = new SpinnerNumberModel(0, 0, maxHourValue, 1); hourSpinner = new JSpinner(hourSpinnerModel); add(hourSpinner); @@ -135,7 +145,8 @@ } // down } else if (value < 0) { - if (minuteSpinnerModel.getPreviousValue() != null) { + if (hourSpinnerModel.getNumber().intValue() > 0 || + minuteSpinnerModel.getNumber().intValue() > 0) { secondSpinnerModel.setValue(value + 60); minuteSpinnerModel.setValue(minuteSpinnerModel.getPreviousValue()); } else {