Example usage for org.eclipse.jface.viewers DecoratingLabelProvider DecoratingLabelProvider

List of usage examples for org.eclipse.jface.viewers DecoratingLabelProvider DecoratingLabelProvider

Introduction

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

Prototype

public DecoratingLabelProvider(ILabelProvider provider, ILabelDecorator decorator) 

Source Link

Document

Creates a decorating label provider which uses the given label decorator to decorate labels provided by the given label provider.

Usage

From source file:com.liferay.ide.ui.wizard.LiferayDataModelWizardPage.java

License:Open Source License

protected void handleFileBrowseButton(final Text text, String title, String message) {
    ISelectionStatusValidator validator = getContainerDialogSelectionValidator();

    ViewerFilter filter = getContainerDialogViewerFilter();

    ITreeContentProvider contentProvider = new WorkbenchContentProvider();

    ILabelProvider labelProvider = new DecoratingLabelProvider(new WorkbenchLabelProvider(),
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator());

    ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(getShell(), labelProvider,
            contentProvider);//from  ww  w.ja v a  2  s. c om
    dialog.setValidator(validator);
    dialog.setTitle(title);
    dialog.setMessage(message);
    dialog.addFilter(filter);

    // IDE-110
    IVirtualFolder webappRoot = getDocroot();

    if (webappRoot != null) {
        IContainer container = webappRoot.getUnderlyingFolder();

        if (container != null && container.exists() && container.getAdapter(IFolder.class) != null) {
            dialog.setInput((IFolder) container.getAdapter(IFolder.class));

            if (dialog.open() == Window.OK) {
                Object element = dialog.getFirstResult();

                try {
                    if (element instanceof IFile) {
                        IFile file = (IFile) element;

                        final IPath relativePath = file.getFullPath().makeRelativeTo(container.getFullPath());

                        text.setText("/" + relativePath.toPortableString()); //$NON-NLS-1$
                        // dealWithSelectedContainerResource(container);
                    }
                } catch (Exception ex) {
                    // Do nothing
                }
            }
        }
    }
}

From source file:com.microsoft.tfs.client.common.ui.framework.table.TableControl.java

License:Open Source License

/**
 * Sets an {@link ILabelDecorator} for this control to use. Any previous
 * {@link ILabelDecorator} will be ignored. This method is intended for use
 * with the workbench label decoration mechanism.
 *
 * @param labelDecorator// w  w  w .  ja va  2  s . c o m
 *        a new {@link ILabelDecorator} to use (must not be
 *        <code>null</code>)
 */
public void setLabelDecorator(final ILabelDecorator labelDecorator) {
    Check.notNull(labelDecorator, "labelDecorator"); //$NON-NLS-1$

    ILabelProvider labelProvider = (ILabelProvider) viewer.getLabelProvider();

    if (labelProvider instanceof DecoratingLabelProvider) {
        final DecoratingLabelProvider decoratingLabelProvider = (DecoratingLabelProvider) labelProvider;
        labelProvider = decoratingLabelProvider.getLabelProvider();
    }

    labelProvider = new DecoratingLabelProvider(labelProvider, labelDecorator);
    viewer.setLabelProvider(labelDecorator);
}

From source file:com.nokia.carbide.cpp.internal.pi.save.SaveSamplesPage.java

License:Open Source License

/**
 * This method initializes projectComposite   
 *
 *//*from w  w  w.j a va  2 s . c om*/
private void createProjectComposite(Composite container) {
    GridLayout gridLayout2 = new GridLayout();
    gridLayout2.numColumns = 2;
    Composite projectComposite = new Composite(container, SWT.NONE);
    projectComposite.setLayout(gridLayout2);
    projectComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    outputChooserTreeViewer = new TreeViewer(projectComposite, SWT.BORDER);
    outputChooserTreeViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    outputChooserTreeViewer.setContentProvider(new ProjectContentProvider());
    outputChooserTreeViewer.setLabelProvider(new DecoratingLabelProvider(new WorkbenchLabelProvider(),
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
    outputChooserTreeViewer.setInput(ResourcesPlugin.getWorkspace().getRoot());
    outputChooserTreeViewer.getTree().addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent arg0) {
        }

        public void widgetSelected(SelectionEvent arg0) {
            dialogChanged();
        }
    });

    createButtonComposite(projectComposite);
}

