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

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

Introduction

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

Prototype

public IElementComparer getComparer() 

Source Link

Document

Returns the comparer to use for comparing elements, or null if none has been set.

Usage

From source file:fr.labsticc.framework.emf.view.ide.EMFEditorUtil.java

License:Open Source License

public static void selectIntoEditor(final List<? extends EObject> p_modelObjects, final IEditorPart editor) {
    IElementComparer currentComparer = null;
    StructuredViewer structViewer = null;
    final ISelection selection = new StructuredSelection(p_modelObjects);

    if (editor instanceof IViewerProvider) {
        final Viewer viewer = ((IViewerProvider) editor).getViewer();

        if (viewer instanceof StructuredViewer) {
            structViewer = (StructuredViewer) viewer;
            currentComparer = structViewer.getComparer();
            structViewer.setComparer(uriComparer);
        }/*  www  .j  a va  2  s. co m*/

        viewer.setSelection(selection, true);
    } else {
        editor.getEditorSite().getSelectionProvider().setSelection(selection);
    }

    if (structViewer != null) {
        structViewer.setComparer(currentComparer);
    }
}

From source file:fr.openpeople.rdal.ide.osate.CoreEditorHandler.java

License:Open Source License

@Override
public void openEditor(EObject p_element) throws PartInitException {
    final IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
    if (window != null && window.getActivePage() != null) {
        final Resource resource = p_element.eResource();

        if (resource != null) {
            final URI uri = resource.getURI();
            final String uriStr = uri.toPlatformString(true);
            final IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(uriStr));

            final IEditorPart editor = IDE.openEditor(window.getActivePage(), file);

            if (editor instanceof Aadl2ModelEditor) {
                final Aadl2ModelEditor aadlEditor = (Aadl2ModelEditor) editor;
                final StructuredViewer viewer = (StructuredViewer) aadlEditor.getViewer();
                final IElementComparer currentComparer = viewer.getComparer();
                viewer.setComparer(uriComparer);
                aadlEditor.setSelectionToViewer(Collections.singleton(p_element));
                //editor.gotoAObject( (AObject) p_element );

                viewer.setComparer(currentComparer);
            }// w w w .  ja  v  a  2s. com
            // In case the file has been opened with another editor, do not assume it is xtext editor.
            else if (editor instanceof XtextEditor) {
                final XtextEditor xtextEditor = (XtextEditor) editor;
                final ITextRegion textRegion = locFileProvider.getSignificantTextRegion(p_element);
                final ITextSelection selection = new TextSelection(textRegion.getOffset(),
                        textRegion.getLength());
                ((XtextSourceViewer) xtextEditor.getInternalSourceViewer()).setSelection(selection, true);
            }
        }
    }
}

From source file:org.eclipse.jubula.client.ui.rcp.provider.contentprovider.objectmapping.OMEditorTreeContentProvider.java

License:Open Source License

/**
 * {@inheritDoc}/*w w  w  .ja  va 2s  .  c o m*/
 */
public void inputChanged(final Viewer viewer, Object oldInput, final Object newInput) {
    Validate.isTrue(viewer instanceof TreeViewer);
    m_childToParentMap.clear();
    DataEventDispatcher ded = DataEventDispatcher.getInstance();
    if (m_modelListener != null) {
        ded.removeDataChangedListener(m_modelListener);
        m_modelListener = null;
    }

    if (newInput != null) {
        m_modelListener = new IDataChangedListener() {
            /** {@inheritDoc} */
            public void handleDataChanged(DataChangedEvent... events) {
                for (DataChangedEvent e : events) {
                    handleDataChanged(e.getPo(), e.getDataState(), e.getUpdateState());
                }
            }

            public void handleDataChanged(IPersistentObject po, DataState dataState, UpdateState updateState) {

                if (updateState != UpdateState.notInEditor) {
                    StructuredViewer structuredViewer = (StructuredViewer) viewer;
                    if (dataState == DataState.StructureModified) {
                        boolean objectsAreEqual = structuredViewer.getComparer() != null
                                ? structuredViewer.getComparer().equals(newInput, po)
                                : newInput.equals(po);
                        if (objectsAreEqual || po instanceof IAUTMainPO || po instanceof IObjectMappingPO) {
                            structuredViewer.refresh();
                        } else {
                            structuredViewer.refresh(po);
                        }
                    } else if (dataState == DataState.Renamed) {
                        structuredViewer.update(po, null);
                    }
                }
            }
        };
        ded.addDataChangedListener(m_modelListener, false);
    }
}

From source file:org.eclipse.php.internal.ui.util.MultiElementSelection.java

License:Open Source License

public MultiElementSelection(StructuredViewer viewer, List elements, TreePath[] treePaths) {
    super(elements);
    fAllTreePaths = treePaths;/*from w  ww.  j a v a2  s  . c  o  m*/
    fElement2TreePaths = createTreePathMap(viewer.getComparer());
}