Example usage for org.eclipse.jface.viewers TableViewer insert

List of usage examples for org.eclipse.jface.viewers TableViewer insert

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers TableViewer insert.

Prototype

public void insert(Object element, int position) 

Source Link

Document

Inserts the given element into this table viewer at the given position.

Usage

From source file:de.walware.ecommons.workbench.search.ui.TextSearchResultTableContentProvider.java

License:Open Source License

@Override
public void elementsChanged(final Object[] elements) {
    if (!this.active) {
        return;//  w  w  w.j av  a  2s.c  o m
    }

    final ExtTextSearchResult<E, M> result = getInput();
    final int limit = getElementLimit();
    final TableViewer viewer = getViewer();

    viewer.getTable().setRedraw(false);
    try {
        //         final List<E> toAdd= new ArrayList<E>();
        final List<E> toUpdate = new ArrayList<E>();
        //         final List<E> toRemove= new ArrayList<E>();
        for (int i = 0; i < elements.length; i++) {
            final E element = (E) elements[i];
            if (result.hasPickedMatches(element)) {
                if (this.currentElements.size() < limit) {
                    final int idx = this.currentElements.addE(element);
                    if (idx >= 0) {
                        viewer.insert(element, idx);
                        //                     toAdd.add(element);
                    } else {
                        toUpdate.add(element);
                    }
                } else if (this.currentElements.contains(element)) {
                    toUpdate.add(element);
                }
            } else {
                final int idx = this.currentElements.removeE(element);
                if (idx >= 0) {
                    viewer.remove(element);
                    //                  toRemove.add(element);
                }
            }
        }

        //         viewer.remove(toRemove.toArray());
        //         viewer.add(toAdd.toArray());
        viewer.refresh(toUpdate.toArray(), true);
    } finally {
        viewer.getTable().setRedraw(true);
    }
}

From source file:org.eclipse.e4mf.edit.ui.provider.NotifyChangedToViewerRefresh.java

License:Open Source License

public void refreshTableViewer(TableViewer viewer, Object object, int eventType, Object feature,
        Object oldValue, Object newValue, int index) {
    switch (eventType) {
    case Notification.ADD: {
        viewer.insert(newValue, index);
        break;/*from w ww .j av  a2s . c  o m*/
    }
    case Notification.ADD_MANY: {
        if (index == -1) {
            viewer.add(((Collection<?>) newValue).toArray());
        } else {
            for (Object value : (Collection<?>) newValue) {
                viewer.insert(value, index++);
            }
        }
        break;
    }
    case Notification.REMOVE: {
        viewer.remove(oldValue);
        break;
    }
    case Notification.REMOVE_MANY: {
        viewer.remove(((Collection<?>) oldValue).toArray());
        break;
    }
    case Notification.MOVE:
    case Notification.UNSET:
    case Notification.SET:
    default: {
        refreshStructuredViewer(viewer, object, eventType, feature, oldValue, newValue, index);
        break;
    }
    }
}

From source file:org.eclipse.emf.ecp.internal.ui.view.emf.NotifyChangedToViewerRefresh.java

License:Open Source License

public void refreshTableViewer(TableViewer viewer, Object object, int eventType, Object feature,
        Object oldValue, Object newValue, int index) {
    switch (eventType) {
    case Notification.ADD: {
        viewer.insert(newValue, index);
        break;//  w  ww  .  ja  v  a  2  s . c  o  m
    }
    case Notification.ADD_MANY: {
        if (index == -1) {
            viewer.add(((Collection<?>) newValue).toArray());
        } else {
            for (final Object value : (Collection<?>) newValue) {
                viewer.insert(value, index++);
            }
        }
        break;
    }
    case Notification.REMOVE: {
        viewer.remove(oldValue);
        break;
    }
    case Notification.REMOVE_MANY: {
        viewer.remove(((Collection<?>) oldValue).toArray());
        break;
    }
    case Notification.MOVE:
    case Notification.UNSET:
    case Notification.SET:
    default: {
        refreshStructuredViewer(viewer, object, eventType, feature, oldValue, newValue, index);
        break;
    }
    }
}

From source file:org.hibernate.eclipse.console.wizards.UpDownListComposite.java

License:Open Source License

/**
 * Moves an entry in the builder table to the given index.
 *//*w  ww .j a  va2s  .  c  o m*/
private void move(TableViewer viewer, TableItem item, int index) {
    Object data = item.getData();
    item.dispose();
    viewer.insert(data, index);
}