From source file:com.nokia.carbide.cpp.internal.pi.wizards.ui.NewPIWizardPageOutputTask.java

License:Open Source License

/**
 * This method initializes projectComposite   
 *
 *//*from   w ww . j a v  a2s  . c o  m*/
private void createProjectComposite() {
    GridLayout gridLayout2 = new GridLayout();
    gridLayout2.numColumns = 2;
    projectComposite = new Composite(composite, SWT.NONE);
    projectComposite.setLayout(gridLayout2);
    projectComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    outputChooserTreeViewer = new TreeViewer(projectComposite, SWT.BORDER);
    outputChooserTreeViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    outputChooserTreeViewer.setContentProvider(new ProjectContentProvider());
    outputChooserTreeViewer.setLabelProvider(new DecoratingLabelProvider(new WorkbenchLabelProvider(),
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
    outputChooserTreeViewer.setInput(ResourcesPlugin.getWorkspace().getRoot());
    outputChooserTreeViewer.getTree().addSelectionListener(new SelectionListener() {

        public void widgetDefaultSelected(SelectionEvent arg0) {
        }

        public void widgetSelected(SelectionEvent arg0) {
            validatePage();
        }
    });
    outputChooserTreeViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent arg0) {
            TreeSelection selection = (TreeSelection) outputChooserTreeViewer.getSelection();
            if (selection != null) {
                Object selected = selection.getFirstElement();
                if (selected != null) {
                    if (selected instanceof IContainer) {
                        NewPIWizardSettings.getInstance().outputContainer = (IContainer) selected;
                    }
                }
            }
        }
    });

    createButtonComposite();
}

From source file:com.nokia.carbide.cpp.internal.pi.wizards.ui.NewPIWizardPagePkgListTask.java

License:Open Source License

/**
 * This method initializes filelistComposite   
 *
 *///from   w  w  w.j  ava  2s . co  m
private void createFilelistComposite() {
    GridLayout gridLayout2 = new GridLayout();
    gridLayout2.numColumns = 2;
    filelistComposite = new Composite(composite, SWT.NONE);
    filelistComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    filelistComposite.setLayout(gridLayout2);
    projectTreeViewer = new PkgListTreeViewer(filelistComposite, SWT.H_SCROLL | SWT.BORDER);
    pkgListRoot = new PkgListTree();
    projectTreeViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    projectTreeViewer
            .setContentProvider(pkgListTreeContentProvider = new PkgListTreeContentProvider(pkgListRoot));
    projectTreeViewer.setLabelProvider(new DecoratingLabelProvider(new PkgListTreeLabelProvider(),
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
    projectTreeViewer.setInput(pkgListRoot);
    projectTreeViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent arg0) {
            ISelection selection = arg0.getSelection();
            // if selecting disabled item, ditch the selection and restore viewer
            // selection using data object
            if (selection instanceof TreeSelection) {
                TreeSelection treeSelection = (TreeSelection) selection;
                TreePath[] paths = treeSelection.getPaths();
                if (paths.length == 1) {
                    if (projectTreeViewer.getElementEnabled(paths[0].getLastSegment()) == false) {
                        setupPageFromFromNewPIWizardSettings();
                    }
                }
            }
            NewPIWizardSettings npiws = NewPIWizardSettings.getInstance();
            npiws.selectedAppFileList.clear();
            for (IPkgEntry pkg : projectTreeViewer.getSelectedPkgs()) {
                npiws.selectedAppFileList.add(pkg);
            }
            npiws.selectedProjectList.clear();
            for (IProject project : projectTreeViewer.getSelectedProjects()) {
                npiws.selectedProjectList.add(project);
            }
            npiws.selectedBuildConfigList.clear();
            for (ICarbideBuildConfiguration config : projectTreeViewer.getSelectedConfigs()) {
                npiws.selectedBuildConfigList.add(config);
            }
            npiws.availableAppFileList.clear();
            IPkgEntry[] allPkg = pkgListRoot.getPkgEntries();
            for (IPkgEntry pkg : allPkg) {
                npiws.availableAppFileList.add(pkg);
            }
        }
    });
    projectTreeViewer.expandToLevel(2); // just to project level

    createButtonComposite();
}

From source file:com.nokia.carbide.search.system.internal.ui.text.FileSearchPage.java

