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:com.bdaum.zoom.ui.internal.preferences.MetadataPreferencePage.java

License:Open Source License

private TreeViewer createTolerancesViewer(Composite comp) {
    ExpandCollapseGroup toleranceExpandCollapseGroup = new ExpandCollapseGroup(comp, SWT.NONE);
    final TreeViewer viewer = new TreeViewer(comp,
            SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
    viewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    toleranceExpandCollapseGroup.setViewer(viewer);
    viewer.getTree().setLinesVisible(true);
    TreeViewerColumn col1 = new TreeViewerColumn(viewer, SWT.NONE);
    col1.getColumn().setWidth(250);/*from w  w  w  . ja v  a2 s . c  om*/
    col1.setLabelProvider(new MetadataLabelProvider());
    TreeViewerColumn col2 = new TreeViewerColumn(viewer, SWT.NONE);
    col2.getColumn().setWidth(80);
    final ToleranceLabelProvider labelProvider = new ToleranceLabelProvider();
    col2.setLabelProvider(labelProvider);
    col2.setEditingSupport(new EditingSupport(viewer) {
        @Override
        protected void setValue(Object element, Object value) {
            if (element instanceof QueryField) {
                QueryField qfield = (QueryField) element;
                String key = qfield.getKey();
                String s = String.valueOf(value);
                float v;
                if (s.endsWith("%")) //$NON-NLS-1$
                    v = Integer.parseInt(s.substring(0, s.length() - 1).trim());
                else
                    try {
                        af.setMaximumFractionDigits(8);
                        v = -af.parse(s.trim()).floatValue();
                        if (qfield.getType() == QueryField.T_DATE)
                            v = 1000 * v;
                    } catch (ParseException e) {
                        v = 0f;
                    }
                toleranceMap.put(key, v);
                viewer.update(element, null);
            }
        }

        @Override
        protected Object getValue(Object element) {
            String text = labelProvider.getText(element);
            if (text.endsWith(SEC))
                return text.substring(0, text.length() - SEC.length());
            return text;
        }

        @Override
        protected CellEditor getCellEditor(Object element) {
            if (element instanceof QueryField) {
                final int type = ((QueryField) element).getType();
                TextCellEditor editor = new TextCellEditor(viewer.getTree());
                editor.setValidator(new ICellEditorValidator() {
                    public String isValid(Object value) {
                        String s = String.valueOf(value);
                        if (s.endsWith("%")) { //$NON-NLS-1$
                            try {
                                if (Integer.parseInt(s.substring(0, s.length() - 1).trim()) < 0)
                                    return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$
                                if (type == QueryField.T_DATE)
                                    return Messages
                                            .getString("MetadataPreferencePage.percent_not_allowed_for_date"); //$NON-NLS-1$
                                return null;
                            } catch (NumberFormatException e) {
                                return Messages.getString("MetadataPreferencePage.bad_integer"); //$NON-NLS-1$
                            }
                        }
                        if (type == QueryField.T_POSITIVEINTEGER || type == QueryField.T_INTEGER) {
                            try {
                                if (Integer.parseInt(s.substring(0, s.length() - 1).trim()) < 0)
                                    return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$
                                return null;
                            } catch (NumberFormatException e) {
                                return Messages.getString("MetadataPreferencePage.bad_integer"); //$NON-NLS-1$
                            }
                        } else if (type == QueryField.T_POSITIVELONG || type == QueryField.T_LONG) {
                            try {
                                if (Long.parseLong(s.substring(0, s.length() - 1).trim()) < 0)
                                    return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$
                                return null;
                            } catch (NumberFormatException e) {
                                return Messages.getString("MetadataPreferencePage.bad_integer"); //$NON-NLS-1$
                            }
                        }
                        try {
                            af.setMaximumFractionDigits(8);
                            if (af.parse(s.trim()).floatValue() < 0)
                                return Messages.getString("MetadataPreferencePage.must_not_be_negative"); //$NON-NLS-1$
                            return null;
                        } catch (ParseException e) {
                            return Messages.getString("MetadataPreferencePage.bad_floating_point"); //$NON-NLS-1$
                        }
                    }
                });
                return editor;
            }
            return null;
        }

        @Override
        protected boolean canEdit(Object element) {
            if (element instanceof QueryField)
                return ((QueryField) element).getTolerance() != 0f;
            return false;
        }
    });
    viewer.setContentProvider(new MetadataContentProvider());
    viewer.setComparator(ZViewerComparator.INSTANCE);
    UiUtilities.installDoubleClickExpansion(viewer);
    viewer.setFilters(new ViewerFilter[] { new ViewerFilter() {
        @Override
        public boolean select(Viewer aViewer, Object parentElement, Object element) {
            if (element instanceof QueryField) {
                QueryField qfield = (QueryField) element;
                return (qfield.hasChildren() || qfield.isUiField())
                        && hostsToleranceValue((QueryField) element);
            }
            return false;
        }

        private boolean hostsToleranceValue(QueryField qfield) {
            if (qfield.getTolerance() != 0f)
                return true;
            for (QueryField child : qfield.getChildren())
                if (hostsToleranceValue(child))
                    return true;
            return false;
        }
    } });
    return viewer;
}

From source file:com.bdaum.zoom.ui.internal.views.AbstractPropertiesView.java

License:Open Source License

/**
 * This is a callback that will allow us to create the viewer and initialize it.
 *//*  w  w  w.j  a va  2 s  . com*/

@SuppressWarnings("unused")
@Override
public void createPartControl(Composite parent) {
    computeFlags();
    if (essentials == null) {
        essentials = new HashSet<QueryField>(100);
        computeEssentials();
    }
    preferenceListener = new IPreferenceChangeListener() {
        public void preferenceChange(PreferenceChangeEvent event) {
            if (PreferenceConstants.ESSENTIALMETADATA.equals(event.getKey())) {
                computeEssentials();
                refreshInternal();
            }
        }
    };
    InstanceScope.INSTANCE.getNode(UiActivator.PLUGIN_ID).addPreferenceChangeListener(preferenceListener);
    viewer = new TreeViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION);
    int[] colWidth = getColumnWidths();
    TreeViewerColumn col1 = new TreeViewerColumn(viewer, SWT.NONE);
    final Tree tree = viewer.getTree();
    tree.setLinesVisible(true);
    tree.setHeaderVisible(true);
    final ViewEditingSupport editingSupport = new ViewEditingSupport(viewer);
    col1.getColumn().setWidth(colWidth[0]);
    col1.getColumn().setText(Messages.getString("AbstractPropertiesView.Name")); //$NON-NLS-1$
    col1.setLabelProvider(new MetadataLabelProvider() {
        @Override
        public String getText(Object element) {
            return (editingSupport.canEdit(element)) ? Format.EDITABLEINDICATOR + super.getText(element)
                    : super.getText(element);
        }
    });
    TreeViewerColumn col2 = new TreeViewerColumn(viewer, SWT.NONE);
    col2.getColumn().setWidth(colWidth[1]);
    col2.getColumn().setText(Messages.getString("AbstractPropertiesView.Value")); //$NON-NLS-1$
    col2.setLabelProvider(new ValueColumnLabelProvider());
    col2.setEditingSupport(editingSupport);
    TreeViewerColumn col3 = new TreeViewerColumn(viewer, SWT.NONE);
    col3.getColumn().setWidth(colWidth[2]);
    col3.setLabelProvider(new ActionColumnLabelProvider());
    viewer.setContentProvider(new MetadataContentProvider());
    viewer.setComparator(ZViewerComparator.INSTANCE);
    viewer.setFilters(new ViewerFilter[] { new DetailsViewerFilter(), new ContentTypeViewerFilter() });
    ZColumnViewerToolTipSupport.enableFor(viewer);
    viewer.setInput(getRootElement());
    parent.getDisplay().asyncExec(() -> {
        if (!parent.isDisposed()) {
            if (expandedElements != null) {
                List<QueryField> elements = new ArrayList<QueryField>();
                StringTokenizer st = new StringTokenizer(expandedElements);
                while (st.hasMoreTokens()) {
                    QueryField qf1 = QueryField.findQueryField(st.nextToken());
                    if (qf1 != null)
                        elements.add(qf1);
                }
                viewer.setExpandedElements(elements.toArray());
                expandedElements = null;
            } else
                viewer.expandToLevel(getExpandLevel());
            if (selectedElement != null) {
                QueryField qf2 = QueryField.findQueryField(selectedElement);
                if (qf2 != null)
                    viewer.setSelection(new StructuredSelection(qf2), true);
                selectedElement = null;
            }
        }
    });
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            updateActions(false);
        }
    });
    UiUtilities.installDoubleClickExpansion(viewer);
    tree.addMouseListener(new MouseAdapter() {
        @Override
        public void mouseUp(MouseEvent e) {
            int col = -1;
            int x = e.x;
            for (int i = 0; i < 3; i++) {
                int w = tree.getColumn(i).getWidth();
                if (x < w) {
                    col = i;
                    break;
                }
                x -= w;
            }
            if (col == 2) {
                TreeItem item = tree.getItem(new Point(e.x, e.y));
                Object element = item.getData();
                if (element instanceof QueryField) {
                    QueryField qfield = (QueryField) element;
                    if (qfield.getAction() != QueryField.ACTION_NONE)
                        processAction(qfield, (e.stateMask & SWT.SHIFT) != 0);
                } else if (element instanceof TrackRecord) {
                    String visit = ((TrackRecord) element).getVisit();
                    if (visit != null)
                        showWebUrl(visit);
                }
            }
        }
    });
    new ColumnLayoutManager(viewer, getColumnWidths(), getColumnMaxWidths());
    addKeyListener();
    addGestureListener(tree);
    // Create the help context id for the viewer's control
    PlatformUI.getWorkbench().getHelpSystem().setHelp(viewer.getControl(), HelpContextIds.METADATA_VIEW);
    makeActions();
    installListeners();
    hookContextMenu();
    contributeToActionBars();
    final QueryField.Visitor qfVisitor = new QueryField.Visitor() {
        @Override
        public void doVisitorWork(QueryField node) {
            viewer.refresh(node);
        }
    };
    Core.getCore().addCatalogListener(new CatalogAdapter() {
        @Override
        public void assetsModified(BagChange<Asset> changes, final QueryField node) {
            for (Asset asset : getNavigationHistory().getSelectedAssets()) {
                if (changes == null || changes.hasChanged(asset)) {
                    Shell shell = getSite().getShell();
                    if (shell != null && !shell.isDisposed())
                        shell.getDisplay().asyncExec(() -> {
                            if (!tree.isDisposed()) {
                                resetCaches();
                                if (node != null)
                                    viewer.expandToLevel(node, qfVisitor.visit(node));
                                else
                                    refresh();
                            }
                        });
                    break;
                }
            }
        }
    });
    updateActions(false);
}

