Example usage for org.eclipse.jface.viewers TreeViewer getControl

List of usage examples for org.eclipse.jface.viewers TreeViewer getControl

Introduction

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

Prototype

@Override
    public Control getControl() 

Source Link

Usage

From source file:de.walware.statet.r.internal.ui.rhelp.RHelpSearchResultPage.java

License:Open Source License

@Override
protected void configureTreeViewer(final TreeViewer viewer) {
    super.configureTreeViewer(viewer);

    final TreeColumnLayout layout = new TreeColumnLayout();
    viewer.getControl().getParent().setLayout(layout);

    final TreeViewerColumn column1 = new TreeViewerColumn(viewer, SWT.LEFT);
    column1.getColumn().setText("Package / Page / Match");
    layout.setColumnData(column1.getColumn(), new ColumnWeightData(1));
    column1.setLabelProvider(new RHelpLabelProvider());

    ColumnViewerToolTipSupport.enableFor(viewer);
}

From source file:es.sidelab.pascaline.debug.ui.views.variables.FilteredVariablesView.java

License:Open Source License

/**
 * @param sashForm//w w  w .  j a va 2  s  . c  o m
 * @return
 */
private TreeViewer createTreeViewer(Composite parent) {
    Tree tree = new Tree(parent, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
    TreeViewer treeViewer = new TreeViewer(tree);
    tree.setHeaderVisible(true);
    tree.setLinesVisible(true);

    // set the column headers implement this
    createTreeColumns(tree);

    // set the content and label providers
    treeViewer.setContentProvider(getContentProvider());
    treeViewer.setLabelProvider(getLabelProvider());

    // using internal hash table speeds the lookup
    treeViewer.setUseHashlookup(true);

    // layout the table tree viewer
    GridData layoutData = new GridData();
    layoutData.grabExcessHorizontalSpace = true;
    layoutData.grabExcessVerticalSpace = true;
    layoutData.horizontalAlignment = GridData.FILL;
    layoutData.verticalAlignment = GridData.FILL;
    layoutData.horizontalSpan = 1;
    treeViewer.getControl().setLayoutData(layoutData);

    // have a way to get the column names
    treeViewer.setColumnProperties(getColumnNames());

    treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            ISelection selection = event.getSelection();
            if (selection instanceof IStructuredSelection) {
                Object o = ((IStructuredSelection) selection).getFirstElement();
            }
        }
    });

    DebugUITools.getDebugContextManager().getContextService(getSite().getWorkbenchWindow())
            .addDebugContextListener(this);

    return treeViewer;
}

From source file:eu.artist.migration.cloudselection.ui.views.GenericView.java

License:Open Source License

public void createPartControl(Composite parent) {
    GridLayout layout = new GridLayout();
    layout.numColumns = 1;//from  ww w  .j ava 2 s  .  c  o m
    layout.verticalSpacing = 2;
    layout.marginWidth = 0;
    layout.marginHeight = 2;
    parent.setLayout(layout);

    // layout the text field above the treeview
    GridData layoutData = new GridData();
    layoutData.grabExcessHorizontalSpace = true;
    layoutData.horizontalAlignment = GridData.FILL;

    // Create the tree viewer as a child of the composite parent
    TreeViewer treeViewer = new TreeViewer(parent);
    contentProv = new ViewContentProvider();
    treeViewer.setContentProvider(contentProv);
    treeViewer.setLabelProvider(new ViewLabelProvider());
    treeViewer.setUseHashlookup(true);

    // layout the tree viewer below the text field
    layoutData = new GridData();
    layoutData.grabExcessHorizontalSpace = true;
    layoutData.grabExcessVerticalSpace = true;
    layoutData.horizontalAlignment = GridData.FILL;
    layoutData.verticalAlignment = GridData.FILL;
    treeViewer.getControl().setLayoutData(layoutData);
    final Tree t = treeViewer.getTree();
    contentProv.setViewer(treeViewer);
    t.addMouseListener(new MouseListener() {

        @Override
        public void mouseDown(MouseEvent e) {
            for (TreeItem item : t.getSelection()) {
                /*if((e.x > item.getImageBounds(0).x) && (e.x < (item.getImageBounds(0).x + item.getImage().getBounds().width))) {
                   if((e.y > item.getImageBounds(0).y) && (e.y < (item.getImageBounds(0).y + item.getImage().getBounds().height))) {
                */ ModelElement clickedElement = (ModelElement) item.getData();
                if (clickedElement instanceof LeafElement) {
                    boolean checked = ((LeafElement) clickedElement).isChecked();
                    setChecked(clickedElement, !checked);
                }
                //   }
                //   }
            }

            contentProv.viewer.refresh();
        }

        @Override
        public void mouseUp(MouseEvent e) {
        }

        public void mouseDoubleClick(MouseEvent arg0) {
            // TODO Auto-generated method stub

        }

    });
    if (!Resources.isCoreLoaded()) {
        Resources.loadCoreResource();
    }
    contentProv.viewer.setInput(getInitalInput());
    contentProv.viewer.expandAll();
    contentProv.viewer.refresh();
    makeActions();
    contributeToActionBars();
}

