public void setValue(Capacity capacity) { overAssignableWithoutLimitCheckbox.setChecked(capacity.isOverAssignableWithoutLimit()); standardEffortPicker.setValue(capacity.getStandardEffort()); extraEffortPicker.setValue(capacity.getAllowedExtraEffort()); currentCapacity = capacity; updateExtraEffortDisability(); }
private CapacityPicker( Checkbox overAssignableWithoutLimitCheckbox, EffortDurationPicker standardEffortPicker, final EffortDurationPicker extraEffortPicker, Capacity initialCapacity, Setter<Capacity> setter) { this.overAssignableWithoutLimitCheckbox = overAssignableWithoutLimitCheckbox; this.standardEffortPicker = standardEffortPicker; this.extraEffortPicker = extraEffortPicker; this.currentCapacity = initialCapacity; this.setter = setter; standardEffortPicker.bind( new Getter<EffortDuration>() { @Override public EffortDuration get() { return currentCapacity.getStandardEffort(); } }, new Setter<EffortDuration>() { @Override public void set(EffortDuration value) { updateCapacity(currentCapacity.withStandardEffort(value)); } }); extraEffortPicker.bind( new Getter<EffortDuration>() { @Override public EffortDuration get() { if (currentCapacity.getAllowedExtraEffort() == null) { return EffortDuration.zero(); } return currentCapacity.getAllowedExtraEffort(); } }, new Setter<EffortDuration>() { @Override public void set(EffortDuration value) { updateCapacity(currentCapacity.withAllowedExtraEffort(value)); } }); Util.bind( overAssignableWithoutLimitCheckbox, new Getter<Boolean>() { @Override public Boolean get() { return currentCapacity.isOverAssignableWithoutLimit(); } }, new Setter<Boolean>() { @Override public void set(Boolean value) { updateCapacity(currentCapacity.overAssignableWithoutLimit(BooleanUtils.isTrue(value))); updateExtraEffortDisability(); } }); updateExtraEffortDisability(); }
public void setDisabled(boolean disabled) { standardEffortPicker.setDisabled(disabled); updateExtraEffortDisability(); extraEffortPicker.setDisabled(extraEffortPicker.isDisabled() || disabled); overAssignableWithoutLimitCheckbox.setDisabled(disabled); }
private void updateExtraEffortDisability() { extraEffortPicker.setDisabled(currentCapacity.isOverAssignableWithoutLimit()); }