License:Open Source License

protected void configureTreeViewer(TreeViewer viewer) {
    viewer.setUseHashlookup(true);//from   ww w. ja v  a  2 s . co  m
    FileLabelProvider innerLabelProvider = new FileLabelProvider(this, FileLabelProvider.SHOW_LABEL);
    viewer.setLabelProvider(new DecoratingLabelProvider(innerLabelProvider,
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
    viewer.setContentProvider(new FileTreeContentProvider(this, viewer));
    //      viewer.setComparator(new DecoratorIgnoringViewerSorter(innerLabelProvider));
    fContentProvider = (IFileSearchContentProvider) viewer.getContentProvider();
    addDragAdapters(viewer);
}

From source file:com.nokia.tools.variant.confml.ui.views.ConfMLNavigator.java

License:Open Source License

/**
 * This is a callback that will allow us to create the viewer and initialize
 * it./* w  w  w. jav  a  2s . c o  m*/
 */
public void createPartControl(Composite parent) {
    viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    drillDownAdapter = new DrillDownAdapter(viewer);
    viewer.setContentProvider(new ViewContentProvider());
    viewer.setLabelProvider(new DecoratingLabelProvider(new ConfMLViewLabelProvider(),
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
    viewer.setSorter(new NameSorter());
    viewer.setFilters(new ViewerFilter[0]);
    viewer.setInput(ResourcesPlugin.getWorkspace().getRoot());
    final Tree tree = viewer.getTree();

    final Listener labelListener = new Listener() {
        public void handleEvent(Event event) {
            Label label = (Label) event.widget;
            Shell shell = label.getShell();
            switch (event.type) {
            case SWT.MouseDown:
                Event e = new Event();
                e.item = (TreeItem) label.getData("_TABLEITEM");
                tree.setSelection(new TreeItem[] { (TreeItem) e.item });
                tree.notifyListeners(SWT.Selection, e);
                shell.dispose();
                tree.setFocus();
                break;
            case SWT.MouseExit:
                shell.dispose();
                break;
            }
        }
    };

    Listener tableListener = new Listener() {
        Shell tooltip = null;
        Label tooltipLabel = null;

        public void handleEvent(Event event) {
            switch (event.type) {
            case SWT.Dispose:
            case SWT.KeyDown:
            case SWT.MouseMove: {
                if (tooltip == null)
                    break;
                tooltip.dispose();
                tooltip = null;
                tooltipLabel = null;
                break;
            }
            case SWT.MouseHover: {
                TreeItem item = tree.getItem(new Point(event.x, event.y));
                if (item != null) {
                    if ((item.getData() instanceof EAppFeature) || (item.getData() instanceof EAppSetting)) {
                        if (tooltip != null && !tooltip.isDisposed())
                            tooltip.dispose();
                        tooltip = new Shell(Display.getCurrent().getActiveShell(),
                                SWT.ON_TOP | SWT.NO_FOCUS | SWT.TOOL);
                        tooltip.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_INFO_BACKGROUND));
                        FillLayout layout = new FillLayout();
                        layout.marginWidth = 2;
                        tooltip.setLayout(layout);
                        tooltipLabel = new Label(tooltip, SWT.NONE);
                        tooltipLabel
                                .setForeground(Display.getCurrent().getSystemColor(SWT.COLOR_INFO_FOREGROUND));
                        tooltipLabel
                                .setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_INFO_BACKGROUND));
                        tooltipLabel.setData("_TABLEITEM", item);
                        String tooltipText = null;
                        EAppFeature feature;
                        if (item.getData() instanceof EAppFeature) {
                            feature = (EAppFeature) item.getData();
                        } else {
                            EAppSetting setting = (EAppSetting) item.getData();
                            feature = (EAppFeature) setting.eContainer().eContainer();
                        }
                        EConfMLLayer ev = (EConfMLLayer) feature.eContainer().eContainer();
                        tooltipLabel.setText("Inherited from " + tooltipText);
                        tooltipLabel.addListener(SWT.MouseExit, labelListener);
                        tooltipLabel.addListener(SWT.MouseDown, labelListener);
                        Point size = tooltip.computeSize(SWT.DEFAULT, SWT.DEFAULT);
                        Rectangle rect = item.getBounds(0);
                        Point pt = tree.toDisplay(rect.x, rect.y);
                        tooltip.setBounds(pt.x, pt.y, size.x, size.y);
                        if (tooltipText != null) {
                            tooltip.setVisible(true);
                        } else {
                            tooltip.setVisible(false);
                        }
                    }
                }
            }
            }
        }
    };
    tree.addListener(SWT.Dispose, tableListener);
    tree.addListener(SWT.KeyDown, tableListener);
    tree.addListener(SWT.MouseMove, tableListener);
    tree.addListener(SWT.MouseHover, tableListener);

    Transfer[] types = new Transfer[] { LocalSelectionTransfer.getTransfer() };
    int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_LINK;
    final DragSource source = new DragSource(viewer.getTree(), operations);
    source.setTransfer(types);
    source.addDragListener(new DragSourceAdapter() {
        public void dragStart(DragSourceEvent event) {
            ISelection selection = viewer.getSelection();
            if (!selection.isEmpty()) {
                event.doit = true;
                LocalSelectionTransfer.getTransfer().setSelection(selection);
            } else {
                event.doit = false;
            }
        };
    });

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            Object[] copy = listeners.getListeners();
            final SelectionChangedEvent event1 = new SelectionChangedEvent(ConfMLNavigator.this,
                    event.getSelection());
            for (final Object l : copy) {
                SafeRunner.run(new SafeRunnable() {
                    public void run() throws Exception {
                        ((ISelectionChangedListener) l).selectionChanged(event1);
                    }
                });
            }
        }
    });

    // Create the help context id for the viewer's control
    PlatformUI.getWorkbench().getHelpSystem().setHelp(viewer.getControl(),
            "com.nokia.tools.variant.confml.ui.viewer");
    makeActions();
    hookContextMenu();
    hookDoubleClickAction();
    contributeToActionBars();

}