From source file:eu.esdihumboldt.hale.ui.service.align.resolver.internal.ViewerEntityTray.java

License:Open Source License

@Override
protected Control createContents(Composite parent) {
    Composite page = new Composite(parent, SWT.NONE);

    GridLayoutFactory.fillDefaults().applyTo(page);

    // text / description
    Label label = new Label(page, SWT.WRAP);
    label.setText(//from www . java 2s.c o m
            "An entity that is referenced in a mapping cell cannot be resolved. This may be due to a changed schema, with for instance changed namespaces or property names. To update the cell please select a replacement entity to the left, a candidate may already be selected. Cancel to leave the cell entity unchanged.\n\nBelow is a (inaccurate) reconstruction of the original entity for reference:");
    GridDataFactory.swtDefaults().hint(300, SWT.DEFAULT).applyTo(label);

    // viewer for dummy entity
    TreeViewer viewer = new TreeViewer(page, SWT.BORDER);
    viewer.setContentProvider(new EntityContentProvider());
    viewer.setLabelProvider(new StyledDefinitionLabelProvider());
    viewer.setInput(Collections.singleton(entity));
    viewer.getControl().setEnabled(false);
    viewer.expandAll();
    GridDataFactory.fillDefaults().grab(true, true).applyTo(viewer.getControl());

    return page;
}

From source file:eu.hydrologis.stage.geopaparazzi.geopapbrowser.StageGeopaparazziView.java

License:Open Source License

