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.e4.tools.preference.spy.parts.PreferenceSpyPart.java

License:Open Source License

private void createColumn(Fields field, String columnName, int width) {
    TreeViewerColumn viewerColumn = new TreeViewerColumn(filteredTree.getViewer(), SWT.NONE);
    viewerColumn.getColumn().setWidth(width);
    viewerColumn.getColumn().setText(columnName);

    viewerColumn.setLabelProvider(new ColumnLabelProvider());
    viewerColumn.setEditingSupport(new PreferenceSpyEditingSupport(filteredTree.getViewer(), field));
}

From source file:org.eclipse.ease.modules.unittest.ui.views.UnitTestView.java

License:Open Source License

private TreeViewer createTestArea(final Composite parent) {
    final Composite composite = new Composite(parent, SWT.NONE);
    final TreeColumnLayout layout = new TreeColumnLayout();
    composite.setLayout(layout);/*from   w  ww  . j  a v a2  s. c o m*/

    final TreeViewer viewer = new TreeViewer(composite, SWT.BORDER | SWT.FULL_SELECTION);
    viewer.addDoubleClickListener(new IDoubleClickListener() {

        @Override
        public void doubleClick(final DoubleClickEvent event) {
            final Object element = ((IStructuredSelection) event.getSelection()).getFirstElement();
            if (element instanceof Test) {

                List<IScriptDebugFrame> trace;
                final List<TestResult> messages = ((Test) element).getMessages();
                if ((messages != null) && (!messages.isEmpty()))
                    trace = messages.get(0).getStackTrace();
                else
                    trace = ((Test) element).getTestLocation();

                if (trace != null) {
                    // open trace location
                    for (final IScriptDebugFrame traceElement : trace) {
                        final Object file = traceElement.getScript().getFile();
                        if (file instanceof IFile) {
                            if (((IFile) file).exists()) {
                                try {
                                    final int line = Math.max(traceElement.getLineNumber(), 1);
                                    final ITextEditor textEditor = (ITextEditor) UIModule
                                            .showEditor((IFile) file);
                                    final IDocument document = textEditor.getDocumentProvider()
                                            .getDocument(textEditor.getEditorInput());
                                    try {
                                        textEditor.selectAndReveal(document.getLineOffset(line - 1),
                                                document.getLineLength(line - 1));
                                    } catch (final BadLocationException e) {
                                        // TODO implement
                                        throw new RuntimeException(e);
                                    }
                                } catch (final Throwable e) {
                                    // TODO handle this exception (but for now, at least know it happened)
                                    throw new RuntimeException(e);

                                }

                                break;
                            }
                        }
                    }

                } else {
                    // we do not have a trace, open test set
                    final Object input = viewer.getInput();
                    if (input instanceof TestFile) {

                        try {
                            final Object file = ((TestFile) input).getFile();
                            if (file instanceof IFile)
                                UIModule.showEditor((IFile) ((TestFile) input).getFile());

                        } catch (final Throwable e) {
                            // TODO handle this exception (but for now, at least know it happened)
                            throw new RuntimeException(e);

                        }
                    }
                }
            }
        }
    });

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

    viewer.setContentProvider(new TestFileContentProvider());

    final TreeViewerColumn testColumn = new TreeViewerColumn(viewer, SWT.NONE);
    testColumn.getColumn().setWidth(100);
    testColumn.getColumn().setText("Test");
    layout.setColumnData(testColumn.getColumn(), new ColumnWeightData(30, 50, true));
    testColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(final Object element) {
            if (element instanceof Test)
                return ((Test) element).getTitle();

            if (element instanceof Entry<?, ?>)
                // metadata
                return ((Entry<?, ?>) element).getKey().toString();

            return "";
        }

        @Override
        public Image getImage(final Object element) {

            if (element instanceof Entry<?, ?>)
                // metadata
                return fResourceManager.createImage(Activator.getImageDescriptor(Activator.ICON_METADATA));

            TestStatus status = null;
            if (element instanceof Test)
                status = ((Test) element).getStatus();
            else if (element instanceof TestResult)
                status = ((TestResult) element).getStatus();

            if (status != null) {
                switch (status) {
                case PASS:
                    return fResourceManager.createImage(Activator.getImageDescriptor(Activator.ICON_PASS));
                case ERROR:
                    return fResourceManager.createImage(Activator.getImageDescriptor(Activator.ICON_ERROR));
                case FAILURE:
                    return fResourceManager.createImage(Activator.getImageDescriptor(Activator.ICON_FAILURE));
                case RUNNING:
                    return fResourceManager.createImage(Activator.getImageDescriptor(Activator.ICON_RUNNING));
                default:
                    return super.getImage(element);
                }
            }

            return super.getImage(element);
        }

        @Override
        public String getToolTipText(final Object element) {
            if (element instanceof Test) {
                if ((((Test) element).getDescription() != null)
                        && (!((Test) element).getDescription().isEmpty()))
                    return ((Test) element).getDescription();
            }

            return super.getToolTipText(element);
        }
    });

    final TreeViewerColumn messageColumn = new TreeViewerColumn(viewer, SWT.NONE);
    messageColumn.getColumn().setWidth(100);
    messageColumn.getColumn().setText("Message");
    layout.setColumnData(messageColumn.getColumn(), new ColumnWeightData(70, 50, true));
    messageColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(final Object element) {
            if (element instanceof Test) {
                final TestResult message = ((Test) element).getSeverestMessage();
                if (message != null)
                    return message.getDescription();

                return ((Test) element).getDescription();
            }

            if (element instanceof Entry<?, ?>)
                // metadata
                return ((Entry<?, ?>) element).getValue().toString();

            return super.getText(element);
        }
    });

    ColumnViewerToolTipSupport.enableFor(viewer, ToolTip.NO_RECREATE);

    return viewer;
}