From source file:com.nokia.tools.vct.confml.editor.include.xincmodel.presentation.EXincModelEditor.java

License:Open Source License

private void createMainPageComposite() {

    PatternFilter leftFilter = new PatternFilter();
    PatternFilter rightFilter = new PatternFilter();
    defaultFilter = new DefaultFilter();

    Composite container = getContainer();
    FormToolkit toolkit = new FormToolkit(container.getDisplay());

    final Form parent = toolkit.createForm(container);
    toolkit.decorateFormHeading(parent);
    parent.getBody().setLayout(new FormLayout());
    FormData data;/*from  w  w  w.jav a 2  s . com*/

    parent.setText(getString("_UI_EXincModelEditor_label"));

    Section leftSection = toolkit.createSection(parent.getBody(), Section.TITLE_BAR);
    ToolBar leftToolbar = new ToolBar(leftSection, SWT.FLAT);
    leftSection.setTextClient(leftToolbar);
    Composite leftComposite = toolkit.createComposite(leftSection);
    GridLayout gl = new GridLayout(1, false);
    gl.marginHeight = gl.marginWidth = 0;
    gl.marginBottom = 5;
    leftComposite.setLayout(gl);

    Sash sash = new Sash(parent.getBody(), SWT.VERTICAL);
    toolkit.adapt(sash, false, false);
    Section rightSection = toolkit.createSection(parent.getBody(), Section.TITLE_BAR);
    ToolBar rightToolbar = new ToolBar(rightSection, SWT.FLAT);
    rightSection.setTextClient(rightToolbar);
    final Composite rightComposite = toolkit.createComposite(rightSection);
    gl = new GridLayout(1, false);
    gl.marginHeight = gl.marginWidth = 0;
    gl.marginBottom = 5;
    rightComposite.setLayout(gl);

    TreeViewerFilterToolbar toolbar1 = new TreeViewerFilterToolbar();
    toolbar1.createToolbar(leftToolbar, leftComposite, toolkit);
    TreeViewerFilterToolbar toolbar2 = new TreeViewerFilterToolbar();
    toolbar2.createToolbar(rightToolbar, rightComposite, toolkit);

    leftSection.setText("Inclusions");
    rightSection.setText("Available Resources");
    leftSection.setClient(leftComposite);
    rightSection.setClient(rightComposite);

    data = new FormData();
    data.left = new FormAttachment(0);
    data.right = new FormAttachment(sash, 0);
    data.top = new FormAttachment(0);
    data.bottom = new FormAttachment(100);
    leftSection.setLayoutData(data);
    data = new FormData();
    data.left = new FormAttachment(sash, 0);
    data.right = new FormAttachment(100);
    data.top = new FormAttachment(0);
    data.bottom = new FormAttachment(100);
    rightSection.setLayoutData(data);
    data = new FormData();
    data.left = new FormAttachment(50);
    data.top = new FormAttachment(0);
    data.bottom = new FormAttachment(100);
    sash.setLayoutData(data);

    sash.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            FormData data = new FormData();
            int x = e.x;
            final int LIMIT = 150;
            if (x < LIMIT) {
                x = LIMIT;
            } else if (parent.getBody().getClientArea().width - LIMIT < x) {
                x = parent.getBody().getClientArea().width - LIMIT;
            }

            data.left = new FormAttachment(0, x);
            data.top = new FormAttachment(0);
            data.bottom = new FormAttachment(100);
            ((Sash) e.widget).setLayoutData(data);
            parent.getBody().layout(true, true);
        }
    });

    Tree tree = new Tree(leftComposite, SWT.MULTI);
    tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    selectionViewer = new TreeViewer(tree);
    setCurrentViewer(selectionViewer);

    selectionViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));

    ILabelProvider lp = new DecoratingLabelProvider(new AdapterFactoryLabelProvider(adapterFactory),
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator());

    selectionViewer.setLabelProvider(lp);

    URI resourceURI = EditUIUtil.getURI(getEditorInput());
    Resource resource = editingDomain.getResourceSet().getResource(resourceURI, false);
    EObject contents = resource.getContents().get(0);
    selectionViewer.addFilter(leftFilter);
    selectionViewer.setInput(resource);
    selectionViewer.setSelection(new StructuredSelection(contents), true);
    selectionViewer.expandToLevel(AbstractTreeViewer.ALL_LEVELS);
    new AdapterFactoryTreeEditor(selectionViewer.getTree(), adapterFactory);
    createContextMenuFor(selectionViewer);
    int pageIndex = addPage(parent);
    setPageText(pageIndex, getString("_UI_SelectionPage_label"));

    Tree tree2 = new Tree(rightComposite, SWT.MULTI);
    tree2.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    targetsViewer = new TreeViewer(tree2);
    targetsViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory2));
    targetsViewer
            .setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(adapterFactory2, targetsViewer));
    targetsViewer.setSorter(new ViewerSorter() {
        @Override
        public int category(Object element) {
            if (element instanceof EResourceContainer) {
                return 0;
            }

            return 1;
        }
    });
    targetsViewer.addFilter(defaultFilter);
    targetsViewer.addFilter(rightFilter);
    ViewerFilter usedFileFilter = new ViewerFilter() {
        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            if (element instanceof EProjectFile) {
                return ((EProjectFile) element).getIncluded().isEmpty();
            }
            if (element instanceof EProjectFolder) {
                return hasVisibleChildren((EProjectFolder) element);
            }

            return true;
        }

        private boolean hasVisibleChildren(EProjectFolder folder) {
            for (EProjectResource res : folder.getResources()) {
                boolean ok;
                if (res instanceof EProjectFolder) {
                    ok = hasVisibleChildren((EProjectFolder) res);
                } else {
                    ok = ((EProjectFile) res).getIncluded().isEmpty();
                }
                if (ok) {
                    return true;
                }
            }
            return false;
        }

    };
    targetsViewer.addFilter(usedFileFilter);
    targetsViewer.setInput(resource);
    targetsViewer.expandToLevel(2);
    targetsViewer.setSelection(new StructuredSelection(contents), true);

    createContextMenuFor(targetsViewer);

    tree.addFocusListener(new FocusAdapter() {
        @Override
        public void focusGained(FocusEvent e) {
            setCurrentViewer(selectionViewer);
        }
    });
    tree2.addFocusListener(new FocusAdapter() {
        @Override
        public void focusGained(FocusEvent e) {
            setCurrentViewer(targetsViewer);
        }
    });

    toolbar1.init(selectionViewer, leftFilter);
    toolbar2.init(targetsViewer, rightFilter);

    getSite().getShell().getDisplay().asyncExec(new Runnable() {
        public void run() {
            setActivePage(0);
        }
    });

    TreeItem rootItem = selectionViewer.getTree().getItem(0);
    if (rootItem.getData() instanceof EDocument) {
        EDocument leftSideDoc = (EDocument) rootItem.getData();
        Resource res = leftSideDoc.eResource();
        String path = res.getURI().path();
        String lastSeq = res.getURI().lastSegment();
        String layerPath = path.substring(9, path.length() - lastSeq.length() - 1);
        defaultFilter.setPatterns(new String[] { layerPath });
        targetsViewer.refresh();
    }

}