private TreeViewer createTreeViewer(Composite modulesComposite) {

    // FIXME/*  w  w  w. jav a  2  s .c o  m*/
    // PatternFilter patternFilter = new PatternFilter();
    // final FilteredTree filter = new FilteredTree(modulesComposite,
    // SWT.SINGLE | SWT.BORDER, patternFilter, true);
    // final TreeViewer modulesViewer = filter.getViewer();
    final TreeViewer modulesViewer = new TreeViewer(modulesComposite);

    Control control = modulesViewer.getControl();
    GridData controlGD = new GridData(SWT.FILL, SWT.FILL, true, true);
    controlGD.horizontalSpan = 2;
    control.setLayoutData(controlGD);
    modulesViewer.setContentProvider(new ITreeContentProvider() {
        private static final long serialVersionUID = 1L;

        public Object[] getElements(Object inputElement) {
            return getChildren(inputElement);
        }

        public Object[] getChildren(Object parentElement) {
            if (parentElement instanceof List<?>) {
                List<?> list = (List<?>) parentElement;
                Object[] array = list.toArray();
                return array;
            }
            if (parentElement instanceof ProjectInfo) {
                ProjectInfo info = (ProjectInfo) parentElement;
                int imgSize = info.images != null ? info.images.length : 0;
                int logSize = info.logs != null ? info.logs.size() : 0;
                Object[] childs = new Object[imgSize + logSize];
                for (int i = 0; i < logSize; i++) {
                    childs[i] = info.logs.get(i);
                }
                for (int i = logSize; i < imgSize + logSize; i++) {
                    childs[i] = info.images[i - logSize];
                }
                return childs;
            }
            return new Object[0];
        }

        public Object getParent(Object element) {
            return null;
        }

        public boolean hasChildren(Object element) {
            return getChildren(element).length > 0;
        }

        public void dispose() {
        }

        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

    });

    modulesViewer.setLabelProvider(new LabelProvider() {
        private static final long serialVersionUID = 1L;

        public Image getImage(Object element) {
            if (element instanceof ProjectInfo) {
                return ImageCache.getInstance().getImage(display, ImageCache.DATABASE);
            } else if (element instanceof org.jgrasstools.gears.io.geopaparazzi.geopap4.Image) {
                return ImageCache.getInstance().getImage(display, ImageCache.DBIMAGE);
            } else if (element instanceof GpsLog) {
                return ImageCache.getInstance().getImage(display, ImageCache.LOG);
            }
            return null;
        }

        public String getText(Object element) {
            if (element instanceof ProjectInfo) {
                ProjectInfo projectInfo = (ProjectInfo) element;
                String fileName = projectInfo.fileName;
                fileName = fileName.replace('_', ' ').replaceFirst("\\.gpap", "");
                String name = "<big>" + fileName + "</big><br/>";
                return name;
            } else if (element instanceof org.jgrasstools.gears.io.geopaparazzi.geopap4.Image) {
                org.jgrasstools.gears.io.geopaparazzi.geopap4.Image image = (org.jgrasstools.gears.io.geopaparazzi.geopap4.Image) element;
                String imageName = image.getName();
                return imageName;
            } else if (element instanceof GpsLog) {
                GpsLog log = (GpsLog) element;
                String logName = log.text;
                return logName;
            }
            return ""; //$NON-NLS-1$
        }
    });

    modulesViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            if (!(event.getSelection() instanceof IStructuredSelection)) {
                return;
            }
            IStructuredSelection sel = (IStructuredSelection) event.getSelection();

            Object selectedItem = sel.getFirstElement();
            if (selectedItem == null) {
                // unselected, show empty panel
                setNoProjectLabel();
                return;
            }

            if (selectedItem instanceof ProjectInfo) {
                selectProjectInfo(selectedItem);
            } else if (selectedItem instanceof org.jgrasstools.gears.io.geopaparazzi.geopap4.Image) {
                selectImage(selectedItem);
            } else if (selectedItem instanceof GpsLog) {
                selectGpsLog(selectedItem);
            } else {
                setNoProjectLabel();
            }
        }

    });

    MenuManager manager = new MenuManager();
    modulesViewer.getControl().setMenu(manager.createContextMenu(modulesViewer.getControl()));
    manager.addMenuListener(new IMenuListener() {
        private static final long serialVersionUID = 1L;

        @Override
        public void menuAboutToShow(IMenuManager manager) {
            if (modulesViewer.getSelection() instanceof IStructuredSelection) {
                IStructuredSelection selection = (IStructuredSelection) modulesViewer.getSelection();
                final Object selectedItem = selection.getFirstElement();
                if (selectedItem == null || selection.isEmpty()) {
                    return;
                }

                if (selectedItem instanceof ProjectInfo) {
                    manager.add(makeProjectDownloadAction(modulesViewer, selectedItem));
                    manager.add(makeMetadataEditAction(selectedItem));
                }
            }
        }

    });
    manager.setRemoveAllWhenShown(true);
    return modulesViewer;
}

From source file:eu.hydrologis.stage.geopaparazzi.geopapbrowser.StageGeopaparazziView.java

License:Open Source License