From source file:org.eclipse.ecf.sync.resources.views.RemoteResourcesView.java

License:Open Source License

public void createPartControl(Composite parent) {
    viewer = new TreeViewer(parent, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    viewer.setContentProvider(new ViewContentProvider());
    viewer.setComparator(new ViewerComparator() {
        public int compare(Viewer viewer, Object e1, Object e2) {
            if (e1 instanceof BatchModelChange) {
                BatchModelChange c1 = (BatchModelChange) e1;
                BatchModelChange c2 = (BatchModelChange) e2;

                // newest goes last
                return (int) (c2.getTime() - c1.getTime());
            }/*from   www .  j ava  2s. c  o  m*/
            // no sorting for resource changes
            return 0;
        }
    });

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

    labelProvider = WorkbenchLabelProvider.getDecoratingWorkbenchLabelProvider();
    final SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss"); //$NON-NLS-1$
    final CompareConfiguration config = new CompareConfiguration();

    TreeViewerColumn resourceColumn = new TreeViewerColumn(viewer, SWT.LEAD);
    resourceColumn.getColumn().setText("Changes");
    resourceColumn.getColumn().setWidth(100);
    resourceColumn.setLabelProvider(new ColumnLabelProvider() {
        public String getText(Object element) {
            if (element instanceof BatchModelChange) {
                StringBuffer buffer = new StringBuffer();
                BatchModelChange batchChange = (BatchModelChange) element;
                buffer.append(batchChange.isOutgoing() ? "Outgoing" : "Incoming");
                buffer.append(" (");
                buffer.append(formatter.format(new Date(batchChange.getTime())));
                buffer.append(')');
                return buffer.toString();
            } else {
                return new Path(((ResourceChangeMessage) element).getPath()).lastSegment();
            }
        }

        public Image getImage(Object element) {
            if (element instanceof BatchModelChange) {
                Image image = PlatformUI.getWorkbench().getSharedImages()
                        .getImage(ISharedImages.IMG_OBJ_FOLDER);
                int kind = 0;
                if (((BatchModelChange) element).isOutgoing()) {
                    kind = (kind & ~SyncInfo.OUTGOING) | SyncInfo.INCOMING | SyncInfo.CHANGE;
                } else {
                    kind = (kind & ~SyncInfo.OUTGOING) | SyncInfo.OUTGOING | SyncInfo.CHANGE;
                }
                return config.getImage(image, kind);
            } else {
                ResourceChangeMessage message = (ResourceChangeMessage) element;
                int type = message.getType();
                IPath path = new Path(message.getPath());

                Image image = null;
                if (type == IResource.FILE) {
                    image = labelProvider.getImage(ResourcesPlugin.getWorkspace().getRoot().getFile(path));
                } else {
                    image = labelProvider.getImage(ResourcesPlugin.getWorkspace().getRoot().getFolder(path));
                }

                if (message.isConflicted()) {
                    return config.getImage(image, SyncInfo.CHANGE | SyncInfo.CONFLICTING);
                }

                int imageKind = 0;
                switch (message.getKind()) {
                case IResourceDelta.ADDED:
                    imageKind = (imageKind & ~SyncInfo.CHANGE) | SyncInfo.DELETION;
                    break;
                case IResourceDelta.CHANGED:
                    imageKind = (imageKind & ~SyncInfo.CHANGE) | SyncInfo.CHANGE;
                    break;
                case IResourceDelta.REMOVED:
                    imageKind = (imageKind & ~SyncInfo.CHANGE) | SyncInfo.ADDITION;
                    break;
                default:
                    return null;
                }
                return config.getImage(image, imageKind);
            }
        }
    });

    TreeViewerColumn pathColumn = new TreeViewerColumn(viewer, SWT.LEAD);
    pathColumn.getColumn().setText("Path");
    pathColumn.getColumn().setWidth(200);
    pathColumn.setLabelProvider(new ColumnLabelProvider() {
        public String getText(Object element) {
            if (element instanceof BatchModelChange) {
                return null;
            } else {
                return ((ResourceChangeMessage) element).getPath();
            }
        }
    });

    TreeViewerColumn typeColumn = new TreeViewerColumn(viewer, SWT.LEAD);
    typeColumn.getColumn().setText("Type");
    typeColumn.getColumn().setWidth(75);
    typeColumn.setLabelProvider(new ColumnLabelProvider() {
        public String getText(Object element) {
            if (element instanceof BatchModelChange) {
                return null;
            } else {
                switch (((ResourceChangeMessage) element).getKind()) {
                case IResourceDelta.ADDED:
                    return "Added";
                case IResourceDelta.CHANGED:
                    return "Changed";
                case IResourceDelta.REMOVED:
                    return "Removed";
                default:
                    return null;
                }
            }
        }
    });

    TreeViewerColumn resolutionColumn = new TreeViewerColumn(viewer, SWT.LEAD);
    resolutionColumn.getColumn().setText("Resolution");
    resolutionColumn.getColumn().setWidth(100);
    resolutionColumn.setLabelProvider(new ColumnLabelProvider() {
        public String getText(Object element) {
            if (element instanceof BatchModelChange) {
                return null;
            } else {
                return ((ResourceChangeMessage) element).isIgnored() ? "Ignored" : "Committed";
            }
        }
    });

    SyncResourcesCore.setView(this);
}

From source file:org.eclipse.eclemma.internal.ui.coverageview.CoverageView.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    ContextHelp.setHelp(parent, ContextHelp.COVERAGE_VIEW);
    Tree tree = new Tree(parent, SWT.MULTI);
    tree.setHeaderVisible(true);/*from w w w. j  a v  a 2 s.  c om*/
    tree.setLinesVisible(true);

    viewer = new TreeViewer(tree);
    final TreeViewerColumn column0 = new TreeViewerColumn(viewer, SWT.LEFT);
    column0.setLabelProvider(new CellLabelProvider() {

        private final ILabelProvider delegate = new WorkbenchLabelProvider();

        @Override
        public void update(ViewerCell cell) {
            if (cell.getElement() == LOADING_ELEMENT) {
                cell.setText(UIMessages.CoverageView_loadingMessage);
                cell.setImage(null);
            } else {
                cell.setText(cellTextConverter.getElementName(cell.getElement()));
                cell.setImage(delegate.getImage(cell.getElement()));
            }
        }
    });
    sorter.addColumn(column0, COLUMN_ELEMENT);

    final TreeViewerColumn column1 = new TreeViewerColumn(viewer, SWT.RIGHT);
    column1.setLabelProvider(new OwnerDrawLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            if (cell.getElement() == LOADING_ELEMENT) {
                cell.setText(""); //$NON-NLS-1$
            } else {
                cell.setText(cellTextConverter.getRatio(cell.getElement()));
            }
        }

        @Override
        protected void erase(Event event, Object element) {
        }

        @Override
        protected void measure(Event event, Object element) {
        }

        @Override
        protected void paint(Event event, Object element) {
            final ICoverageNode coverage = CoverageTools.getCoverageInfo(element);
            if (coverage != null) {
                final ICounter counter = coverage.getCounter(settings.getCounters());
                RedGreenBar.draw(event, column1.getColumn().getWidth(), counter,
                        maxTotalCache.getMaxTotal(element));
            }
        }
    });
    sorter.addColumn(column1, COLUMN_RATIO);

    final TreeViewerColumn column2 = new TreeViewerColumn(viewer, SWT.RIGHT);
    column2.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            if (cell.getElement() == LOADING_ELEMENT) {
                cell.setText(""); //$NON-NLS-1$
            } else {
                cell.setText(cellTextConverter.getCovered(cell.getElement()));
            }
        }
    });
    sorter.addColumn(column2, COLUMN_COVERED);

    final TreeViewerColumn column3 = new TreeViewerColumn(viewer, SWT.RIGHT);
    column3.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            if (cell.getElement() == LOADING_ELEMENT) {
                cell.setText(""); //$NON-NLS-1$
            } else {
                cell.setText(cellTextConverter.getMissed(cell.getElement()));
            }
        }
    });
    sorter.addColumn(column3, COLUMN_MISSED);

    final TreeViewerColumn column4 = new TreeViewerColumn(viewer, SWT.RIGHT);
    column4.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            if (cell.getElement() == LOADING_ELEMENT) {
                cell.setText(""); //$NON-NLS-1$
            } else {
                cell.setText(cellTextConverter.getTotal(cell.getElement()));
            }
        }
    });
    sorter.addColumn(column4, COLUMN_TOTAL);

    viewer.addFilter(new ViewerFilter() {
        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            if (element == LOADING_ELEMENT) {
                return true;
            } else {
                final ICoverageNode c = CoverageTools.getCoverageInfo(element);
                if (c == null) {
                    return false;
                }
                final ICounter instructions = c.getInstructionCounter();
                if (instructions.getTotalCount() == 0) {
                    return false;
                }
                if (settings.getHideUnusedElements() && instructions.getCoveredCount() == 0) {
                    return false;
                }
                return true;
            }
        }
    });
    settings.updateColumnHeaders(viewer);
    settings.restoreColumnWidth(viewer);
    viewer.setComparator(sorter);
    viewer.setContentProvider(new CoveredElementsContentProvider(settings));
    viewer.setInput(CoverageTools.getJavaModelCoverage());
    getSite().setSelectionProvider(viewer);

    selectiontracker = new SelectionTracker(this, viewer);

    createHandlers();
    createActions();

    viewer.addOpenListener(new IOpenListener() {
        public void open(OpenEvent event) {
            openAction.run((IStructuredSelection) event.getSelection());
        }
    });

    MenuManager menuMgr = new MenuManager("#PopupMenu"); //$NON-NLS-1$
    menuMgr.setRemoveAllWhenShown(true);
    tree.setMenu(menuMgr.createContextMenu(tree));
    getSite().registerContextMenu(menuMgr, viewer);

    CoverageTools.getSessionManager().addSessionListener(descriptionUpdater);
    CoverageTools.addJavaCoverageListener(coverageListener);
}

