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

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

Introduction

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

Prototype

public TreeViewerColumn(TreeViewer viewer, TreeColumn column) 

Source Link

Document

Creates a new viewer column for the given TreeViewer on the given TreeColumn .

Usage

From source file:org.eclipse.mylyn.reviews.r4e.ui.internal.navigator.ReviewNavigatorTreeViewer.java

License:Open Source License

/**
 * Method createNumChangesColumn./*  w w w.j ava  2s.  c o  m*/
 */
private void createNumChangesColumn() {
    if (null == fNumChangesColumn) {
        fNumChangesColumn = new TreeViewerColumn(this, SWT.NONE);
        fNumChangesColumn.getColumn().setText(R4EUIConstants.CHANGES_LABEL);
        fTreeColumnLayout.setColumnData(fNumChangesColumn.getColumn(), new ColumnWeightData(0, true));
        fNumChangesColumn.getColumn().setMoveable(true);
        fNumChangesColumn.getColumn().setResizable(true);
        fNumChangesColumn.setLabelProvider(new ColumnLabelProvider() {
            @Override
            public String getText(Object element) {
                if (element instanceof R4EUIReviewItem) {
                    return UIUtils.formatNumChanges(((R4EUIReviewItem) element).getNumChanges(),
                            ((R4EUIReviewItem) element).getNumReviewedChanges());
                } else if (element instanceof R4EUIFileContext) {
                    return UIUtils.formatNumChanges(((R4EUIFileContext) element).getNumChanges(),
                            ((R4EUIFileContext) element).getNumReviewedChanges());
                }
                return null;
            }

            @Override
            public String getToolTipText(Object element) {
                if (element instanceof R4EUIReviewItem) {
                    return NUM_CHANGES_ITEM_COLUMN_TOOLTIP;
                } else { //Assume File
                    return NUM_CHANGES_FILE_COLUMN_TOOLTIP;
                }
            }

            @Override
            public Point getToolTipShift(Object object) {
                return new Point(R4EUIConstants.TOOLTIP_DISPLAY_OFFSET_X,
                        R4EUIConstants.TOOLTIP_DISPLAY_OFFSET_Y);
            }

            @Override
            public int getToolTipDisplayDelayTime(Object object) {
                return R4EUIConstants.TOOLTIP_DISPLAY_DELAY;
            }

            @Override
            public int getToolTipTimeDisplayed(Object object) {
                return R4EUIConstants.TOOLTIP_DISPLAY_TIME;
            }

            @Override
            public void update(ViewerCell cell) {
                final Object element = cell.getElement();
                if (element instanceof R4EUIReviewItem) {
                    cell.setText(UIUtils.formatNumChanges(((R4EUIReviewItem) element).getNumChanges(),
                            ((R4EUIReviewItem) element).getNumReviewedChanges()));
                } else if (element instanceof R4EUIFileContext) {
                    cell.setText(UIUtils.formatNumChanges(((R4EUIFileContext) element).getNumChanges(),
                            ((R4EUIFileContext) element).getNumReviewedChanges()));
                } else {
                    cell.setText(null);
                }
            }
        });

        fNumChangesColumn.getColumn().addListener(SWT.Selection, new Listener() {
            public void handleEvent(Event event) {
                fTreeTableComparator.setColumnName(R4EUIConstants.CHANGES_LABEL);
                getTree().setSortDirection(fTreeTableComparator.getDirection());
                getTree().setSortColumn(fNumChangesColumn.getColumn());
                refresh();
            }
        });
    }
}

From source file:org.eclipse.mylyn.reviews.r4e.ui.internal.navigator.ReviewNavigatorTreeViewer.java

License:Open Source License

/**
 * Method createNumAnomaliesColumn.//from   w w  w . j  av a2  s .  com
 */