private Action makeProjectDownloadAction(final TreeViewer modulesViewer, final Object selectedItem) {
    return new Action("Download", null) {
        private static final long serialVersionUID = 1L;

        @Override//from   w  ww.  j a  v a2s  .co m
        public void run() {
            ProjectInfo selectedProject = (ProjectInfo) selectedItem;
            File dbFile = selectedProject.databaseFile;
            if (dbFile != null && dbFile.exists() && !dbFile.isDirectory()) {
                try {
                    new DownloadUtils().sendDownload(modulesViewer.getControl().getShell(), dbFile);
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    };
}

From source file:eu.hydrologis.stage.modules.ui.StageModulesView.java

License:Open Source License

private TreeViewer createTreeViewer(Composite modulesComposite) {

    // FIXME//from  w w w  .ja  v  a 2 s. co  m
    // PatternFilter patternFilter = new PatternFilter();
    // final FilteredTree filter = new FilteredTree(modulesComposite,
    // SWT.SINGLE | SWT.BORDER, patternFilter, true);
    // final TreeViewer modulesViewer = filter.getViewer();
    final TreeViewer modulesViewer = new TreeViewer(modulesComposite);

    Control control = modulesViewer.getControl();
    GridData controlGD = new GridData(SWT.FILL, SWT.FILL, true, true);
    controlGD.horizontalSpan = 2;
    control.setLayoutData(controlGD);
    modulesViewer.setContentProvider(new ITreeContentProvider() {
        private static final long serialVersionUID = 1L;

        public Object[] getElements(Object inputElement) {
            return getChildren(inputElement);
        }

        public Object[] getChildren(Object parentElement) {
            if (parentElement instanceof List<?>) {
                List<?> list = (List<?>) parentElement;
                Object[] array = list.toArray();
                return array;
            }
            if (parentElement instanceof ViewerFolder) {
                ViewerFolder folder = (ViewerFolder) parentElement;
                List<ViewerFolder> subFolders = folder.getSubFolders();
                List<ViewerModule> modules = folder.getModules();
                List<Object> allObjs = new ArrayList<Object>();
                allObjs.addAll(subFolders);
                allObjs.addAll(modules);

                return allObjs.toArray();
            }
            return new Object[0];
        }

        public Object getParent(Object element) {
            if (element instanceof ViewerFolder) {
                ViewerFolder folder = (ViewerFolder) element;
                return folder.getParentFolder();
            }
            if (element instanceof ViewerModule) {
                ViewerModule module = (ViewerModule) element;
                return module.getParentFolder();
            }
            return null;
        }

        public boolean hasChildren(Object element) {
            return getChildren(element).length > 0;
        }

        public void dispose() {
        }

        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

    });

    modulesViewer.setLabelProvider(new LabelProvider() {
        private static final long serialVersionUID = 1L;

        public Image getImage(Object element) {
            if (element instanceof ViewerFolder) {
                return ImageCache.getInstance().getImage(display, ImageCache.CATEGORY);
            }
            if (element instanceof ViewerModule) {
                ModuleDescription md = ((ViewerModule) element).getModuleDescription();
                Status status = md.getStatus();
                if (status == Status.experimental) {
                    return ImageCache.getInstance().getImage(display, ImageCache.MODULEEXP);
                } else {
                    return ImageCache.getInstance().getImage(display, ImageCache.MODULE);
                }
            }
            return null;
        }

        public String getText(Object element) {
            if (element instanceof ViewerFolder) {
                ViewerFolder categoryFolder = (ViewerFolder) element;
                String name = categoryFolder.getName();
                name = name.replaceFirst("/", "");
                return name;
            }
            if (element instanceof ViewerModule) {
                ModuleDescription module = ((ViewerModule) element).getModuleDescription();
                return module.getName().replaceAll("\\_\\_", ".");
            }
            return ""; //$NON-NLS-1$
        }
    });

    modulesViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            if (!(event.getSelection() instanceof IStructuredSelection)) {
                return;
            }
            IStructuredSelection sel = (IStructuredSelection) event.getSelection();

            Object selectedItem = sel.getFirstElement();
            if (selectedItem == null) {
                // unselected, show empty panel
                putUnselected();
                return;
            }

            if (selectedItem instanceof ViewerModule) {
                ModuleDescription currentSelectedModule = ((ViewerModule) selectedItem).getModuleDescription();
                currentSelectedModuleGui = new ModuleGui(currentSelectedModule);

                Control control = currentSelectedModuleGui.makeGui(modulesGuiComposite, false);

                // Label dummyLabel = new Label(modulesGuiComposite,
                // SWT.NONE);
                // dummyLabel.setLayoutData(new
                // GridData(SWT.BEGINNING, SWT.CENTER, false,
                // false));
                // dummyLabel.setText(currentSelectedModule.toString());

                modulesGuiStackLayout.topControl = control;
                modulesGuiComposite.layout(true);
            } else {
                currentSelectedModuleGui = null;
                putUnselected();
            }
        }

    });

    return modulesViewer;
}

