Example usage for org.eclipse.jface.viewers StructuredViewer setSorter

List of usage examples for org.eclipse.jface.viewers StructuredViewer setSorter

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers StructuredViewer setSorter.

Prototype

@Deprecated
public void setSorter(ViewerSorter sorter) 

Source Link

Document

Sets this viewer's sorter and triggers refiltering and resorting of this viewer's element.

Usage

From source file:org.eclipse.edt.ide.ui.internal.search.EGLSearchResultPage.java

License:Open Source License

public void setSortOrder(int sortOrder) {
    fCurrentSortOrder = sortOrder;//from  ww  w  .jav  a  2  s  .c o  m
    StructuredViewer viewer = getViewer();
    DecoratingLabelProvider lpWrapper = (DecoratingLabelProvider) viewer.getLabelProvider();
    ((EGLSearchResultLabelProvider) lpWrapper.getLabelProvider()).setOrder(sortOrder);
    if (sortOrder == EGLSearchResultLabelProvider.SHOW_LABEL_PATH) {
        viewer.setSorter(new NameSorter());
    } else {
        viewer.setSorter(new PathSorter());
    }
    getSettings().put(KEY_SORTING, fCurrentSortOrder);
}

From source file:org.eclipse.egit.ui.internal.search.CommitSearchResultsPage.java

License:Open Source License

private void configureViewer(StructuredViewer viewer) {
    viewer.setSorter(new CommitSorter());
    viewer.setContentProvider(new WorkbenchContentProvider() {

        public Object[] getElements(Object element) {
            if (getLayout() == FLAG_LAYOUT_TREE) {
                Map<Repository, RepositoryMatch> repos = new HashMap<Repository, RepositoryMatch>();
                for (Object inputElement : getInput().getElements()) {
                    RepositoryCommit commit = (RepositoryCommit) inputElement;
                    RepositoryMatch match = repos.get(commit.getRepository());
                    if (match == null) {
                        match = new RepositoryMatch(commit.getRepository());
                        repos.put(commit.getRepository(), match);
                    }/*from  w w  w  . j a  va2  s  .  c  om*/
                    match.addCommit(commit);
                }
                return repos.values().toArray();
            }
            return super.getElements(element);
        }

    });
    viewer.setLabelProvider(new DelegatingStyledCellLabelProvider(new CommitResultLabelProvider(getLayout())));
}

From source file:org.eclipse.epp.internal.mpc.ui.wizards.MarketplaceViewer.java

License:Open Source License

@Override
protected StructuredViewer doCreateViewer(Composite container) {
    StructuredViewer viewer = super.doCreateViewer(container);
    viewer.setSorter(null);
    return viewer;
}

From source file:org.eclipse.equinox.internal.p2.ui.discovery.wizards.CatalogViewer.java

License:Open Source License