From source file:com.bluexml.side.Requirements.modeler.views.internal.TableView.java

License:Open Source License

/**
 * Create the columns in the tree./*from   w  w w. j  a  va  2  s  . c  o m*/
 * 
 * @param tree
 */
protected void createColumns(final Tree tree) {
    TableLayout layout = new TableLayout();
    tree.setLayout(layout);
    tree.setHeaderVisible(true);

    final IField[] fields = getAllFields();
    ColumnLayoutData[] columnWidths = getSavedColumnData();
    for (int i = 0; i < fields.length; i++) {
        layout.addColumnData(columnWidths[i]);
        TreeColumn tc = new TreeColumn(tree, SWT.NONE, i);
        IField field = fields[i];
        tc.setText(field.getColumnHeaderText());
        tc.setImage(field.getColumnHeaderImage());
        tc.setResizable(columnWidths[i].resizable);
        tc.setMoveable(true);
        tc.addSelectionListener(getHeaderListener());
        tc.setData(field);
        TreeViewerColumn viewerColumn = new TreeViewerColumn(viewer, tc);
        viewerColumn.setLabelProvider(new MarkerViewLabelProvider(field));
    }

    int[] order = restoreColumnOrder(memento);
    if (order != null && order.length == fields.length) {
        tree.setColumnOrder(order);
    }
}