From source file:eu.numberfour.n4js.ui.preferences.ExternalLibraryPreferencePage.java

License:Open Source License

private static void updateInput(final TreeViewer viewer, final Object input) {
    UIUtils.getDisplay().asyncExec(() -> {
        final Object[] expandedElements = viewer.getExpandedElements();
        final TreePath[] expandedTreePaths = viewer.getExpandedTreePaths();
        viewer.setInput(input);//  w w w.  j a  v  a2  s  . c o m
        viewer.getControl().notifyListeners(Selection, null);
        if (!Arrays2.isEmpty(expandedElements)) {
            viewer.setExpandedElements(expandedElements);
        }
        if (!Arrays2.isEmpty(expandedTreePaths)) {
            viewer.setExpandedTreePaths(expandedTreePaths);
        }
    });
}

From source file:eu.udig.omsbox.view.OmsBoxView.java

License:Open Source License

private TreeViewer createTreeViewer(Composite modulesComposite) {

    PatternFilter patternFilter = new PatternFilter();
    final FilteredTree filter = new FilteredTree(modulesComposite, SWT.SINGLE | SWT.BORDER, patternFilter,
            true);/*from  w  w  w.j ava 2  s .com*/
    final TreeViewer modulesViewer = filter.getViewer();

    Control control = modulesViewer.getControl();
    GridData controlGD = new GridData(SWT.FILL, SWT.FILL, true, true);
    control.setLayoutData(controlGD);
    modulesViewer.setContentProvider(new ITreeContentProvider() {
        public Object[] getElements(Object inputElement) {
            return getChildren(inputElement);
        }

        public Object[] getChildren(Object parentElement) {
            if (parentElement instanceof List<?>) {
                List<?> list = (List<?>) parentElement;
                Object[] array = list.toArray();
                return array;
            }
            if (parentElement instanceof ViewerFolder) {
                ViewerFolder folder = (ViewerFolder) parentElement;
                List<ViewerFolder> subFolders = folder.getSubFolders();
                List<ViewerModule> modules = folder.getModules();
                List<Object> allObjs = new ArrayList<Object>();
                allObjs.addAll(subFolders);
                allObjs.addAll(modules);

                return allObjs.toArray();
            }
            return new Object[0];
        }

        public Object getParent(Object element) {
            if (element instanceof ViewerFolder) {
                ViewerFolder folder = (ViewerFolder) element;
                return folder.getParentFolder();
            }
            if (element instanceof ViewerModule) {
                ViewerModule module = (ViewerModule) element;
                return module.getParentFolder();
            }
            return null;
        }

        public boolean hasChildren(Object element) {
            return getChildren(element).length > 0;
        }

        public void dispose() {
        }

        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

    });

    modulesViewer.setLabelProvider(new LabelProvider() {
        public Image getImage(Object element) {
            if (element instanceof ViewerFolder) {
                return ImageCache.getInstance().getImage(ImageCache.CATEGORY);
            }
            if (element instanceof ViewerModule) {
                ModuleDescription md = ((ViewerModule) element).getModuleDescription();
                Status status = md.getStatus();
                if (status == Status.experimental) {
                    return ImageCache.getInstance().getImage(ImageCache.MODULEEXP);
                } else {
                    return ImageCache.getInstance().getImage(ImageCache.MODULE);
                }
            }
            return null;
        }

        public String getText(Object element) {
            if (element instanceof ViewerFolder) {
                ViewerFolder categoryFolder = (ViewerFolder) element;
                return categoryFolder.getName();
            }
            if (element instanceof ViewerModule) {
                ModuleDescription module = ((ViewerModule) element).getModuleDescription();
                return module.getName().replaceAll("\\_\\_", ".");
            }
            return ""; //$NON-NLS-1$
        }
    });

    modulesViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            if (!(event.getSelection() instanceof IStructuredSelection)) {
                return;
            }
            IStructuredSelection sel = (IStructuredSelection) event.getSelection();

            Object selectedItem = sel.getFirstElement();
            if (selectedItem == null) {
                // unselected, show empty panel
                putUnselected();
                return;
            }

            if (selectedItem instanceof ViewerModule) {
                ModuleDescription currentSelectedModule = ((ViewerModule) selectedItem).getModuleDescription();
                currentSelectedModuleGui = new ModuleGui(currentSelectedModule);

                Control control = currentSelectedModuleGui.makeGui(modulesGuiComposite, false);

                // Label dummyLabel = new Label(modulesGuiComposite, SWT.NONE);
                // dummyLabel.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false,
                // false));
                // dummyLabel.setText(currentSelectedModule.toString());

                modulesGuiStackLayout.topControl = control;
                modulesGuiComposite.layout(true);
            } else {
                putUnselected();
            }
        }

    });

    return modulesViewer;
}