private void createNumAnomaliesColumn() {
    if (null == fNumAnomaliesColumn) {
        fNumAnomaliesColumn = new TreeViewerColumn(this, SWT.NONE);
        fNumAnomaliesColumn.getColumn().setText(R4EUIConstants.ANOMALIES_LABEL);
        fNumAnomaliesColumn.getColumn().setMoveable(true);
        fNumAnomaliesColumn.getColumn().setResizable(true);
        fTreeColumnLayout.setColumnData(fNumAnomaliesColumn.getColumn(), new ColumnWeightData(0, true));
        fNumAnomaliesColumn.setLabelProvider(new ColumnLabelProvider() {
            @Override
            public String getText(Object element) {
                if (element instanceof R4EUIReviewItem) {
                    return Integer.toString(((R4EUIReviewItem) element).getNumAnomalies());
                } else if (element instanceof R4EUIFileContext) {
                    return Integer.toString(((R4EUIFileContext) element).getNumAnomalies());
                }
                return null;
            }

            @Override
            public String getToolTipText(Object element) {
                return NUM_ANOMALIES_COLUMN_TOOLTIP;
            }

            @Override
            public Point getToolTipShift(Object object) {
                return new Point(R4EUIConstants.TOOLTIP_DISPLAY_OFFSET_X,
                        R4EUIConstants.TOOLTIP_DISPLAY_OFFSET_Y);
            }

            @Override
            public int getToolTipDisplayDelayTime(Object object) {
                return R4EUIConstants.TOOLTIP_DISPLAY_DELAY;
            }

            @Override
            public int getToolTipTimeDisplayed(Object object) {
                return R4EUIConstants.TOOLTIP_DISPLAY_TIME;
            }

            @Override
            public void update(ViewerCell cell) {
                final Object element = cell.getElement();
                if (element instanceof R4EUIReviewItem) {
                    cell.setText(Integer.toString(((R4EUIReviewItem) element).getNumAnomalies()));
                } else if (element instanceof R4EUIFileContext) {
                    cell.setText(Integer.toString(((R4EUIFileContext) element).getNumAnomalies()));
                } else {
                    cell.setText(null);
                }
            }
        });

        fNumAnomaliesColumn.getColumn().addListener(SWT.Selection, new Listener() {
            public void handleEvent(Event event) {
                // ignore
                fTreeTableComparator.setColumnName(R4EUIConstants.ANOMALIES_LABEL);
                getTree().setSortDirection(fTreeTableComparator.getDirection());
                getTree().setSortColumn(fNumAnomaliesColumn.getColumn());
                refresh();
            }
        });
    }
}

From source file:org.eclipse.mylyn.reviews.tasks.ui.internal.editors.TreeHelper.java

License:Open Source License

public static TreeViewerColumn createColumn(TreeViewer tree, IColumnSpec<?> columnSpec) {
    TreeViewerColumn column = new TreeViewerColumn(tree, SWT.LEFT);
    column.getColumn().setText(columnSpec.getTitle());
    column.getColumn().setWidth(100);/*from  w ww. j av  a 2 s.c om*/
    column.getColumn().setResizable(true);
    return column;
}

From source file:org.eclipse.nebula.widgets.pagination.snippets.tree.ModelSortPageableTreeExample.java

License:Open Source License

private static TreeViewerColumn createTreeViewerColumn(TreeViewer viewer, String title, int bound) {
    final TreeViewerColumn viewerColumn = new TreeViewerColumn(viewer, SWT.NONE);
    final TreeColumn column = viewerColumn.getColumn();
    column.setText(title);//from  www .  j  a v  a  2s. com
    column.setWidth(bound);
    column.setResizable(true);
    column.setMoveable(true);
    return viewerColumn;
}

From source file:org.eclipse.oomph.projectconfig.presentation.sync.ProjectConfigSynchronizerDialog.java

License:Open Source License