From source file:org.eclipse.edt.ide.rui.visualeditor.internal.wizards.insertwidget.InsertWidgetWizardPage.java

License:Open Source License

private void createConfigureWidgetsTableViewer(Composite composite) {
    Composite configureComposite = new Composite(composite, SWT.NONE);
    GridData configureCompositeGridData = new GridData(GridData.FILL_BOTH);
    configureComposite.setLayoutData(configureCompositeGridData);
    configureComposite.setLayout(new GridLayout(2, false));

    Tree configureWidgetsTree = new Tree(configureComposite,
            SWT.BORDER | SWT.FULL_SELECTION | SWT.CHECK | SWT.MULTI);
    configureWidgetsTableViewer = new CheckboxTreeViewer(configureWidgetsTree);
    configureWidgetsTableViewer.setContentProvider(new TreeTableViewerContentProvider());
    configureWidgetsTableViewer.getTree().setHeaderVisible(true);
    configureWidgetsTableViewer.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));
    TableLayout tableLayout = new TableLayout();
    configureWidgetsTableViewer.getTree().setLayout(tableLayout);

    configureWidgetsTableViewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            InsertDataNode insertDataNode = (InsertDataNode) event.getElement();
            configureWidgetsTableViewer.setGrayed(insertDataNode, false);

            if (isInsertDataNodeChecked(insertDataNode)) {
                //also check parent of the node
                InsertDataNode parent = insertDataNode.getParent();
                if (parent != null) {
                    if (isOneChildUnchecked(parent)) {
                        configureWidgetsTableViewer.setGrayChecked(parent, true);
                    } else {
                        configureWidgetsTableViewer.setGrayChecked(parent, false);
                        configureWidgetsTableViewer.setChecked(parent, true);
                    }//from w  w  w . j av  a  2s.c  om
                }

                //also check all children of the node
                for (InsertDataNode child : getAllChildren(insertDataNode)) {
                    configureWidgetsTableViewer.setChecked(child, true);
                }
            } else {
                //also uncheck parent of the node
                InsertDataNode parent = insertDataNode.getParent();
                if (parent != null) {
                    if (isOneChildUnchecked(parent)) {
                        configureWidgetsTableViewer.setGrayChecked(parent, true);
                    }
                    if (isAllChildrenUnchecked(parent)) {
                        configureWidgetsTableViewer.setGrayChecked(parent, false);
                        configureWidgetsTableViewer.setChecked(parent, false);
                    }
                }
                //also uncheck all children of the node
                for (InsertDataNode child : getAllChildren(insertDataNode)) {
                    configureWidgetsTableViewer.setGrayChecked(child, false);
                }
            }

            checkInsertDataNodeSelection();
            errorMessageManager.refresh();
        }

        private boolean isOneChildUnchecked(InsertDataNode parent) {
            List<InsertDataNode> children = parent.getChildren();
            for (InsertDataNode child : children) {
                if (!configureWidgetsTableViewer.getChecked(child)) {
                    return true;
                }
                ;
            }
            return false;
        }

        private boolean isAllChildrenUnchecked(InsertDataNode parent) {
            List<InsertDataNode> children = parent.getChildren();
            for (InsertDataNode child : children) {
                if (configureWidgetsTableViewer.getChecked(child)) {
                    return false;
                }
                ;
            }
            return true;
        }

    });

    configureWidgetsTableViewer.getTree().addKeyListener(new KeyListener() {

        public void keyPressed(KeyEvent event) {
            if (event.keyCode == SWT.KEYPAD_ADD && upButton.isEnabled()) {
                reorderSelectedInsertDataNodes(Order.UP);
            }

            if (event.keyCode == SWT.KEYPAD_SUBTRACT && downButton.isEnabled()) {
                reorderSelectedInsertDataNodes(Order.DOWN);
            }
        }

        public void keyReleased(KeyEvent event) {
        }

    });

    configureWidgetsTableViewer.getTree().addListener(SWT.Collapse, new Listener() {

        public void handleEvent(Event event) {
            Widget widget = event.item;
            if (widget instanceof TreeItem) {
                TreeItem treeItem = (TreeItem) widget;
                InsertDataNode insertDataNode = (InsertDataNode) treeItem.getData();
                if (!isSelected(insertDataNode,
                        (IStructuredSelection) configureWidgetsTableViewer.getSelection())) {
                    configureWidgetsTableViewer.setSelection(null);
                    setUpAndDownButtonsStatus(null);
                }
            }
        }

    });

    configureWidgetsTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            if (event.getSelection().isEmpty()) {
                return;
            }

            setUpAndDownButtonsStatus(event.getSelection());
        }
    });

    //field name column
    TreeViewerColumn fieldNameColumn = new TreeViewerColumn(configureWidgetsTableViewer, SWT.NONE);
    fieldNameColumn.getColumn().setText(Messages.NL_IWWP_CWT_Field_Name_Column);
    tableLayout.addColumnData(new ColumnWeightData(150));
    fieldNameColumn.setLabelProvider(new ColumnLabelProvider() {
        public String getText(Object element) {
            InsertDataNode insertDataNode = (InsertDataNode) element;
            return insertDataNode.getFieldName();
        }
    });

    //field type column
    TreeViewerColumn fieldTypeColumn = new TreeViewerColumn(configureWidgetsTableViewer, SWT.NONE);
    fieldTypeColumn.getColumn().setText(Messages.NL_IWWP_CWT_Field_Type_Column);
    tableLayout.addColumnData(new ColumnWeightData(100));
    fieldTypeColumn.setLabelProvider(new ColumnLabelProvider() {
        public String getText(Object element) {
            InsertDataNode insertDataNode = (InsertDataNode) element;
            return insertDataNode.getFieldType();
        }
    });

    //label text column
    TreeViewerColumn labelTextColumn = new TreeViewerColumn(configureWidgetsTableViewer, SWT.NONE);
    labelTextColumn.getColumn().setText(Messages.NL_IWWP_CWT_Label_Text_Column);
    tableLayout.addColumnData(new ColumnWeightData(100));
    labelTextColumn.setLabelProvider(new ColumnLabelProvider() {
        public String getText(Object element) {
            InsertDataNode insertDataNode = (InsertDataNode) element;
            return insertDataNode.getLabelText();
        }
    });
    labelTextColumn.setEditingSupport(new LabelTextColumnEditingSupport(configureWidgetsTableViewer));

    //widget type column
    TreeViewerColumn widgetTypeColumn = new TreeViewerColumn(configureWidgetsTableViewer, SWT.NONE);
    widgetTypeColumn.getColumn().setText(Messages.NL_IWWP_CWT_Widget_Type_Column);
    tableLayout.addColumnData(new ColumnWeightData(180));
    widgetTypeColumn.setLabelProvider(new ColumnLabelProvider() {
        public String getText(Object element) {
            InsertDataNode insertDataNode = (InsertDataNode) element;
            String widgetType = insertDataNode.getWidgetType().getName();

            if (!isParentGenChildrenWidget(insertDataNode)) {
                return "";
            }

            if (widgetType.equals(InsertDataNode.RUIWidgetType.NONE)) {
                if (InsertWidgetWizardUtil.isAPrimitiveArrayInRecord(insertDataNode)) {
                    configureWidgetsTableViewer.setGrayed(insertDataNode, true);
                } else {
                    String errorMessage = Messages.NL_IWWP_Error_Message_Can_Not_Find_Widget + " "
                            + insertDataNode.getBindingName();
                    errorMessageManager.addError(insertDataNode,
                            ErrorMessageManager.ERROR_TYPE_CANNOT_FIND_WIDGET, errorMessage);
                }
            } else {
                errorMessageManager.reomveError(insertDataNode,
                        ErrorMessageManager.ERROR_TYPE_CANNOT_FIND_WIDGET);
            }
            return widgetType;
        }
    });
    widgetTypeColumn.setEditingSupport(new WidgetTypeColumnEditingSupport(configureWidgetsTableViewer));

    //widget name column
    TreeViewerColumn widgetNameColumn = new TreeViewerColumn(configureWidgetsTableViewer, SWT.NONE);
    widgetNameColumn.getColumn().setText(Messages.NL_IWWP_CWT_Widget_Name_Column);
    tableLayout.addColumnData(new ColumnWeightData(150));
    widgetNameColumn.setLabelProvider(new ColumnLabelProvider() {
        public String getText(Object element) {
            InsertDataNode insertDataNode = (InsertDataNode) element;

            if (!isParentGenChildrenWidget(insertDataNode)) {
                return "";
            }

            String widgetName = insertDataNode.getWidgetName();
            if (widgetName == null || widgetName.equals("")) {
                widgetName = insertDataNode.getDefaultWidgetName();
            }
            if (!isWidgetNameValid(widgetName)) {
                String errorMessage = widgetName + " "
                        + Messages.NL_IWWP_Error_Message__Widget_Name_Is_Not_Valid;
                errorMessageManager.addError(insertDataNode, ErrorMessageManager.ERROR_TYPE_INVALID_WIDGET_NAME,
                        errorMessage);
            } else if (NameFinder.getInstance().isFieldNameExist(widgetName)
                    || isWidgetNameDuplicate(insertDataNode, widgetName)) {
                String errorMessage = widgetName + " "
                        + Messages.NL_IWWP_Error_Message_Duplicate_Widget_Name_Found;
                errorMessageManager.addError(insertDataNode,
                        ErrorMessageManager.ERROR_TYPE_DUPLICATE_WIDGET_NAME, errorMessage);
            } else {
                errorMessageManager.reomveError(insertDataNode,
                        ErrorMessageManager.ERROR_TYPE_INVALID_WIDGET_NAME);
                errorMessageManager.reomveError(insertDataNode,
                        ErrorMessageManager.ERROR_TYPE_DUPLICATE_WIDGET_NAME);
            }
            ;

            errorMessageManager.refresh();

            return widgetName;
        }

        private boolean isWidgetNameValid(String widgetName) {
            List messages = EGLNameValidator.validateEGLName(widgetName, EGLNameValidator.PART, null);
            if (!messages.isEmpty()) {
                return false;
            }
            return true;
        }
    });
    widgetNameColumn.setEditingSupport(new WidgetNameColumnEditingSupport(configureWidgetsTableViewer));

    //      //Node type column (for debug)
    //      TreeViewerColumn nodeTypeColumn = new TreeViewerColumn(configureWidgetsTableViewer, SWT.NONE);
    //      nodeTypeColumn.getColumn().setText("Node Type");
    //      tableLayout.addColumnData(new ColumnWeightData(70));
    //      nodeTypeColumn.setLabelProvider(new ColumnLabelProvider(){
    //         public String getText(Object element) {
    //            InsertDataNode insertDataNode = (InsertDataNode)element;
    //            return insertDataNode.getNodeType();
    //         }
    //      });
    //      
    //      //Is Array column (for debug)
    //      TreeViewerColumn isArrayColumn = new TreeViewerColumn(configureWidgetsTableViewer, SWT.NONE);
    //      isArrayColumn.getColumn().setText("Is Array");
    //      tableLayout.addColumnData(new ColumnWeightData(70));
    //      isArrayColumn.setLabelProvider(new ColumnLabelProvider(){
    //         public String getText(Object element) {
    //            InsertDataNode insertDataNode = (InsertDataNode)element;
    //            return Boolean.toString(insertDataNode.isArray());
    //         }
    //      });
    //      
    //      //Is Container column (for debug)
    //      TreeViewerColumn isContainerColumn = new TreeViewerColumn(configureWidgetsTableViewer, SWT.NONE);
    //      isContainerColumn.getColumn().setText("Is Container");
    //      tableLayout.addColumnData(new ColumnWeightData(70));
    //      isContainerColumn.setLabelProvider(new ColumnLabelProvider(){
    //         public String getText(Object element) {
    //            InsertDataNode insertDataNode = (InsertDataNode)element;
    //            return Boolean.toString(insertDataNode.isContainer());
    //         }
    //      });
    //      
    //      //Node type details column (for debug)
    //      TreeViewerColumn nodeTypeDetailsColumn = new TreeViewerColumn(configureWidgetsTableViewer, SWT.NONE);
    //      nodeTypeDetailsColumn.getColumn().setText("Node Type Details");
    //      tableLayout.addColumnData(new ColumnWeightData(70));
    //      nodeTypeDetailsColumn.setLabelProvider(new ColumnLabelProvider(){
    //         public String getText(Object element) {
    //            InsertDataNode insertDataNode = (InsertDataNode)element;
    //            StringBuffer details = new StringBuffer();
    //            for(String detail : insertDataNode.getNodeTypeDetails()){
    //               details.append(detail).append(" + ");
    //            }
    //            return details.toString();
    //         }
    //      });

    Composite orderComposite = new Composite(configureComposite, SWT.NONE);
    orderComposite.setLayout(new GridLayout(1, false));

    upButton = new Button(orderComposite, SWT.NONE);
    upButton.setImage(Activator.getImage(EvConstants.ICON_ORDER_UP_BUTTON));
    upButton.setToolTipText(Tooltips.NL_IWWP_Order_Up);
    upButton.setEnabled(false);
    upButton.addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent event) {
            reorderSelectedInsertDataNodes(Order.UP);
        }

        public void widgetDefaultSelected(SelectionEvent event) {
        }

    });

    downButton = new Button(orderComposite, SWT.NONE);
    downButton.setImage(Activator.getImage(EvConstants.ICON_ORDER_DOWN_BUTTON));
    downButton.setToolTipText(Tooltips.NL_IWWP_Order_Down);
    downButton.setEnabled(false);
    downButton.addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent event) {
            reorderSelectedInsertDataNodes(Order.DOWN);
        }

        public void widgetDefaultSelected(SelectionEvent event) {
        }

    });
}

