public void handleValueChange(ValueChangeEvent event) { if (!event.getObservable().isStale()) { staleDetailObservables.remove(event.getObservable()); } handleDetailValueChange(event); } };
public void handleValueChange(ValueChangeEvent event) { if (!updating) { IObservableValue observable = event.getObservableValue(); if (Boolean.TRUE.equals(observable.getValue())) { notifyIfChanged(indexOfObservable(observable)); } } } };
protected void fireValueChange(ValueDiff diff) { // fire general change event first super.fireChange(); fireEvent(new ValueChangeEvent(this, diff)); }
protected void fireValueChange(ValueDiff diff) { // fire general change event first super.fireChange(); fireEvent(new ValueChangeEvent(this, diff)); }
private void handleDetailValueChange(ValueChangeEvent event) { IObservableValue detail = event.getObservableValue(); // When we get a change event on a detail observable, we must find its // position while there may also be duplicate entries. BitSet detailIndexes = new BitSet(); for (int i = 0; i < detailList.size(); i++) { if (detailList.get(i) == detail) { detailIndexes.set(i); } } // Create the diff for every found position. Object oldValue = event.diff.getOldValue(); Object newValue = event.diff.getNewValue(); ListDiffEntry[] diffEntries = new ListDiffEntry[2 * detailIndexes .cardinality()]; int diffIndex = 0; for (int b = detailIndexes.nextSetBit(0); b != -1; b = detailIndexes .nextSetBit(b + 1)) { diffEntries[diffIndex++] = Diffs.createListDiffEntry(b, false, oldValue); diffEntries[diffIndex++] = Diffs.createListDiffEntry(b, true, newValue); } fireListChange(Diffs.createListDiff(diffEntries)); }
public void handleValueChange(ValueChangeEvent event) { if (!event.getObservableValue().isStale()) { staleDetailObservables.remove(detailValue); } fireSingleChange(addedKey, event.diff.getOldValue(), event.diff.getNewValue()); } });