protected void createUI(Composite container) {
    if (managedPropertiesInput != null) {
        Label label = new Label(container, SWT.NONE);
        label.setText("Modified Managed Properties:");
        label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));

        {//  w ww  . ja  v a2s  .c  om
            Composite composite = new Composite(container, SWT.NONE);
            composite.setLayout(new GridLayout(2, false));
            composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
            Button overWriteButton = new Button(composite, SWT.RADIO);
            overWriteButton.setText("Overwrite with managing property");
            if (!propagate) {
                overWriteButton.setSelection(true);
            }
            overWriteButton.addSelectionListener(new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    propagate = false;
                    ProjectConfigSynchronizerPreferences.setPropagate(false);
                    ProjectConfigSynchronizerPreferences.flush();
                }
            });

            Button propogateButton = new Button(composite, SWT.RADIO);
            propogateButton.setText("Propagate to managing property");
            if (propagate) {
                propogateButton.setSelection(true);
            }
            propogateButton.addSelectionListener(new SelectionAdapter() {
                @Override
                public void widgetSelected(SelectionEvent e) {
                    propagate = true;
                    ProjectConfigSynchronizerPreferences.setPropagate(true);
                    ProjectConfigSynchronizerPreferences.flush();
                }
            });
        }

        managedPropertiesViewer = new TreeViewer(container, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL);

        ComposedAdapterFactory adapterFactory = new ComposedAdapterFactory(
                ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
        AdapterFactoryLabelProvider labelProvider = new AdapterFactoryLabelProvider(adapterFactory);
        managedPropertiesViewer.setLabelProvider(labelProvider);
        managedPropertiesViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));

        final Tree tree = managedPropertiesViewer.getTree();
        tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
        tree.setLinesVisible(true);
        tree.setHeaderVisible(true);

        managedPropertiesViewer
                .setColumnProperties(new String[] { "property", "newValue", "profile", "profileValue" });

        final TreeViewerColumn propertyViewerColumn = new TreeViewerColumn(managedPropertiesViewer, SWT.NONE);
        final TreeColumn propertyColumn = propertyViewerColumn.getColumn();
        propertyViewerColumn
                .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()));
        propertyColumn.setText("Property");
        propertyColumn.setResizable(true);

        final TreeViewerColumn newValueViewerColumn = new TreeViewerColumn(managedPropertiesViewer, SWT.NONE);
        newValueViewerColumn
                .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()) {
                    @Override
                    public String getText(Object element) {
                        if (element instanceof PropertyItem) {
                            PropertyItem propertyItem = (PropertyItem) element;
                            return PreferencesFactory.eINSTANCE
                                    .convertEscapedString(propertyItem.getProperty().getValue());
                        }

                        return "";
                    }

                    @Override
                    public Image getImage(Object element) {
                        return null;
                    }
                });

        final TreeColumn newValueColumn = newValueViewerColumn.getColumn();
        newValueColumn.setText("New Value");
        newValueColumn.setResizable(true);

        final TreeViewerColumn profileViewerColumn = new TreeViewerColumn(managedPropertiesViewer, SWT.NONE);
        profileViewerColumn
                .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()) {
                    @Override
                    public String getText(Object element) {
                        if (element instanceof PropertyItem) {
                            PropertyItem propertyItem = (PropertyItem) element;
                            Property managingProperty = propertyItem.getOtherProperty();
                            PreferenceFilter managingFilter = getManagingFilter(managingProperty);
                            if (managingFilter != null) {
                                PreferenceProfile preferenceProfile = managingFilter.getPreferenceProfile();
                                Project project = preferenceProfile.getProject();
                                return project.getPreferenceNode().getName() + "/"
                                        + preferenceProfile.getName();
                            }
                        }

                        return "";
                    }

                    private PreferenceFilter getManagingFilter(Property managingProperty) {
                        String name = managingProperty.getName();
                        PreferenceNode preferenceNode = managingProperty.getParent();
                        WorkspaceConfiguration workspaceConfiguration = (WorkspaceConfiguration) managingProperty
                                .eResource().getContents().get(0);
                        String projectName = managingProperty.getScope().getName();
                        Project project = workspaceConfiguration.getProject(projectName);
                        for (PreferenceProfile preferenceProfile : project.getPreferenceProfiles()) {
                            for (PreferenceFilter preferenceFilter : preferenceProfile.getPreferenceFilters()) {
                                if (preferenceFilter.getPreferenceNode() == preferenceNode
                                        && preferenceFilter.matches(name)) {
                                    return preferenceFilter;
                                }
                            }
                        }

                        return null;
                    }

                    @Override
                    public Image getImage(Object element) {
                        if (element instanceof PropertyItem) {
                            PropertyItem propertyItem = (PropertyItem) element;
                            PreferenceFilter managingFilter = getManagingFilter(
                                    propertyItem.getOtherProperty());
                            if (managingFilter != null) {
                                return labelProvider.getImage(managingFilter.getPreferenceProfile());
                            }
                        }

                        return null;
                    }
                });

        final TreeColumn profileColumn = profileViewerColumn.getColumn();
        profileColumn.setText("Profile");
        profileColumn.setResizable(true);

        final TreeViewerColumn profileValueViewerColumn = new TreeViewerColumn(managedPropertiesViewer,
                SWT.NONE);
        profileValueViewerColumn
                .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()) {
                    @Override
                    public String getText(Object element) {
                        if (element instanceof PropertyItem) {
                            PropertyItem propertyItem = (PropertyItem) element;
                            return PreferencesFactory.eINSTANCE
                                    .convertEscapedString(propertyItem.getOtherProperty().getValue());
                        }

                        return "";
                    }

                    @Override
                    public Image getImage(Object element) {
                        return null;
                    }
                });

        final TreeColumn profileValueColumn = profileValueViewerColumn.getColumn();
        profileValueColumn.setText("Profile Value");
        profileValueColumn.setResizable(true);

        final ControlAdapter columnResizer = new ControlAdapter() {
            @Override
            public void controlResized(ControlEvent e) {
                int width = tree.getSize().x;
                ScrollBar bar = tree.getVerticalBar();
                if (bar != null && bar.isVisible()) {
                    width -= bar.getSize().x;
                }

                int columnWidth = width * 4 / 9;
                propertyColumn.setWidth(columnWidth);

                int remainingWidth = width - columnWidth;
                columnWidth = remainingWidth * 4 / 9;
                profileColumn.setWidth(columnWidth);

                remainingWidth -= columnWidth;
                newValueColumn.setWidth(remainingWidth / 2);
                profileValueColumn.setWidth(remainingWidth - remainingWidth / 2);

                tree.removeControlListener(this);
            }
        };

        tree.addControlListener(columnResizer);

        managedPropertiesViewer.setInput(managedPropertiesInput);
        managedPropertiesViewer.expandAll();

        Label separator = new Label(container, SWT.HORIZONTAL | SWT.SEPARATOR);
        separator.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
    }

    if (unmanagedPropertiesInput != null) {

        Label label = new Label(container, SWT.NONE);
        label.setText("Unmanaged Properties:");
        label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));

        Button editButton = new Button(container, SWT.CHECK);
        editButton.setText("Edit");
        editButton.setSelection(edit);
        editButton.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                edit = !edit;
                ProjectConfigSynchronizerPreferences.setEdit(edit);
                ProjectConfigSynchronizerPreferences.flush();
            }
        });
        editButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));

        unmanagedPropertiesViewer = new TreeViewer(container, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL);

        ComposedAdapterFactory adapterFactory = new ComposedAdapterFactory(
                ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
        AdapterFactoryLabelProvider labelProvider = new AdapterFactoryLabelProvider(adapterFactory);
        unmanagedPropertiesViewer.setLabelProvider(labelProvider);
        unmanagedPropertiesViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));

        final Tree tree = unmanagedPropertiesViewer.getTree();
        tree.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
        tree.setLinesVisible(true);
        tree.setHeaderVisible(true);

        unmanagedPropertiesViewer.setColumnProperties(new String[] { "property", "newValue", "oldValue" });

        final TreeViewerColumn propertyViewerColumn = new TreeViewerColumn(unmanagedPropertiesViewer, SWT.NONE);
        final TreeColumn propertyColumn = propertyViewerColumn.getColumn();
        propertyViewerColumn
                .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()));
        propertyColumn.setText("Property");
        propertyColumn.setResizable(true);

        final TreeViewerColumn newValueViewerColumn = new TreeViewerColumn(unmanagedPropertiesViewer, SWT.NONE);
        newValueViewerColumn
                .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()) {
                    @Override
                    public String getText(Object element) {
                        if (element instanceof PropertyItem) {
                            PropertyItem propertyItem = (PropertyItem) element;
                            return PreferencesFactory.eINSTANCE
                                    .convertEscapedString(propertyItem.getProperty().getValue());
                        }

                        return "";
                    }

                    @Override
                    public Image getImage(Object element) {
                        return null;
                    }
                });

        final TreeColumn newValueColumn = newValueViewerColumn.getColumn();
        newValueColumn.setText("New Value");
        newValueColumn.setResizable(true);

        final TreeViewerColumn oldValueValuerColumn = new TreeViewerColumn(unmanagedPropertiesViewer, SWT.NONE);
        oldValueValuerColumn
                .setLabelProvider(new DecoratingColumLabelProvider(labelProvider, new DialogLabelDecorator()) {
                    @Override
                    public String getText(Object element) {
                        if (element instanceof PropertyItem) {
                            PropertyItem propertyItem = (PropertyItem) element;
                            Property otherProperty = propertyItem.getOtherProperty();
                            if (otherProperty != null) {
                                return PreferencesFactory.eINSTANCE
                                        .convertEscapedString(otherProperty.getValue());
                            }
                        }

                        return "";
                    }

                    @Override
                    public Image getImage(Object element) {
                        return null;
                    }
                });

        final TreeColumn oldValueColumn = oldValueValuerColumn.getColumn();
        oldValueColumn.setText("Old Value");
        oldValueColumn.setResizable(true);

        final ControlAdapter columnResizer = new ControlAdapter() {
            @Override
            public void controlResized(ControlEvent e) {
                int width = tree.getSize().x;
                ScrollBar bar = tree.getVerticalBar();
                if (bar != null && bar.isVisible()) {
                    width -= bar.getSize().x;
                }

                int columnWidth = width / 2;
                propertyColumn.setWidth(columnWidth);

                int remainingWidth = width - columnWidth;
                columnWidth = remainingWidth * 2;
                newValueColumn.setWidth(remainingWidth / 2);
                oldValueColumn.setWidth(remainingWidth - remainingWidth / 2);

                tree.removeControlListener(this);
            }
        };

        tree.addControlListener(columnResizer);

        unmanagedPropertiesViewer.setInput(unmanagedPropertiesInput);
        unmanagedPropertiesViewer.expandAll();

        Label separator = new Label(container, SWT.HORIZONTAL | SWT.SEPARATOR);
        separator.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 1, 1));
    }
}