From source file:com.nokia.tools.vct.confml.editor.view.ViewsEditor.java

License:Open Source License

private void createConfmlTreeViewer(Composite parent) {
    confmlTv = new ConfmlTreeViewer(parent, SWT.MULTI | SWT.BORDER);
    confmlTv.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));
    confmlTv.setContentProvider(new ConfmlTreeViewerContentProvider());
    ConfmlTreeViewerLabelProvider labelProvider = new ConfmlTreeViewerLabelProvider();
    confmlTv.setLabelProvider(new DecoratingLabelProvider(labelProvider,
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
    confmlTv.setSorter(new ViewerSorter());
    confmlTv.setAutoExpandLevel(1);/* www .j  a  v  a2 s.  c  o  m*/
    confmlTv.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            ISelection selection = event.getSelection();
            if (selection.isEmpty() || !(selection instanceof IStructuredSelection)) {
                return;
            }

            Object selected = ((IStructuredSelection) selection).getFirstElement();
            if (selected == null) {
                return;
            }
            if (selected instanceof ESettingRef) {
                selected = ((ESettingRef) selected).getTarget();
            }
            if (selected instanceof EResourceLocator) {
                String uri = ((EResourceLocator) selected).getResourceUri();
                // EConfMLResource res =
                // EditorUtils.getConfMLResource((EObject)selected);
                // EditorUtils.openEditor(uri, null);
            } else {
                return;
            }
        }
    });
}

