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

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

Introduction

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

Prototype

public IBaseLabelProvider getLabelProvider() 

Source Link

Document

Returns the label provider used by this viewer.

Usage

From source file:com.nextep.datadesigner.gui.impl.swt.TableColumnSorter.java

License:Open Source License

private String getLabel(StructuredViewer viewer, Object model, int index) {
    IBaseLabelProvider provider = viewer.getLabelProvider();
    if (provider instanceof ITableLabelProvider) {
        return ((ITableLabelProvider) provider).getColumnText(model, index);
    } else if (provider instanceof ILabelProvider) {
        return ((ILabelProvider) provider).getText(model);
    } else if (model instanceof INamedObject) {
        return ((INamedObject) model).getName();
    } else {//  ww  w . j  av a  2  s  .  c  om
        return model.toString();
    }
}

From source file:com.vectrace.MercurialEclipse.ui.CommitFilesChooser.java

License:Open Source License

@SuppressWarnings("unused")
private void makeActions() {
    getViewer().addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            showDiffForSelection();/*  w w w  . j av  a  2 s  .co m*/
        }
    });
    getViewer().addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            fireStateChanged();
        }
    });

    if (selectable) {
        selectAllButton.setSelection(false); // Start not selected

        selectAllButton.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (selectAllButton.getSelection()) {
                    getViewer().setAllChecked(true);
                } else {
                    getViewer().setAllChecked(false);
                }
                fireStateChanged();
            }
        });
    }

    if (selectable && showUntracked) {
        showUntrackedFilesButton.setSelection(true); // Start selected.
        showUntrackedFilesButton.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (showUntrackedFilesButton.getSelection()) {
                    getViewer().removeFilter(untrackedFilesFilter);
                } else {
                    getViewer().addFilter(untrackedFilesFilter);
                }
                getViewer().refresh(true);
                fireStateChanged();
            }
        });
    }

    final Table table = getViewer().getTable();
    TableColumn[] columns = table.getColumns();
    for (int ci = 0; ci < columns.length; ci++) {
        TableColumn column = columns[ci];
        final int colIdx = ci;
        new TableColumnSorter(getViewer(), column) {
            @Override
            protected int doCompare(Viewer v, Object e1, Object e2) {
                StructuredViewer v1 = (StructuredViewer) v;
                ITableLabelProvider lp = (ITableLabelProvider) v1.getLabelProvider();
                String t1 = lp.getColumnText(e1, colIdx);
                String t2 = lp.getColumnText(e2, colIdx);
                if (t1 != null) {
                    return t1.compareTo(t2);
                }
                return 0;
            }
        };
    }
}

From source file:net.sourceforge.tagsea.core.ui.internal.views.CachingTreePatternFilter.java

License:Open Source License

/**
  * Check if the current (leaf) element is a match with the filter text.  
  * The default behavior checks that the label of the element is a match. 
  * /*ww w  .  jav a  2s  .co m*/
  * Subclasses should override this method.
  * 
  * @param viewer the viewer that contains the element
  * @param element the tree element to check
  * @return true if the given element's label matches the filter text
  */
public boolean isLeafMatch(Viewer viewer, Object element) {
    if (element == viewer.getInput())
        return false;
    if (!(viewer instanceof StructuredViewer))
        return false;
    StructuredViewer sv = (StructuredViewer) viewer;
    String labelText = null;
    Widget widget = sv.testFindItem(element);
    if (widget instanceof Item) {
        labelText = ((Item) widget).getText();
    }
    if (labelText == null) {
        if (!(sv.getLabelProvider() instanceof ILabelProvider))
            return false;
        ILabelProvider labelProvider = (ILabelProvider) sv.getLabelProvider();
        labelText = labelProvider.getText(element);
    }
    if (labelText == null) {
        return false;
    }
    //check all words.
    String[] fullText = labelText.split("\\.");
    boolean match = false;
    for (int i = 0; i < fullText.length; i++) {
        match = wordMatches(fullText[i]);
        if (match)
            return match;
    }
    return match;
}

From source file:org.eclipse.cdt.ui.tests.search.BasicSearchTest.java

License:Open Source License