From source file:org.eclipse.egit.gitflow.ui.internal.dialogs.FilteredBranchesWidget.java

License:Open Source License

private TreeColumn createColumn(final String name, TreeViewer treeViewer,
        final ColumnLabelProvider labelProvider) {
    final TreeColumn column = new TreeColumn(treeViewer.getTree(), SWT.LEFT);
    column.setAlignment(SWT.LEFT);/*from   w  ww .ja  v  a2s  .c  o m*/
    column.setText(name);
    column.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            setSortedColumn(column, labelProvider);
        }
    });

    TreeViewerColumn treeViewerNameColumn = new TreeViewerColumn(treeViewer, column);
    treeViewerNameColumn.setLabelProvider(labelProvider);
    return column;
}

From source file:org.eclipse.egit.ui.internal.rebase.RebaseInteractiveView.java

License:Open Source License

private TreeViewerColumn createColumn(String text) {
    TreeViewerColumn column = new TreeViewerColumn(planTreeViewer, SWT.NONE);
    column.getColumn().setText(text);//from  w w w  .j a v a2s . c om
    column.getColumn().setMoveable(false);
    return column;
}

From source file:org.eclipse.egit.ui.internal.reflog.ReflogView.java

License:Open Source License

private TreeViewerColumn createColumn(final TreeColumnLayout columnLayout, final String text, final int weight,
        final int style) {
    final TreeViewerColumn viewerColumn = new TreeViewerColumn(refLogTableTreeViewer, style);
    final TreeColumn column = viewerColumn.getColumn();
    column.setText(text);/*from w  w w  .  jav  a  2s  .c  o  m*/
    columnLayout.setColumnData(column, new ColumnWeightData(weight, 10));
    return viewerColumn;
}