From source file:org.eclipse.paho.mqtt.ui.support.tree.TreeViewerColumnBuilder.java

License:Open Source License

/**
 * Builds the column and returns the TreeViewerColumn
 *///from w w  w. j a v a2  s  .c  om
@SuppressWarnings({ "unchecked", "rawtypes" })
public TreeViewerColumn build() {
    // create column
    TreeViewerColumn viewerColumn = new TreeViewerColumn(builder.getViewer(), style);
    TreeColumn column = viewerColumn.getColumn();
    if (headerText != null) {
        column.setText(headerText);
    }
    column.setMoveable(moveable);
    column.setResizable(resizable);

    // set label provider
    if (cellLabelProvider != null) {
        viewerColumn.setLabelProvider(cellLabelProvider);
    } else {
        if (propertyName == null) {
            viewerColumn.setLabelProvider(new ColumnLabelProvider());
        } else {
            PropertyDescriptor descriptor = builder.getPropertyDescriptor(propertyName);
            viewerColumn.setLabelProvider(new PropertyCellLabelProvider(descriptor, valueFormatter));
        }
    }

    // set editing support
    if (editingSupport != null) {
        viewerColumn.setEditingSupport(editingSupport);
    }

    return viewerColumn;
}

From source file:org.eclipse.papyrus.diagram.common.dialogs.AbstractCheckedTreeColumnViewerSelectionDialog.java