From source file:com.buildml.eclipse.actions.ActionsEditor.java

License:Open Source License

@Override
public void createPartControl(final Composite parent) {

    /* initiate functionality that's common to all editors */
    super.createPartControl(parent);

    /* enable the "actionseditor" context, used for keyboard acceleration */
    IContextService contextService = (IContextService) getSite().getService(IContextService.class);
    contextService.activateContext("com.buildml.eclipse.contexts.actionseditor");

    /* create the main Tree control that the user will view/manipulate */
    Tree actionEditorTree = new Tree(parent,
            SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI | SWT.FULL_SELECTION);
    actionEditorTree.setHeaderVisible(true);
    actionEditorTree.setLinesVisible(true);

    /*/*w  w w  .  j a  v a2s. co m*/
     * The main control in this editor is a TreeViewer that allows the user to
     * browse the structure of the BuildStore's actions. It has two columns:
     *    1) The file system path (shown as a tree).
     *    2) The path's package (shown as a fixed-width column);
     */
    actionsTreeViewer = new VisibilityTreeViewer(actionEditorTree);
    treeColumn = new TreeViewerColumn(actionsTreeViewer, SWT.LEFT);
    treeColumn.getColumn().setAlignment(SWT.LEFT);
    treeColumn.getColumn().setText("Action Command");
    pkgColumn = new TreeViewerColumn(actionsTreeViewer, SWT.RIGHT);
    pkgColumn.getColumn().setAlignment(SWT.LEFT);
    pkgColumn.getColumn().setText("Package");
    filesEditorComposite = parent;

    /*
     * Set the initial column widths so that the path column covers the full editor
     * window, and the package column is empty. Setting the path column
     * to a non-zero pixel width causes it to be expanded to the editor's full width. 
     */
    treeColumn.getColumn().setWidth(1);
    pkgColumn.getColumn().setWidth(0);

    /*
    * Add the tree/table content and label providers.
    */
    contentProvider = new ActionsEditorContentProvider(this, actionMgr);
    ActionsEditorLabelCol1Provider labelProviderCol1 = new ActionsEditorLabelCol1Provider(this, actionMgr);
    ActionsEditorLabelCol2Provider labelProviderCol2 = new ActionsEditorLabelCol2Provider(this, buildStore);
    actionsTreeViewer.setContentProvider(contentProvider);
    treeColumn.setLabelProvider(labelProviderCol1);
    pkgColumn.setLabelProvider(labelProviderCol2);
    ColumnViewerToolTipSupport.enableFor(actionsTreeViewer);

    /*
     * Set up a visibility provider so we know which paths should be visible (at
     * least to start with).
     */
    visibilityProvider = new ActionsEditorVisibilityProvider(visibleActions);
    visibilityProvider.setSecondaryFilterSet(null);
    actionsTreeViewer.setVisibilityProvider(visibilityProvider);

    /*
     * Record the initial set of option bits so that we can later determine
     * which bits have been modified (this is used in refreshView()).
     */
    previousEditorOptionBits = getOptions();

    /* double-clicking on an expandable node will expand/contract that node */
    actionsTreeViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            UIAction node = (UIAction) selection.getFirstElement();
            if (actionsTreeViewer.isExpandable(node)) {
                actionsTreeViewer.setExpandedState(node, !actionsTreeViewer.getExpandedState(node));
            }
        }
    });

    /* create the context menu */
    MenuManager menuMgr = new MenuManager("#PopupMenu");
    menuMgr.setRemoveAllWhenShown(true);
    menuMgr.addMenuListener(new IMenuListener() {
        @Override
        public void menuAboutToShow(IMenuManager manager) {
            manager.add(new Separator("buildmlactions"));
            manager.add(new Separator("additions"));
        }
    });
    Menu menu = menuMgr.createContextMenu(actionsTreeViewer.getControl());
    actionsTreeViewer.getControl().setMenu(menu);
    getSite().registerContextMenu(menuMgr, actionsTreeViewer);
    getSite().setSelectionProvider(actionsTreeViewer);

    /* 
     * When the tree viewer needs to compare its elements, this class
     * (ActionsEditor) provides the equals() and hashcode() methods.
     */
    actionsTreeViewer.setComparer(this);

    /* start by displaying from the root (which changes, depending on our options). */
    actionsTreeViewer.setInput(contentProvider.getRootElements());

    /* based on the size of the set to be displayed, auto-size the tree output */
    int outputSize = getVisibilityFilterSet().size();
    if (outputSize < AUTO_EXPAND_THRESHOLD) {
        actionsTreeViewer.expandAll();
    } else {
        actionsTreeViewer.expandToLevel(2);
    }
    /* 
     * Now that we've created all the widgets, force options to take effect. Note
     * that these setters have side effects that wouldn't have taken effect if
     * there were no widgets.
     */
    setOptions(getOptions());
    setFilterPackageSet(getFilterPackageSet());
    setVisibilityFilterSet(getVisibilityFilterSet());

    /*
     * Add a "drag source" handler so that we can copy/move actions around.
     */
    new ActionsEditorDragSource(actionsTreeViewer, buildStore);
}