From source file:eu.udig.style.advanced.lines.LinePropertiesEditor.java

License:Open Source License

private TreeViewer createGroupRulesTableViewer(Composite rulesGroup) {
    final TreeViewer rulesViewer = new TreeViewer(rulesGroup, SWT.SINGLE | SWT.BORDER);
    Control treeControl = rulesViewer.getControl();
    // table.setSize(PREVIEWWIDTH, -1);
    GridData treeGD = new GridData(SWT.FILL, SWT.TOP, true, false);
    treeGD.horizontalSpan = 6;//from www. ja va  2  s .co  m
    treeGD.heightHint = 100;
    // tableGD.minimumWidth = PREVIEWWIDTH;
    treeControl.setLayoutData(treeGD);
    rulesViewer.setContentProvider(new GroupRulesTreeContentProvider());

    rulesViewer.setLabelProvider(new GroupRulesTreeLabelProvider(SLD.LINE));

    rulesViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        private LinePropertiesComposite linePropertieComposite;

        public void selectionChanged(SelectionChangedEvent event) {
            ISelection selection = event.getSelection();
            if (!(selection instanceof IStructuredSelection)) {
                return;
            }
            IStructuredSelection sel = (IStructuredSelection) selection;

            if (sel.isEmpty()) {
                showEmptyLabel();
                return;
            }

            Object selectedItem = sel.getFirstElement();
            if (selectedItem == null) {
                // unselected, show empty panel
                return;
            }

            if (selectedItem instanceof FeatureTypeStyleWrapper) {
                showEmptyLabel();
            }

            if (selectedItem instanceof RuleWrapper) {
                RuleWrapper currentSelectedRule = (RuleWrapper) selectedItem;
                if (propertiesComposite != null) {
                    if (linePropertieComposite == null) {
                        linePropertieComposite = new LinePropertiesComposite(LinePropertiesEditor.this,
                                propertiesComposite);
                    }
                    linePropertieComposite.setRule(currentSelectedRule);
                    propertiesStackLayout.topControl = linePropertieComposite.getComposite();
                    propertiesComposite.layout();
                }

            }
        }

        private void showEmptyLabel() {
            Label emptyLabel = new Label(propertiesComposite, SWT.NONE);
            emptyLabel.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, true));
            emptyLabel.setText(Messages.LinePropertiesEditor_3);
            propertiesStackLayout.topControl = emptyLabel;
            propertiesComposite.layout();
        }

    });
    return rulesViewer;
}