License:Open Source License

/**
 * /*from w ww. j ava2  s.  c  om*/
 * @see org.eclipse.papyrus.diagram.common.dialogs.CustomCheckedTreeSelectionDialog#createDialogArea(org.eclipse.swt.widgets.Composite)
 * 
 * @param parent
 * @return
 */
@Override
protected Control createDialogArea(Composite parent) {
    Control ctrl = super.createDialogArea(parent);
    for (int i = 0; i < nbColumns; i++) {
        TreeViewerColumn column = new TreeViewerColumn(getTreeViewer(), SWT.NONE);
        column.getColumn().setText(columnTitles[i]);
        column.getColumn().setWidth(columnWidths[i]);
        column.setLabelProvider(columnCellLabelProvider[i]);
        EditingSupport support = getEditingSupport(i);
        if (support != null) {
            column.setEditingSupport(support);
        }
    }

    getTreeViewer().getTree().setLinesVisible(true);
    getTreeViewer().getTree().setHeaderVisible(true);
    getTreeViewer().getTree().addMouseListener(new MouseListener() {

        /**
         * 
         * @see org.eclipse.swt.events.MouseListener#mouseUp(org.eclipse.swt.events.MouseEvent)
         * 
         * @param e
         */
        public void mouseUp(MouseEvent e) {
            //nothing to do
        }

        /**
         * 
         * @see org.eclipse.swt.events.MouseListener#mouseDown(org.eclipse.swt.events.MouseEvent)
         * 
         * @param e
         */
        public void mouseDown(MouseEvent e) {
            //nothing to do

        }

        /**
         * 
         * @see org.eclipse.swt.events.MouseListener#mouseDoubleClick(org.eclipse.swt.events.MouseEvent)
         * 
         * @param e
         */
        public void mouseDoubleClick(MouseEvent e) {
            //we expand the selected element
            Tree source = (Tree) e.getSource();
            TreeItem[] item = source.getSelection();
            List<?> expandedElements = Arrays.asList(getTreeViewer().getExpandedElements());
            if (getTreeViewer().isExpandable(item[0].getData())) {
                boolean isExpanded = expandedElements.contains(item[0].getData());
                item[0].setExpanded(!isExpanded);
            }
        }
    });
    return ctrl;
}