From source file:com.cloudbees.eclipse.dev.ui.views.jobs.JobsView.java

License:Open Source License

private TreeViewerColumn createColumn(final String colName, final int width, final int sortCol,
        ColumnLabelProvider labelProvider) {
    final TreeViewerColumn col = new TreeViewerColumn(treeViewer, SWT.NONE);

    col.setLabelProvider(labelProvider);

    if (width > 0) {
        col.getColumn().setWidth(width);
    }/*from  w w w  .  j  a  v a2  s . c  om*/

    col.getColumn().setText(colName);
    col.getColumn().setMoveable(true);

    if (sortCol >= 0) {

        col.getColumn().addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(final SelectionEvent e) {

                int newOrder = SWT.DOWN;

                if (treeViewer.getTree().getSortColumn().equals(col)
                        && treeViewer.getTree().getSortDirection() == SWT.DOWN) {
                    newOrder = SWT.UP;
                }

                treeViewer.getTree().setSortColumn(col.getColumn());
                treeViewer.getTree().setSortDirection(newOrder);
                JobSorter newSorter = new JobSorter(sortCol);
                newSorter.setDirection(newOrder);
                JobsView.this.treeViewer.setSorter(newSorter);
            }
        });
    }
    return col;
}

From source file:com.contrastsecurity.ide.eclipse.ui.internal.model.EventsTab.java

