/** * Reforms the value change and informs the listeners. * * @param label * Label to have value changed. * @param newValue * New value to set. */ private void changeValue(AbstractStorageLabel<Object> label, Object newValue) { if (!Objects.equals(label.getValue(), newValue)) { synchronized (labelEditListeners) { for (LabelEditListener listener : labelEditListeners) { listener.preLabelValueChange(label); } } label.setValue(newValue); synchronized (labelEditListeners) { for (LabelEditListener listener : labelEditListeners) { listener.postLabelValueChange(label); } } } }