From source file:org.eclipse.papyrus.diagram.common.service.palette.StereotypePostAction.java

License:Open Source License

/**
 * Create the necessary columns to have CellEditor in the tree
 * //ww  w .  jav a2s  . com
 * @param viewer
 *        the viewer owning the columns
 */
protected void createColumn(TreeViewer viewer) {
    stereotypeColumn = new TreeViewerColumn(viewer, SWT.FILL);
    stereotypeColumn.getColumn().setResizable(true);
    stereotypeColumn.getColumn().setWidth(300);
    stereotypeColumn.setLabelProvider(editorLabelProvider);
    stereotypeColumn.setEditingSupport(new AttributeEditingSupport(viewer));

    runtimeColumn = new TreeViewerColumn(viewer, SWT.CENTER);
    runtimeColumn.getColumn().setText("Runtime"); //$NON-NLS-1$
    runtimeColumn.getColumn().setResizable(true);
    runtimeColumn.getColumn().setWidth(80);
    runtimeColumn.setLabelProvider(new RuntimeLabelProvider());
    runtimeColumn.setEditingSupport(new RuntimeEditingSupport(viewer));

    viewer.getTree().setLinesVisible(true);
    viewer.getTree().setHeaderVisible(true);
}

From source file:org.eclipse.papyrus.uml.diagram.common.dialogs.AbstractCheckedTreeColumnViewerSelectionDialog.java

License:Open Source License

/**
 * /*from   ww w  .j a va2  s  . c  om*/
 * @see org.eclipse.papyrus.uml.diagram.common.dialogs.CustomCheckedTreeSelectionDialog#createDialogArea(org.eclipse.swt.widgets.Composite)
 * 
 * @param parent
 * @return
 */