License:Open Source License

public EventsTab(Composite parent, int style) {
    super(parent, style);
    TreeColumnLayout layout = new TreeColumnLayout();
    getControl().setLayout(layout);/*from w  w  w . j  a  v a2  s . c o m*/
    viewer = new TreeViewer(getControl(), SWT.FULL_SELECTION | SWT.V_SCROLL | SWT.H_SCROLL);
    GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true);
    viewer.getTree().setLayoutData(gd);

    TreeViewerColumn typeColumn = new TreeViewerColumn(viewer, SWT.NONE);
    layout.setColumnData(typeColumn.getColumn(), new ColumnWeightData(400));

    viewer.setLabelProvider(new EventLabelProvider(viewer));
    viewer.setContentProvider(new EventContentProvider());
    viewer.getTree().addMouseListener(new MouseListener() {

        @Override
        public void mouseUp(MouseEvent e) {
        }

        @Override
        public void mouseDown(MouseEvent e) {
        }

        @Override
        public void mouseDoubleClick(MouseEvent e) {
            ISelection sel = viewer.getSelection();
            if (sel instanceof IStructuredSelection) {
                Object selected = ((IStructuredSelection) sel).getFirstElement();
                if (selected instanceof EventItem) {
                    EventItem eventItem = (EventItem) selected;
                    if (eventItem.isStacktrace()) {
                        final String str = eventItem.getValue();
                        final String typeName;
                        final int lineNumber;
                        try {
                            typeName = getTypeName(str);
                            lineNumber = getLineNumber(str);
                        } catch (CoreException e1) {
                            ErrorDialog.openError(ContrastUIActivator.getActiveWorkbenchShell(), "Error",
                                    "Stacktrace Error", e1.getStatus());
                            return;
                        }
                        Job search = new Job("Searching for code in workspace...") {
                            @Override
                            protected IStatus run(IProgressMonitor monitor) {
                                Set<IType> result = null;
                                try {
                                    if (str.contains(".java")) {
                                        result = findTypeInWorkspace(typeName);
                                        searchCompleted(result, typeName, lineNumber, null);
                                    } else {
                                        List<IFile> resultFile = findFileInWorkspace(typeName);
                                        searchCompleted(resultFile, typeName, lineNumber, null);
                                    }
                                } catch (CoreException e) {
                                    searchCompleted(null, typeName, lineNumber, e.getStatus());
                                }
                                return Status.OK_STATUS;
                            }

                        };
                        search.schedule();
                    }
                }
            }
        }
    });
}