From source file:org.eclipse.egit.ui.internal.synchronize.GitSynchronizeWizardPage.java

License:Open Source License

public void createControl(Composite parent) {
    Composite composite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout(1, false);
    layout.marginWidth = 0;/*from  w ww .ja  v a  2s. co m*/
    layout.marginHeight = 0;
    composite.setLayout(layout);

    repositories = new HashMap<Repository, Set<IProject>>();
    for (IProject project : ResourcesPlugin.getWorkspace().getRoot().getProjects()) {
        RepositoryMapping mapping = RepositoryMapping.getMapping(project);
        if (mapping != null) {
            Repository repository = mapping.getRepository();
            Set<IProject> set = repositories.get(repository);
            if (set == null) {
                set = new HashSet<IProject>();
                repositories.put(repository, set);
            }
            set.add(project);
        }
    }

    treeViewer = new ContainerCheckedTreeViewer(composite,
            SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL | SWT.FULL_SELECTION);
    treeViewer.getTree().setLinesVisible(true);
    treeViewer.getTree().setHeaderVisible(true);
    treeViewer.getTree().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    TreeViewerColumn repositoriesColumn = new TreeViewerColumn(treeViewer, SWT.LEAD);
    repositoriesColumn.getColumn().setText(UIText.GitBranchSynchronizeWizardPage_repositories);
    repositoriesColumn.getColumn().setImage(repositoryImage);
    repositoriesColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof Repository) {
                return ((Repository) element).getDirectory().getAbsolutePath();
            }
            return ((IProject) element).getName();
        }

        @Override
        public Image getImage(Object element) {
            if (element instanceof Repository) {
                return repositoryImage;
            }
            return PlatformUI.getWorkbench().getSharedImages().getImage(IDE.SharedImages.IMG_OBJ_PROJECT);
        }
    });

    TreeViewerColumn branchesColumn = new TreeViewerColumn(treeViewer, SWT.LEAD);
    branchesColumn.getColumn().setText(UIText.GitBranchSynchronizeWizardPage_branches);
    branchesColumn.getColumn().setImage(branchesImage);
    branchesColumn.getColumn().setWidth(200);
    final ComboBoxCellEditor branchesEditor = new ComboBoxCellEditor(treeViewer.getTree(), new String[0]);
    branchesColumn.setEditingSupport(new EditingSupport(treeViewer) {
        @Override
        protected void setValue(Object element, Object value) {
            int intValue = ((Integer) value).intValue();
            if (intValue == -1) {
                return;
            }

            CCombo combo = (CCombo) branchesEditor.getControl();
            String branch = combo.getItem(intValue);

            if (element instanceof IProject) {
                RepositoryMapping mapping = RepositoryMapping.getMapping((IResource) element);
                Repository repository = mapping.getRepository();
                selectedBranches.put(repository, branch);
                treeViewer.refresh(repository, true);
            } else {
                selectedBranches.put((Repository) element, branch);
                treeViewer.refresh(element, true);
            }

            setPageComplete(selectedBranches.size() == selectedRepositories.size());
        }

        @Override
        protected Object getValue(Object element) {
            if (element instanceof IProject) {
                RepositoryMapping mapping = RepositoryMapping.getMapping((IResource) element);
                String branch = selectedBranches.get(mapping.getRepository());
                CCombo combo = (CCombo) branchesEditor.getControl();
                int index = branch == null ? 0 : combo.indexOf(branch);
                return Integer.valueOf(index);
            } else {
                String branch = selectedBranches.get(element);
                CCombo combo = (CCombo) branchesEditor.getControl();
                int index = branch == null ? 0 : combo.indexOf(branch);
                return Integer.valueOf(index);
            }
        }

        @Override
        protected CellEditor getCellEditor(Object element) {
            if (element instanceof IProject) {
                RepositoryMapping mapping = RepositoryMapping.getMapping((IResource) element);
                Set<String> refs = mapping.getRepository().getAllRefs().keySet();
                branchesEditor.setItems(refs.toArray(new String[refs.size()]));
            } else {
                Set<String> refs = ((Repository) element).getAllRefs().keySet();
                branchesEditor.setItems(refs.toArray(new String[refs.size()]));
            }
            return branchesEditor;
        }

        @Override
        protected boolean canEdit(Object element) {
            return true;
        }
    });
    branchesColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof IProject) {
                RepositoryMapping mapping = RepositoryMapping.getMapping((IResource) element);
                String branch = selectedBranches.get(mapping.getRepository());
                return branch == null ? "" : branch; //$NON-NLS-1$
            } else {
                String branch = selectedBranches.get(element);
                return branch == null ? "" : branch; //$NON-NLS-1$
            }
        }
    });

    treeViewer.setContentProvider(new ITreeContentProvider() {
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
            // nothing to do
        }

        public void dispose() {
            // nothing to do
        }

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

        public boolean hasChildren(Object element) {
            if (element instanceof Repository) {
                return !repositories.get(element).isEmpty();
            }
            return false;
        }

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

        public Object[] getChildren(Object parentElement) {
            if (parentElement instanceof Repository) {
                return repositories.get(parentElement).toArray();
            }
            return new Object[0];
        }
    });

    final Object[] array = repositories.keySet().toArray();
    treeViewer.setInput(array);
    treeViewer.setCheckedElements(array);
    repositoriesColumn.getColumn().pack();

    save();

    treeViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            selectedRepositories.clear();
            selectedProjects.clear();

            save();

            if (event.getChecked()) {
                setPageComplete(selectedBranches.size() == selectedRepositories.size());
            } else if (treeViewer.getCheckedElements().length == 0) {
                setPageComplete(false);
            }
        }
    });

    Composite buttonsComposite = new Composite(composite, SWT.NONE);
    layout = new GridLayout(2, true);
    layout.marginWidth = 0;
    layout.marginHeight = 0;
    buttonsComposite.setLayout(layout);
    buttonsComposite.setLayoutData(new GridData(SWT.BEGINNING, SWT.BEGINNING, false, false));

    Button selectAllBtn = new Button(buttonsComposite, SWT.PUSH);
    selectAllBtn.setText(UIText.GitBranchSynchronizeWizardPage_selectAll);
    selectAllBtn.addListener(SWT.Selection, new Listener() {
        public void handleEvent(Event event) {
            treeViewer.setCheckedElements(array);
            save();
            setPageComplete(selectedBranches.size() == selectedRepositories.size());
        }
    });
    selectAllBtn.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, false, false));

    Button deselectAllBtn = new Button(buttonsComposite, SWT.PUSH);
    deselectAllBtn.setText(UIText.GitBranchSynchronizeWizardPage_deselectAll);
    deselectAllBtn.addListener(SWT.Selection, new Listener() {
        public void handleEvent(Event event) {
            // uncheck everything
            treeViewer.setCheckedElements(new Object[0]);
            // clear all selection
            selectedRepositories.clear();
            selectedProjects.clear();
            // mark page as being incomplete
            setPageComplete(false);
        }
    });
    deselectAllBtn.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, false, false));

    Dialog.applyDialogFont(composite);
    setPageComplete(false);
    setControl(composite);
}

