/** * @see java.lang.Object#toString() */ public String toString() { StringBuffer buffer = new StringBuffer(); buffer .append(this.getClass().getName()) .append("{position [") //$NON-NLS-1$ .append(getPosition()) .append("], isAddition [") //$NON-NLS-1$ .append(isAddition()) .append("], element [") //$NON-NLS-1$ .append(getElement() != null ? getElement().toString() : "null") //$NON-NLS-1$ .append("]}"); //$NON-NLS-1$ return buffer.toString(); } }
public void handleListChange(ListChangeEvent event) { Set added = new HashSet(); Set removed = new HashSet(); ListDiffEntry[] differences = event.diff.getDifferences(); for (int i = 0; i < differences.length; i++) { ListDiffEntry entry = differences[i]; Object element = entry.getElement(); if (entry.isAddition()) { if (wrappedSet.add(element)) { if (!removed.remove(element)) added.add(element); } } else { if (wrappedSet.remove(element)) { removed.add(element); added.remove(element); } } } fireSetChange(Diffs.createSetDiff(added, removed)); } };
private ListDiffEntry offsetListDiffEntry(int offset, ListDiffEntry entry) { return Diffs.createListDiffEntry(offset + entry.getPosition(), entry .isAddition(), entry.getElement()); }
private ListDiff<E> convertDiff(ListDiff<? extends T> diff) { // Convert diff to detail value ListDiffEntry<? extends T>[] masterEntries = diff.getDifferences(); List<ListDiffEntry<E>> detailEntries = new ArrayList<>(masterEntries.length); for (ListDiffEntry<? extends T> masterDifference : masterEntries) { int index = masterDifference.getPosition(); boolean addition = masterDifference.isAddition(); T masterElement = masterDifference.getElement(); E detailValue = cache.get(masterElement); detailEntries.add(Diffs.createListDiffEntry(index, addition, detailValue)); } return Diffs.createListDiff(detailEntries); } };
private ListDiff<T> convertDiff(ListDiff<? extends M> diff) { // Convert diff to detail value ListDiffEntry<? extends M>[] masterEntries = diff.getDifferences(); List<ListDiffEntry<T>> detailEntries = new ArrayList<>(masterEntries.length); for (ListDiffEntry<? extends M> masterDifference : masterEntries) { int index = masterDifference.getPosition(); boolean addition = masterDifference.isAddition(); M masterElement = masterDifference.getElement(); T elementDetailValue = detailProperty.getValue(masterElement); detailEntries.add(Diffs.createListDiffEntry(index, addition, elementDetailValue)); } return Diffs.createListDiff(detailEntries); } };
private ListDiff<T> convertDiff(ListDiff<? extends M> diff) { // Convert diff to detail value ListDiffEntry<? extends M>[] masterEntries = diff.getDifferences(); List<ListDiffEntry<T>> detailEntries = new ArrayList<>(masterEntries.length); for (ListDiffEntry<? extends M> masterDifference : masterEntries) { int index = masterDifference.getPosition(); boolean addition = masterDifference.isAddition(); M masterElement = masterDifference.getElement(); T elementDetailValue = detailProperty.getValue(masterElement); detailEntries.add(Diffs.createListDiffEntry(index, addition, elementDetailValue)); } return Diffs.createListDiff(detailEntries); } };
private ListDiff<E> convertDiff(ListDiff<? extends T> diff) { // Convert diff to detail value ListDiffEntry<? extends T>[] masterEntries = diff.getDifferences(); List<ListDiffEntry<E>> detailEntries = new ArrayList<>(masterEntries.length); for (ListDiffEntry<? extends T> masterDifference : masterEntries) { int index = masterDifference.getPosition(); boolean addition = masterDifference.isAddition(); T masterElement = masterDifference.getElement(); E detailValue = cache.get(masterElement); detailEntries.add(Diffs.createListDiffEntry(index, addition, detailValue)); } return Diffs.createListDiff(detailEntries); } };
@Override public void handleListChange(ListChangeEvent event) { ListDiff diff = event.diff; for (ListDiffEntry listDiffEntry : diff.getDifferences()) { IObservable target = (IObservable) listDiffEntry.getElement(); if (listDiffEntry.isAddition()) { target.addChangeListener(uiChangeListener); } else { target.removeChangeListener(uiChangeListener); } } } };
@Override public void handleListChange(ListChangeEvent event) { ListDiff diff = event.diff; for (ListDiffEntry listDiffEntry : diff.getDifferences()) { IObservable target = (IObservable) listDiffEntry.getElement(); if (listDiffEntry.isAddition()) { target.addChangeListener(uiChangeListener); } else { target.removeChangeListener(uiChangeListener); } } } };
@Override public void handleListChange(ListChangeEvent event) { ListDiff diff = event.diff; for (ListDiffEntry listDiffEntry : diff.getDifferences()) { ValidationStatusProvider validationStatusProvider = (ValidationStatusProvider) listDiffEntry .getElement(); IObservableList targets = validationStatusProvider.getTargets(); if (listDiffEntry.isAddition()) { targets.addListChangeListener(validationStatusProviderTargetsListener); for (Iterator it = targets.iterator(); it.hasNext();) { ((IObservable) it.next()).addChangeListener(uiChangeListener); } } else { targets.removeListChangeListener(validationStatusProviderTargetsListener); for (Iterator it = targets.iterator(); it.hasNext();) { ((IObservable) it.next()).removeChangeListener(uiChangeListener); } } } } };
@Override public void handleListChange(ListChangeEvent event) { ListDiff diff = event.diff; for (ListDiffEntry listDiffEntry : diff.getDifferences()) { ValidationStatusProvider validationStatusProvider = (ValidationStatusProvider) listDiffEntry .getElement(); IObservableList targets = validationStatusProvider.getTargets(); if (listDiffEntry.isAddition()) { targets .addListChangeListener(validationStatusProviderTargetsListener); for (Iterator it = targets.iterator(); it.hasNext();) { ((IObservable) it.next()) .addChangeListener(uiChangeListener); } } else { targets .removeListChangeListener(validationStatusProviderTargetsListener); for (Iterator it = targets.iterator(); it.hasNext();) { ((IObservable) it.next()) .removeChangeListener(uiChangeListener); } } } } };
@Override public void handleListChange(ListChangeEvent event) { ListDiffEntry[] diffs = event.diff.getDifferences(); for (ListDiffEntry listDiffEntry : diffs) { if (listDiffEntry.isAddition()) { createChild(listDiffEntry.getElement(), listDiffEntry .getPosition()); } else { disposeWidget(listDiffEntry.getPosition()); } } theComposite.layout(); }
private void handleMasterListChange(ListDiff masterListDiff) { boolean wasStale = isStale(); boolean hasListeners = hasListeners(); ListDiffEntry[] masterEntries = masterListDiff.getDifferences(); ListDiffEntry[] detailEntries = new ListDiffEntry[masterEntries.length]; for (int i = 0; i < masterEntries.length; i++) { ListDiffEntry masterEntry = masterEntries[i]; int index = masterEntry.getPosition(); Object masterElement = masterEntry.getElement(); Object detailValue; if (masterEntry.isAddition()) { detailValue = addDetailObservable(masterElement, index); } else { detailValue = removeDetailObservable(masterElement, index); } if (hasListeners) { // Create the corresponding diff for the detail list. detailEntries[i] = Diffs.createListDiffEntry(index, masterEntry.isAddition(), detailValue); } } if (hasListeners) { if (!wasStale && isStale()) { fireStale(); } // Fire a list change event with the adapted diff. fireListChange(Diffs.createListDiff(detailEntries)); } }
@Override public void handleListChange(ListChangeEvent event) { ListDiffEntry[] differences = event.diff.getDifferences(); for (ListDiffEntry entry : differences) { if (entry.isAddition()) { TableItem item = new TableItem(table, SWT.NONE, entry .getPosition()); UpdateRunnable updateRunnable = new UpdateRunnable(item, entry.getElement()); item.setData(updateRunnable); updateRunnable.makeDirty(); } else { table.getItem(entry.getPosition()).dispose(); } } } };
Object elem = entry.getElement(); int pos = entry.getPosition(); boolean add = entry.isAddition(); if (add != nextEntry.isAddition()) { int addPos; Object addElem;