From source file:com.eclipsesource.rowtemplate.demo.RowTemplateDemo.java

License:Open Source License

private ViewerColumn createViewerColumn(final ColumnViewer viewer, String name, int width) {
    ViewerColumn viewerColumn = null;//from   ww  w .ja  v  a 2 s  .  c o  m
    if (viewer instanceof TableViewer) {
        TableViewer tableViewer = (TableViewer) viewer;
        TableViewerColumn tableColumn = new TableViewerColumn(tableViewer, SWT.NONE);
        //tableColumn.getColumn().setWidth( width );
        tableColumn.getColumn().setText(name);
        viewerColumn = tableColumn;
    } else if (viewer instanceof TreeViewer) {
        TreeViewer treeViewer = (TreeViewer) viewer;
        TreeViewerColumn treeColumn = new TreeViewerColumn(treeViewer, SWT.NONE);
        //treeColumn.getColumn().setWidth( width );
        treeColumn.getColumn().setText(name);
        viewerColumn = treeColumn;
    }
    return viewerColumn;
}

From source file:com.genuitec.eclipse.gerrit.tools.internal.gps.dialogs.ImportProjectsDialog.java

License:Open Source License

private void createRepositoriesGroup(Composite parent) {
    Group group = new Group(parent, SWT.NONE);
    group.setText("Git repositories");
    group.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    group.setLayout(new GridLayout());

    Composite treeParent = new Composite(group, SWT.NONE);
    GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
    data.heightHint = 200;/*from  w ww . ja v a2 s. c o  m*/
    treeParent.setLayoutData(data);
    TreeColumnLayout treeLayout = new TreeColumnLayout();
    treeParent.setLayout(treeLayout);

    TreeViewer viewer = new TreeViewer(treeParent);
    viewer.getTree().setHeaderVisible(true);

    TreeColumn column = new TreeColumn(viewer.getTree(), SWT.NONE);
    column.setText("Name");
    treeLayout.setColumnData(column, new ColumnWeightData(30));

    column = new TreeColumn(viewer.getTree(), SWT.NONE);
    column.setText("State");
    treeLayout.setColumnData(column, new ColumnWeightData(20));

    TreeViewerColumn vc = new TreeViewerColumn(viewer, SWT.NONE);
    column = vc.getColumn();
    column.setText("User name");
    treeLayout.setColumnData(column, new ColumnWeightData(20));
    vc.setEditingSupport(new MyCellEditingSupport(viewer));

    viewer.setContentProvider(new ContentProvider());
    viewer.setLabelProvider(new MyLabelProvider());
    viewer.setInput(null);
    for (IGpsRepositoriesConfig repo : gpsFile.getRepositoryConfigs()) {
        if (repo.getType().equals("git")) { //$NON-NLS-1$
            viewer.setInput(repo.getRepositoriesSetups());
        }
    }

}