@Override
protected StructuredViewer doCreateViewer(Composite container) {
    @SuppressWarnings("hiding")
    StructuredViewer viewer = new ControlListViewer(container, SWT.BORDER) {
        @Override/*  w w  w .  j  av  a2s .co m*/
        protected ControlListItem<?> doCreateItem(Composite parent, Object element) {
            return doCreateViewerItem(parent, element);
        }
    };
    contentProvider = doCreateContentProvider();
    contentProvider.setHasCategories(isShowCategories());
    viewer.setContentProvider(contentProvider);
    viewer.setSorter(new ViewerSorter() {
        CatalogCategoryComparator categoryComparator = new CatalogCategoryComparator();

        CatalogItemComparator itemComparator = new CatalogItemComparator();

        @Override
        public int compare(@SuppressWarnings("hiding") Viewer viewer, Object o1, Object o2) {
            CatalogCategory cat1 = getCategory(o1);
            CatalogCategory cat2 = getCategory(o2);

            // FIXME filter uncategorized items?
            if (cat1 == null) {
                return (cat2 != null) ? 1 : 0;
            } else if (cat2 == null) {
                return 1;
            }

            int i = categoryComparator.compare(cat1, cat2);
            if (i == 0) {
                if (o1 instanceof CatalogCategory) {
                    return -1;
                }
                if (o2 instanceof CatalogCategory) {
                    return 1;
                }
                if (cat1 == cat2 && o1 instanceof CatalogItem && o2 instanceof CatalogItem) {
                    return itemComparator.compare((CatalogItem) o1, (CatalogItem) o2);
                }
                return super.compare(viewer, o1, o2);
            }
            return i;
        }

        //               private int compare(Comparator<Object> comparator, Object key1, Object key2) {
        //                  if (key1 == null) {
        //                     return (key2 != null) ? 1 : 0;
        //                  } else if (key2 == null) {
        //                     return -1;
        //                  }
        //                  return comparator.compare(key1, key2);
        //               }
        private CatalogCategory getCategory(Object o) {
            if (o instanceof CatalogCategory) {
                return (CatalogCategory) o;
            }
            if (o instanceof CatalogItem) {
                return ((CatalogItem) o).getCategory();
            }
            return null;
        }
    });

    resources = new DiscoveryResources(container.getDisplay());
    viewer.getControl().addDisposeListener(new DisposeListener() {
        public void widgetDisposed(DisposeEvent e) {
            resources.dispose();
            if (catalog != null)
                catalog.dispose();
        }
    });
    viewer.addFilter(new Filter());
    return viewer;
}

From source file:org.eclipse.team.internal.ui.synchronize.TreeViewerAdvisor.java

License:Open Source License

/**
 * Called to set the input to a viewer. The input to a viewer is always the model created
 * by the model provider.//from   w  w  w .j av  a 2 s  .co m
 * 
 * @param modelProvider
 */
public final void setInput(final ISynchronizeModelProvider modelProvider) {
    final ISynchronizeModelElement modelRoot = modelProvider.getModelRoot();
    getActionGroup().modelChanged(modelRoot);
    modelRoot.addCompareInputChangeListener(new ICompareInputChangeListener() {
        public void compareInputChanged(ICompareInput source) {
            getActionGroup().modelChanged(modelRoot);
        }
    });
    final StructuredViewer viewer = getViewer();
    if (viewer != null) {
        viewer.setSorter(modelProvider.getViewerSorter());
        viewer.setInput(modelRoot);
        modelProvider.addPropertyChangeListener(new IPropertyChangeListener() {
            public void propertyChange(PropertyChangeEvent event) {
                if (event.getProperty() == ISynchronizeModelProvider.P_VIEWER_SORTER) {
                    if (viewer != null && !viewer.getControl().isDisposed()) {
                        viewer.getControl().getDisplay().syncExec(new Runnable() {
                            public void run() {
                                if (viewer != null && !viewer.getControl().isDisposed()) {
                                    ViewerSorter newSorter = modelProvider.getViewerSorter();
                                    ViewerSorter oldSorter = viewer.getSorter();
                                    if (newSorter == oldSorter) {
                                        viewer.refresh();
                                    } else {
                                        viewer.setSorter(newSorter);
                                    }
                                }
                            }
                        });
                    }
                }
            }
        });
    }
}

From source file:org.rubypeople.rdt.internal.ui.browsing.PackagesView.java

License:Open Source License

private void setUpViewer(StructuredViewer viewer) {
    Assert.isTrue(viewer != null);/*from www. j  a  va2  s. c o  m*/

    RubyUILabelProvider labelProvider = createLabelProvider();
    viewer.setLabelProvider(createDecoratingLabelProvider(labelProvider));

    viewer.setSorter(createRubyElementSorter());
    viewer.setUseHashlookup(true);

    createContextMenu();

    //disapears when control disposed
    addKeyListener();

    //this methods only adds listeners to the viewer,
    //these listenters disapear when the viewer is disposed
    hookViewerListeners();

    // Set content provider
    viewer.setContentProvider(createContentProvider());
    //Disposed when viewer's Control is disposed
    initDragAndDrop();

}