List of usage examples for org.eclipse.jface.viewers ViewerComparator ViewerComparator
public ViewerComparator(Comparator<? super String> comparator)
From source file:org.eclipse.angularjs.internal.ui.preferences.html.HTMLAngularEditorSyntaxColoringPreferencePage.java
License:Open Source License
/** * Creates the List viewer where we see the various syntax element display * names--would it ever be a Tree like JDT's? * /*w w w . ja v a 2s .c o m*/ * @param parent * @return */ private StructuredViewer createStylesViewer(Composite parent) { StructuredViewer stylesViewer = new ListViewer(parent, SWT.SINGLE | SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER); stylesViewer.setComparator(new ViewerComparator(Collator.getInstance())); stylesViewer.setLabelProvider(new LabelProvider() { public String getText(Object element) { Object description = fStyleToDescriptionMap.get(element); if (description != null) return description.toString(); return super.getText(element); } }); stylesViewer.setContentProvider(new ITreeContentProvider() { public void dispose() { } public Object[] getChildren(Object parentElement) { return getStylePreferenceKeys().toArray(); } public Object[] getElements(Object inputElement) { return getChildren(inputElement); } public Object getParent(Object element) { return getStylePreferenceKeys(); } public boolean hasChildren(Object element) { return false; } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); return stylesViewer; }
From source file:org.eclipse.birt.report.data.oda.jdbc.ui.dialogs.JdbcDriverManagerDialog.java
License:Open Source License
/** * Carry out sort operation against certain driver column * @param columnIndex the column based on which the sort operation would be carried out * @param asc the sort direction// w ww. j a v a2s . co m */ private void sortDriver(final int columnIndex, final boolean asc) { driverViewer.setComparator(new ViewerComparator(new Comparator() { /* * @see java.util.Comparator#compare(java.lang.Object, * java.lang.Object) */ public int compare(Object o1, Object o2) { String source = (String) o1; String target = (String) o2; int result = 0; if (columnIndex == 1) result = this.compareStr(getDriverClassName(source), getDriverClassName(target)); else if (columnIndex == 2) result = this.compareStr(getDisplayName(source), getDisplayName(target)); else if (columnIndex == 3) result = this.compareStr(getUrlTemplate(source), getUrlTemplate(target)); if (!asc) return result; else return result *= -1; } /** * @param o1 * @param o2 * @return */ private int compareStr(Object o1, Object o2) { return collator.compare(o1, o2); } })); refreshDriver(); }
From source file:org.eclipse.birt.report.data.oda.jdbc.ui.dialogs.JdbcDriverManagerDialog.java
License:Open Source License
/** * Carry out sort operation against certain jar column * @param columnIndex the column based on which the sort operation would be carried out * @param asc the sort direction//from w w w . jav a 2 s .co m */ private void sortJar(final int columnIndex, final boolean asc) { jarViewer.setComparator(new ViewerComparator(new Comparator() { /* * @see java.util.Comparator#compare(java.lang.Object, * java.lang.Object) */ public int compare(Object o1, Object o2) { String source = (String) o1; String target = (String) o2; int result = 0; if (columnIndex == 1) result = this.compareStr(getFileName(source), getFileName(target)); else if (columnIndex == 2) result = this.compareStr(getFilePath(source), getFilePath(target)); if (!asc) return result; else return result *= -1; } /** * @param o1 * @param o2 * @return */ private int compareStr(Object o1, Object o2) { return collator.compare(o1, o2); } })); refreshJar(); }
From source file:org.eclipse.birt.report.designer.data.ui.dataset.DataSetBasePage.java
License:Open Source License
private void setDataSourceTreeViewer() { dataSourceFilteredTree.getViewer().setContentProvider(new ITreeContentProvider() { DataSourceType[] types = null;//from ww w.j a va 2s .c om public void dispose() { } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } public Object[] getElements(Object inputElement) { types = new DataSourceType[((Collection) inputElement).size()]; Iterator iter = ((Collection) inputElement).iterator(); int i = 0; while (iter.hasNext()) { types[i] = (DataSourceType) iter.next(); i++; } return types; } public Object[] getChildren(Object parentElement) { if (parentElement instanceof DataSourceType) { return ((DataSourceType) parentElement).getDataSourceList().toArray(); } else { return new Object[0]; } } public Object getParent(Object element) { if (types != null) { for (int i = 0; i < types.length; i++) { if (types[i].getDataSourceList().contains(element)) return types[i]; } } return null; } public boolean hasChildren(Object element) { if (element instanceof DataSourceType) { return true; } else if (element instanceof DataSourceHandle) { return false; } return false; } }); dataSourceFilteredTree.getViewer().setLabelProvider(new ILabelProvider() { public Image getImage(Object element) { return null; } public String getText(Object element) { if (element instanceof DataSourceType) { return ((DataSourceType) element).getDataSourceDisplayName(); } else if (element instanceof DataSourceHandle) { return ((DataSourceHandle) element).getName(); } return element.toString(); } public void addListener(ILabelProviderListener listener) { } public void dispose() { } public boolean isLabelProperty(Object element, String property) { return false; } public void removeListener(ILabelProviderListener listener) { } }); dataSourceFilteredTree.getViewer().addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { setPageStatus(); } }); dataSourceFilteredTree.getViewer().setComparator(new ViewerComparator(new Comparator() { public int compare(Object o1, Object o2) { return o1.toString().compareTo(o2.toString()); } })); Map sourceMap = getDataSourceMap(); dataSourceFilteredTree.getViewer().setInput(sourceMap.values()); dataSourceFilteredTree.getViewer().expandAll(); if (dataSourceFilteredTree.getViewer().getTree().getItems().length > 0) { dataSourceFilteredTree.getViewer().getTree() .select(dataSourceFilteredTree.getViewer().getTree().getItem(0).getItem(0)); doDataSourceSelectionChanged(dataSourceFilteredTree.getViewer().getTree().getItem(0).getData()); dataSetTypeChooser.getCombo().setEnabled(true); } setPageComplete(!hasWizard() && (getMessageType() != ERROR)); }
From source file:org.eclipse.birt.report.designer.ui.ide.preferences.ExpressionSyntaxColoringPage.java
License:Open Source License
/** * Creates the List viewer where we see the various syntax element display * names--would it ever be a Tree like JDT's? * /*from w w w .java2s . c o m*/ * @param parent * @return */ private StructuredViewer createStylesViewer(Composite parent) { StructuredViewer stylesViewer = new ListViewer(parent, SWT.SINGLE | SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER); stylesViewer.setComparator(new ViewerComparator(Collator.getInstance())); stylesViewer.setLabelProvider(new LabelProvider() { public String getText(Object element) { Object description = fStyleToDescriptionMap.get(element); if (description != null) return description.toString(); return super.getText(element); } }); stylesViewer.setContentProvider(new ITreeContentProvider() { public void dispose() { } public Object[] getChildren(Object parentElement) { return getStylePreferenceKeys().toArray(); } public Object[] getElements(Object inputElement) { return getChildren(inputElement); } public Object getParent(Object element) { return getStylePreferenceKeys(); } public boolean hasChildren(Object element) { return false; } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); return stylesViewer; }
From source file:org.eclipse.egit.gitflow.ui.internal.dialogs.AbstractGitFlowBranchSelectionDialog.java
License:Open Source License
@Override protected Control createCustomArea(Composite parent) { Composite area = new Composite(parent, SWT.NONE); GridDataFactory.fillDefaults().grab(true, true).span(2, 1).applyTo(area); area.setLayout(new GridLayout(1, false)); branchesList = new TableViewer(area, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); GridDataFactory.fillDefaults().grab(true, true).applyTo(branchesList.getControl()); branchesList.setContentProvider(ArrayContentProvider.getInstance()); branchesList.setLabelProvider(createLabelProvider()); branchesList.setComparator(new ViewerComparator(CommonUtils.STRING_ASCENDING_COMPARATOR)); branchesList.setInput(nodes);/* w w w . j a v a 2s . c o m*/ branchesList.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { checkPage(); } }); branchesList.addDoubleClickListener(new IDoubleClickListener() { @Override public void doubleClick(DoubleClickEvent event) { buttonPressed(OK); } }); branchesList.addFilter(createFilter()); return area; }
From source file:org.eclipse.egit.ui.internal.push.PushTagsPage.java
License:Open Source License
@Override public void createControl(Composite parent) { Composite main = new Composite(parent, SWT.NONE); main.setLayout(/*from w w w .j a va 2s .c o m*/ GridLayoutFactory.swtDefaults().spacing(LayoutConstants.getSpacing()).numColumns(2).create()); Label remoteLabel = new Label(main, SWT.NONE); remoteLabel.setText(UIText.PushTagsPage_RemoteLabel); RemoteSelectionCombo remoteSelectionCombo = new RemoteSelectionCombo(main, SWT.NONE, SelectionType.PUSH); remoteSelectionCombo.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create()); selectedRemoteConfig = remoteSelectionCombo.setItems(getRemoteConfigs()); remoteSelectionCombo.addRemoteSelectionListener(new RemoteSelectionCombo.IRemoteSelectionListener() { @Override public void remoteSelected(RemoteConfig remoteConfig) { selectedRemoteConfig = remoteConfig; } }); tagsLabel = new Label(main, SWT.NONE); tagsLabel.setText(UIText.PushTagsPage_TagsLabelNoneSelected); tagsLabel.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).span(2, 1).create()); FilteredCheckboxTree tree = new FilteredCheckboxTree(main, null, SWT.BORDER); tree.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).span(2, 1).hint(400, 300).create()); final Button forceUpdateButton = new Button(main, SWT.CHECK); forceUpdateButton.setText(UIText.PushTagsPage_ForceUpdateButton); forceUpdateButton.setSelection(false); forceUpdateButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).span(2, 1).create()); forceUpdateButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { forceUpdateSelected = forceUpdateButton.getSelection(); } }); final CachedCheckboxTreeViewer treeViewer = tree.getCheckboxTreeViewer(); TagsNode tagsNode = new TagsNode(null, repository); ContentProvider contentProvider = new ContentProvider(tagsNode); treeViewer.setContentProvider(contentProvider); treeViewer.setLabelProvider(new RepositoriesViewStyledCellLabelProvider()); treeViewer.setComparator(new ViewerComparator(CommonUtils.STRING_ASCENDING_COMPARATOR)); treeViewer.setInput(tagsNode); final Object[] tagNodes = contentProvider.getElements(tagsNode); initiallySelectTags(tagNodes, treeViewer); treeViewer.addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(CheckStateChangedEvent event) { setSelectedTags(treeViewer.getCheckedElements()); } }); setControl(main); }
From source file:org.eclipse.incquery.tooling.ui.queryexplorer.content.detail.DetailsViewerUtil.java
License:Open Source License
public void prepareFor(PatternMatchContent match, TableViewer viewer) { clearTableViewerColumns(viewer);// www .jav a 2s . co m String[] titles = { "Parameter", "Value" }; createColumns(viewer, titles); viewer.setUseHashlookup(true); viewer.setColumnProperties(titles); viewer.setContentProvider(new ObservableListContentProvider()); viewer.setLabelProvider(new DetailElementLabelProvider()); viewer.setCellModifier(new DetailElementCellModifier()); viewer.setComparator(new ViewerComparator(new DetailComparator(match.getPatternMatch().parameterNames()))); DatabindingAdapter<IPatternMatch> databindableMatcher = DisplayUtil .getDatabindingAdapter(match.getPatternMatch().patternName());// , match.getParent().isGenerated()); if (databindableMatcher == null) { viewer.setInput(null); } else { DetailObserver observer = new DetailObserver(databindableMatcher, match); viewer.setInput(observer); } }
From source file:org.eclipse.incquery.tooling.ui.queryexplorer.content.detail.DetailsViewerUtil.java
License:Open Source License
public void prepareFor(PatternMatcherContent observableMatcher, TableViewer viewer) { clearTableViewerColumns(viewer);//from w ww . jav a2s .c o m String[] titles = { "Parameter", "Filter", "Class" }; createColumns(viewer, titles); viewer.setUseHashlookup(true); viewer.setColumnProperties(titles); viewer.setContentProvider(new MatcherConfigurationContentProvider()); viewer.setLabelProvider(new MatcherConfigurationLabelProvider()); viewer.setCellModifier(new MatcherConfigurationCellModifier(viewer)); viewer.setComparator( new ViewerComparator(new DetailComparator(observableMatcher.getMatcher().getParameterNames()))); Table table = viewer.getTable(); CellEditor[] editors = new CellEditor[titles.length]; editors[0] = new TextCellEditor(table); ModelElementCellEditor cellEditor = new ModelElementCellEditor(table, observableMatcher); injector.injectMembers(cellEditor); editors[1] = cellEditor; editors[2] = new TextCellEditor(table); viewer.setCellEditors(editors); IQuerySpecification<?> specification = QueryExplorerPatternRegistry.getInstance() .getPatternByFqn(observableMatcher.getPatternName()); Object[] filter = observableMatcher.getFilter(); MatcherConfiguration[] input; if (specification != null) { input = new MatcherConfiguration[specification.getParameters().size()]; if (filter != null) { for (int i = 0; i < specification.getParameters().size(); i++) { PParameter var = specification.getParameters().get(i); input[i] = new MatcherConfiguration(var.getName(), var.getTypeName(), filter[i]); } } } else { input = new MatcherConfiguration[0]; } viewer.setInput(input); }
From source file:org.eclipse.incquery.tooling.ui.queryexplorer.content.detail.TableViewerUtil.java
License:Open Source License
public void prepareTableViewerForObservableInput(final ObservablePatternMatch match, TableViewer viewer) { clearTableViewerColumns(viewer);/* w w w . j a v a 2s .c o m*/ String[] titles = { "Parameter", "Value" }; createColumns(viewer, titles); viewer.setUseHashlookup(true); viewer.setColumnProperties(titles); viewer.setContentProvider(new ObservableListContentProvider()); viewer.setLabelProvider(new DetailElementLabelProvider()); viewer.setCellModifier(new DetailElementCellModifier()); viewer.setComparator(new ViewerComparator(new DetailComparator(match.getPatternMatch().parameterNames()))); DatabindingAdapter<IPatternMatch> databindableMatcher = DatabindingUtil .getDatabindingAdapter(match.getPatternMatch().patternName(), match.getParent().isGenerated()); if (databindableMatcher == null) { viewer.setInput(null); } else { DetailObserver observer = new DetailObserver(databindableMatcher, match); viewer.setInput(observer); } }