From source file:com.github.sdbg.debug.ui.internal.objectinspector.ObjectInspectorView.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    DebugPlugin.getDefault().addDebugEventListener(this);
    getDebugContextService().addDebugContextListener(this);

    sashForm = new SashForm(parent, SWT.VERTICAL);

    treeViewer = new TreeViewer(sashForm, SWT.SINGLE | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.BORDER);
    treeViewer.setAutoExpandLevel(2);//w w w  . ja va2 s .  c o  m
    treeViewer.setLabelProvider(new NameLabelProvider());
    treeViewer.setContentProvider(new ObjectInspectorContentProvider());
    treeViewer.getTree().setHeaderVisible(true);
    treeViewer.getTree().setLinesVisible(true);
    treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            ISelection sel = event.getSelection();
            Object object = SelectionUtil.getSingleElement(sel);

            if (object instanceof IVariable) {
                IVariable variable = (IVariable) object;

                try {
                    presentation.computeDetail(variable.getValue(), new IValueDetailListener() {
                        @Override
                        public void detailComputed(IValue value, String result) {
                            updateStatusLine(result);
                        }
                    });
                } catch (DebugException e) {
                    SDBGDebugUIPlugin.logError(e);
                }
            } else {
                clearStatusLine();
            }
        }
    });
    treeViewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(DoubleClickEvent event) {
            toggleExpansion(event.getSelection());
        }
    });
    getSite().setSelectionProvider(treeViewer);

    TreeViewerColumn nameColumn = new TreeViewerColumn(treeViewer, SWT.LEFT);
    nameColumn.setLabelProvider(new NameLabelProvider());
    nameColumn.getColumn().setText("Name");
    nameColumn.getColumn().setWidth(120);
    nameColumn.getColumn().setResizable(true);

    TreeViewerColumn valueColumn = new TreeViewerColumn(treeViewer, SWT.LEFT);
    valueColumn.setLabelProvider(new ValueLabelProvider());
    valueColumn.getColumn().setText("Value");
    valueColumn.getColumn().setWidth(140);
    valueColumn.getColumn().setResizable(true);

    Composite sourceContainer = new Composite(sashForm, SWT.NONE);
    GridLayoutFactory.fillDefaults().applyTo(sourceContainer);
    Label label = new Label(sourceContainer, SWT.NONE);
    label.setText("Enter expression to evaluate:");
    GridDataFactory.fillDefaults().grab(true, false).align(SWT.FILL, SWT.CENTER).applyTo(label);

    sourceViewer = new SourceViewer(sourceContainer, null, SWT.V_SCROLL | SWT.WRAP | SWT.BORDER);
    sourceViewer.configure(getSourceViewerConfiguration());
    sourceViewer.setDocument(createDocument(), new AnnotationModel());
    sourceViewer.setUndoManager(new TextViewerUndoManager(100));
    sourceViewer.getTextWidget().setFont(JFaceResources.getFont(JFaceResources.TEXT_FONT));
    sourceViewer.getTextWidget().setTabs(2);
    sourceViewer.getTextWidget().addVerifyKeyListener(new VerifyKeyListener() {
        @Override
        public void verifyKey(VerifyEvent e) {
            // If they hit enter, but were not holding down ctrl or shift, then evaluate.
            if (e.character == SWT.CR && ((e.stateMask & (SWT.CTRL | SWT.SHIFT)) == 0)) {
                // Cancel the return char.
                e.doit = false;

                if (getCurrentSelection().isEmpty()) {
                    evaluateAndPrint(getCurrentLine());
                } else {
                    evaluateAndPrint(getCurrentSelection());
                }
            }
        }
    });
    GridDataFactory.fillDefaults().grab(true, true).align(SWT.FILL, SWT.FILL)
            .applyTo(sourceViewer.getControl());
    sourceViewer.getDocument().addDocumentListener(new IDocumentListener() {
        @Override
        public void documentAboutToBeChanged(DocumentEvent event) {

        }

        @Override
        public void documentChanged(DocumentEvent event) {
            updateActions();
        }
    });
    sourceViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            updateActions();
        }
    });

    sourceViewer.activatePlugins();

    createActions();
    createGlobalActionHandlers();
    hookContextMenu();
    updateActions();

    configureToolBar(getViewSite().getActionBars().getToolBarManager());

    sashForm.setWeights(new int[] { 60, 40 });
    sashForm.addControlListener(new ControlAdapter() {
        @Override
        public void controlResized(ControlEvent e) {
            updateSashOrientation(sashForm);
        }
    });

    restoreState(memento);

    updateSashOrientation(sashForm);

    historyList.addListener(new HistoryListListener<ObjectInspectorHistoryItem>() {
        @Override
        public void historyAboutToChange(final ObjectInspectorHistoryItem current) {
            Display.getDefault().syncExec(new Runnable() {
                @Override
                public void run() {
                    saveSourceViewerInfo(current);
                }
            });
        }

        @Override
        public void historyChanged(ObjectInspectorHistoryItem current) {
            Display.getDefault().asyncExec(new Runnable() {
                @Override
                public void run() {
                    ObjectInspectorHistoryItem item = historyList.getCurrent();

                    inspectValueImpl((item != null && item.getValue() != null) ? item.getValue() : null);

                    restoreSourceViewerInfo(item);
                }
            });
        }
    });
}