public void testExternalPathRenderedCorrectly_79193() throws Exception {
    // make an external file
    File dir = CProjectHelper.freshDir();
    File externalFile = new File(dir, "extHead.h");
    externalFile.deleteOnExit();/* w w w  . j  a  v  a  2 s .  c om*/
    FileWriter fw = new FileWriter(externalFile);
    fw.write("void foo() {}\n");
    fw.close();

    // rebuild the index
    TestScannerProvider.sIncludes = new String[] { dir.getAbsolutePath() };
    CCorePlugin.getIndexManager().reindex(fCProject);
    waitForIndexer(fCProject);

    // open a query
    CSearchQuery query = makeProjectQuery("foo");
    CSearchResult result = runQuery(query);
    assertEquals(2, result.getElements().length);

    ISearchResultViewPart vp = NewSearchUI.getSearchResultView();
    ISearchResultPage page = vp.getActivePage();
    assertTrue("" + page, page instanceof CSearchViewPage);

    CSearchViewPage pdomsvp = (CSearchViewPage) page;
    StructuredViewer viewer = pdomsvp.getViewer();
    ILabelProvider labpv = (ILabelProvider) viewer.getLabelProvider();
    IStructuredContentProvider scp = (IStructuredContentProvider) viewer.getContentProvider();

    // project results are in a project node, containing directories and files
    Object[] resultElements = scp.getElements(result);
    String label0 = labpv.getText(resultElements[0]);
    String label1 = labpv.getText(resultElements[1]);
    // external results are in a tree, directory containing files
    Object externalResult = resultElements[1];
    String path1 = labpv.getText(externalResult);
    String file1 = labpv.getText(scp.getElements(externalResult)[0]);

    externalResult = resultElements[0];
    String path2 = labpv.getText(externalResult);
    String file2 = labpv.getText(scp.getElements(externalResult)[0]);

    // check the results are rendered
    String expected0 = fCProject.getProject().getName();
    String expected1 = new Path(externalFile.getAbsolutePath()).toString();
    assertTrue(expected0.equals(label0) || expected0.equals(label1));
    assertTrue(expected1.equals(new Path(path1).append(file1).toString())
            || expected1.equals(new Path(path2).append(file2).toString()));
}

From source file:org.eclipse.cdt.ui.tests.search.BasicSearchTest.java

License:Open Source License

public void testNoIndexerEnabled_158955() throws Exception {
    // rebuild the index with no indexer
    CCorePlugin.getIndexManager().setIndexerId(fCProject, IPDOMManager.ID_NO_INDEXER);
    CCorePlugin.getIndexManager().reindex(fCProject);
    waitForIndexer(fCProject);/*from   w  w w  .  j  a v  a  2  s.  c  o  m*/

    // open a query
    CSearchQuery query = makeProjectQuery("x");
    CSearchResult result = runQuery(query);
    assertEquals(0, result.getElements().length);

    ISearchResultViewPart vp = NewSearchUI.getSearchResultView();
    ISearchResultPage page = vp.getActivePage();
    assertTrue("" + page, page instanceof CSearchViewPage);

    CSearchViewPage pdomsvp = (CSearchViewPage) page;
    StructuredViewer viewer = pdomsvp.getViewer();
    ILabelProvider labpv = (ILabelProvider) viewer.getLabelProvider();
    IStructuredContentProvider scp = (IStructuredContentProvider) viewer.getContentProvider();

    // first result is a project node
    Object firstRootNode = scp.getElements(result)[0];
    String label0 = labpv.getText(firstRootNode);
    // ... containing a status message
    IStatus firstRootChildNode = (IStatus) scp.getElements(firstRootNode)[0];

    assertEquals(IStatus.WARNING, firstRootChildNode.getSeverity());
    // can't really verify text in case message is localized...
}

From source file:org.eclipse.cdt.ui.tests.search.BasicSearchTest.java

License:Open Source License

/**
 * /*w w  w .j ava2 s .  com*/
 */