From source file:com.nokia.tools.vct.confml.editor.view.ViewsEditor.java

License:Open Source License

private void createViewTreeViewer(Composite parent) {
    viewTv = new ViewTreeViewer(parent, SWT.MULTI | SWT.BORDER);
    viewTv.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));
    viewTv.setContentProvider(new ViewTreeViewerContentProvider());
    ViewTreeViewerLabelProvider labelProvider = new ViewTreeViewerLabelProvider();
    labelProvider.setViewer(viewTv);//ww  w .j a v a2s  . c  o  m
    viewTv.setLabelProvider(new DecoratingLabelProvider(labelProvider,
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));

    viewTv.setAutoExpandLevel(2);
    viewTv.getTree().addKeyListener(new KeyAdapter() {
        public void keyPressed(KeyEvent e) {
            switch (e.keyCode) {
            case SWT.DEL:
                // do not use action here...

                IStructuredSelection selection = (IStructuredSelection) viewTv.getSelection();
                if (selection.isEmpty()) {
                    return;
                }
                Object[] selected = selection.toArray();

                List<EObject> list = new ArrayList<EObject>();
                for (Object o : selected) {
                    if (isFromRootView((EObject) o) && (o instanceof EGroup || o instanceof ESettingRef)) {
                        list.add((EObject) o);
                    } else if (isViewUnderRoot((EObject) o) && o instanceof EView) {
                        list.add((EObject) o);
                    }
                }
                if (!list.isEmpty()) {
                    DeleteCommand dc = new DeleteCommand(ViewsEditor.this, list);
                    getCommandStack().execute(dc);
                }

                break;
            default:
                break;
            }
        }
    });

    viewTv.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            ISelection selection = event.getSelection();
            if (selection.isEmpty() || !(selection instanceof IStructuredSelection)) {
                return;
            }

            Object selected = ((IStructuredSelection) selection).getFirstElement();
            if (selected == null) {
                return;
            }
            if (selected instanceof ESettingRef) {
                selected = ((ESettingRef) selected).getTarget();
            }
            if (selected instanceof EResourceLocator) {
                // URI uri = ((EResourceLocator) selected).getResourceUri();
                // EConfMLResource res =
                // EditorUtils.getConfMLResource((EObject)selected);
                // EditorUtils.openEditor(uri, null);
            } else {
                return;
            }
        }
    });

}