From source file:com.google.dart.tools.debug.ui.internal.objectinspector.ObjectInspectorView.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    SashForm sash = new SashForm(parent, SWT.VERTICAL);

    treeViewer = new TreeViewer(sash, SWT.SINGLE | SWT.V_SCROLL | SWT.FULL_SELECTION);
    treeViewer.setLabelProvider(new NameLabelProvider());
    treeViewer.setContentProvider(new ObjectInspectorContentProvider());
    treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override//from ww  w . jav a  2s  . co  m
        public void selectionChanged(SelectionChangedEvent event) {
            ISelection sel = event.getSelection();
            Object object = SelectionUtil.getSingleElement(sel);

            if (object instanceof IVariable) {
                IVariable variable = (IVariable) object;

                try {
                    presentation.computeDetail(variable.getValue(), new IValueDetailListener() {
                        @Override
                        public void detailComputed(IValue value, String result) {
                            updateStatusLine(result);
                        }
                    });
                } catch (DebugException e) {
                    DartDebugUIPlugin.logError(e);
                }
            } else {
                clearStatusLine();
            }
        }
    });

    TreeViewerColumn nameColumn = new TreeViewerColumn(treeViewer, SWT.LEFT);
    nameColumn.setLabelProvider(new NameLabelProvider());
    nameColumn.getColumn().setText("Name");
    nameColumn.getColumn().setWidth(120);
    nameColumn.getColumn().setResizable(true);

    TreeViewerColumn valueColumn = new TreeViewerColumn(treeViewer, SWT.LEFT);
    valueColumn.setLabelProvider(new ValueLabelProvider());
    valueColumn.getColumn().setText("Value");
    valueColumn.getColumn().setWidth(140);
    valueColumn.getColumn().setResizable(true);

    Tree tree = treeViewer.getTree();
    tree.setHeaderVisible(true);

    sourceViewer = new SourceViewer(sash, null, SWT.V_SCROLL | SWT.WRAP);
    sourceViewer.configure(getSourceViewerConfiguration());
    sourceViewer.setDocument(createDocument());
    sourceViewer.setUndoManager(new TextViewerUndoManager(100));
    sourceViewer.getTextWidget().setFont(JFaceResources.getFont(JFaceResources.TEXT_FONT));
    sourceViewer.getTextWidget().setTabs(2);
    sourceViewer.getDocument().addDocumentListener(new IDocumentListener() {
        @Override
        public void documentAboutToBeChanged(DocumentEvent event) {

        }

        @Override
        public void documentChanged(DocumentEvent event) {
            updateActions();
        }
    });
    sourceViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            updateActions();
        }
    });

    sourceViewer.activatePlugins();

    createActions();
    createGlobalActionHandlers();
    hookContextMenu();
    updateActions();

    //    PresentationReconciler presentationReconciler = new PresentationReconciler();
    //    presentationReconciler.install(textViewer);

    sash.setWeights(new int[] { 60, 40 });
}