private void coreTestIndexerInProgress(boolean expectComplete) {
    // open a query
    CSearchQuery query = makeProjectQuery("data*");
    CSearchResult result = runQuery(query);

    final int maximumHits = INDEXER_IN_PROGRESS_FILE_COUNT * INDEXER_IN_PROGRESS_STRUCT_COUNT;
    Object[] elements = result.getElements();
    if (expectComplete)
        assertEquals(maximumHits, elements.length);
    else
        assertTrue(maximumHits >= elements.length); // >= because may still be done

    ISearchResultViewPart vp = NewSearchUI.getSearchResultView();
    ISearchResultPage page = vp.getActivePage();
    assertTrue("" + page, page instanceof CSearchViewPage);

    CSearchViewPage pdomsvp = (CSearchViewPage) page;
    StructuredViewer viewer = pdomsvp.getViewer();
    ILabelProvider labpv = (ILabelProvider) viewer.getLabelProvider();
    IStructuredContentProvider scp = (IStructuredContentProvider) viewer.getContentProvider();

    if (!expectComplete) {
        // even if we don't think the indexer is complete, we can't be 100% sure
        // the indexer didn't finish before the query started, so don't fail here
        // if all the hits were found
        if (elements.length < maximumHits) {
            // first result is an IStatus indicating indexer was busy
            Object[] nodeElements = scp.getElements(result);
            Object node = nodeElements[0];
            if (!(node instanceof IStatus))
                node = nodeElements[1];
            if (node instanceof IStatus) {
                IStatus firstRootNode = (IStatus) node;
                assertEquals(IStatus.WARNING, firstRootNode.getSeverity());
                // can't really verify text in case message is localized...
            } else {
                fail("can't get status");
            }
        }
    } else {
        // must NOT have the IStatus
        Object firstRootNode = scp.getElements(result)[0];

        assertFalse(firstRootNode instanceof IStatus);
    }

}

From source file:org.eclipse.debug.ui.AbstractDebugView.java

License:Open Source License

/**
 * Debug views implement the debug view adapter which
 * provides access to a view's underlying viewer and
 * debug model presentation for a specific debug model.
 * //  w ww .ja  v  a2 s  . co  m
 * @see org.eclipse.core.runtime.IAdaptable#getAdapter(java.lang.Class)
 * @see IDebugView
 */
public Object getAdapter(Class adapter) {
    if (adapter == IDebugView.class) {
        return this;
    }
    if (adapter == IDebugModelPresentation.class) {
        StructuredViewer viewer = getStructuredViewer();
        if (viewer != null) {
            IBaseLabelProvider labelProvider = viewer.getLabelProvider();
            if (labelProvider instanceof IDebugModelPresentation) {
                return labelProvider;
            }
        }
    }
    return super.getAdapter(adapter);
}

From source file:org.eclipse.dltk.internal.ui.search.DLTKSearchResultPage.java

License:Open Source License

void setSortOrder(int order) {
    fCurrentSortOrder = order;/*w ww  .ja va 2s  .  co m*/
    StructuredViewer viewer = getViewer();
    viewer.getControl().setRedraw(false);
    DecoratingLabelProvider dlp = (DecoratingLabelProvider) viewer.getLabelProvider();
    ((SortingLabelProvider) dlp.getLabelProvider()).setOrder(order);
    viewer.getControl().setRedraw(true);
    viewer.refresh();
    getSettings().put(KEY_SORTING, fCurrentSortOrder);
}

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

License:Open Source License

public void setSortOrder(int sortOrder) {
    fCurrentSortOrder = sortOrder;/*from www  . j av  a  2s . co 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.emf.diffmerge.ui.util.InconsistencyDialog.java

License:Open Source License

/**
 * Copy the selection of the given viewer into the clipboard, as text
 * @param viewer_p a non-null viewer/*from w ww. j  a va2  s. c o  m*/
 */
protected void copySelectionAsText(final StructuredViewer viewer_p) {
    ISelection selection = viewer_p.getSelection();
    if (selection != null && selection instanceof IStructuredSelection && !selection.isEmpty()) {
        IBaseLabelProvider blp = viewer_p.getLabelProvider();
        if (blp instanceof ILabelProvider) {
            ILabelProvider lp = (ILabelProvider) blp;
            StringBuilder builder = new StringBuilder();
            boolean first = true;
            for (Object selected : ((IStructuredSelection) selection).toList()) {
                if (selected != null) {
                    String label = lp.getText(selected);
                    if (label != null) {
                        if (first)
                            first = false;
                        else
                            builder.append('\n');
                        builder.append(label);
                    }
                }
            }
            copyTextToClipboard(builder.toString(), viewer_p.getControl().getDisplay());
        }
    }
}