From source file:org.eclipse.emf.cdo.transfer.ui.swt.TransferTreeComposite.java

License:Open Source License

public TransferTreeComposite(Composite parent, int style, CDOTransfer transfer) {
    super(parent, style);
    this.transfer = transfer;

    setLayout(new FillLayout(SWT.VERTICAL));
    viewer = new TreeViewer(this, SWT.FULL_SELECTION);

    Tree tree = viewer.getTree();/*from  ww w  . j  a v a 2  s .c o m*/
    tree.setLinesVisible(true);
    tree.setHeaderVisible(true);

    TreeViewerColumn sourceViewerColumn = new TreeViewerColumn(viewer, SWT.NONE);
    TreeColumn sourceColumn = sourceViewerColumn.getColumn();
    sourceColumn.setWidth(350);
    sourceColumn.setText("From " + transfer.getSourceSystem());

    TreeViewerColumn typeViewerColumn = new TreeViewerColumn(viewer, SWT.NONE);
    TreeColumn typeColumn = typeViewerColumn.getColumn();
    typeColumn.setWidth(100);
    typeColumn.setText("Type");

    TreeViewerColumn targetViewerColumn = new TreeViewerColumn(viewer, SWT.NONE);
    TreeColumn targetColumn = targetViewerColumn.getColumn();
    targetColumn.setWidth(450);
    targetColumn.setText("To " + transfer.getTargetSystem());

    TreeViewerColumn statusViewerColumn = new TreeViewerColumn(viewer, SWT.NONE);
    TreeColumn statusColumn = statusViewerColumn.getColumn();
    statusColumn.setWidth(100);
    statusColumn.setText("Status");

    viewer.setAutoExpandLevel(2);
    viewer.setContentProvider(new TransferContentProvider());
    viewer.setLabelProvider(new TransferLabelProvider(transfer));
    viewer.setInput(transfer.getRootMapping());

    MenuManager manager = new MenuManager();
    Menu menu = manager.createContextMenu(tree);
    manager.addMenuListener(new IMenuListener() {
        public void menuAboutToShow(IMenuManager manager) {
            IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
            CDOTransferMapping mapping = (CDOTransferMapping) selection.getFirstElement();
            manager.add(new UnmapAction(mapping));
        }
    });

    manager.setRemoveAllWhenShown(true);
    tree.setMenu(menu);
}