@Override
protected Control createDialogArea(Composite parent) {
    Control ctrl = super.createDialogArea(parent);
    for (int i = 0; i < nbColumns; i++) {
        TreeViewerColumn column = new TreeViewerColumn(getTreeViewer(), SWT.NONE);
        column.getColumn().setText(columnTitles[i]);
        column.getColumn().setWidth(columnWidths[i]);
        column.setLabelProvider(columnCellLabelProvider[i]);
        EditingSupport support = getEditingSupport(i);
        if (support != null) {
            column.setEditingSupport(support);
        }
    }

    getTreeViewer().getTree().setLinesVisible(true);
    getTreeViewer().getTree().setHeaderVisible(true);
    getTreeViewer().getTree().addMouseListener(new MouseListener() {

        /**
         * 
         * @see org.eclipse.swt.events.MouseListener#mouseUp(org.eclipse.swt.events.MouseEvent)
         * 
         * @param e
         */
        public void mouseUp(MouseEvent e) {
            // nothing to do
        }

        /**
         * 
         * @see org.eclipse.swt.events.MouseListener#mouseDown(org.eclipse.swt.events.MouseEvent)
         * 
         * @param e
         */
        public void mouseDown(MouseEvent e) {
            // nothing to do

        }

        /**
         * 
         * @see org.eclipse.swt.events.MouseListener#mouseDoubleClick(org.eclipse.swt.events.MouseEvent)
         * 
         * @param e
         */
        public void mouseDoubleClick(MouseEvent e) {
            // we expand the selected element
            Tree source = (Tree) e.getSource();
            TreeItem[] item = source.getSelection();
            List<?> expandedElements = Arrays.asList(getTreeViewer().getExpandedElements());
            if (getTreeViewer().isExpandable(item[0].getData())) {
                boolean isExpanded = expandedElements.contains(item[0].getData());
                item[0].setExpanded(!isExpanded);
            }
        }
    });
    return ctrl;
}

From source file:org.eclipse.ptp.internal.rm.jaxb.control.ui.utils.ControlWidgetBuilderUtils.java

License:Open Source License

/**
 * Configure parts of viewer specific to Tree type.
 * // www . java  2 s . c o m
 * @param viewer
 * @param columnData
 *            JAXB data element describing viewer columns
 * @param sortOnName
 * @param headerVisible
 * @param linesVisible
 */
private static void setupSpecific(final CheckboxTreeViewer viewer, List<ColumnDataType> columnData,
        Boolean sortOnName, boolean headerVisible, boolean linesVisible) {
    for (int i = 0; i < columnData.size(); i++) {
        ColumnDataType columnDescriptor = columnData.get(i);
        TreeViewerColumn viewerColumn = new TreeViewerColumn(viewer, SWT.NONE);
        TreeColumn column = viewerColumn.getColumn();
        String name = columnDescriptor.getName();
        column.setText(name);
        column.setMoveable(columnDescriptor.isMoveable());
        column.setResizable(columnDescriptor.isResizable());
        String tt = columnDescriptor.getTooltip();
        if (tt != null) {
            column.setToolTipText(tt);
        }
        if (JAXBControlUIConstants.UNDEFINED != columnDescriptor.getWidth()) {
            column.setWidth(columnDescriptor.getWidth());
        }
        if (null != columnDescriptor.getAlignment()) {
            column.setAlignment(WidgetBuilderUtils.getStyle(columnDescriptor.getAlignment()));
        }
        if (JAXBControlUIConstants.COLUMN_NAME.equals(name)) {
            if (sortOnName != null) {
                if (sortOnName) {
                    viewer.setSorter(new AttributeViewerSorter());
                    column.addSelectionListener(getAttributeViewerSelectionAdapter(viewer));
                }
            }
        }
        if (JAXBControlUIConstants.COLUMN_VALUE.equals(columnDescriptor.getName())) {
            viewerColumn.setEditingSupport(new AttributeViewerEditingSupport(viewer));
        }
    }
    viewer.setContentProvider(new TreeDataContentProvider());
    viewer.getTree().setHeaderVisible(headerVisible);
    viewer.getTree().setLinesVisible(linesVisible);
}