Package org.eclipse.swt.widgets

Examples of org.eclipse.swt.widgets.Tree


    public DebuggerTraceView() {
    }

    @Override
    protected Viewer createViewer(final Composite parent) {
        viewer = new TreeViewer(new Tree(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI
                | SWT.FULL_SELECTION));
        // setViewer(viewer);
        // super.createPartControl(parent);
        // parent.setLayout(new FillLayout());
View Full Code Here


        return new TreeContentProvider();
    }

    private void createColumns() {

        final Tree tree = viewer.getTree();
        final TableLayout layout = new TableLayout();
        TreeViewerColumn column;
        final String[] names = {
                "Kind", "Function", org.erlide.debug.ui.views.ActionMessages.getString("DebuggerTraceView.5") }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
        for (final String name : names) {
            column = new TreeViewerColumn(viewer, SWT.NONE);
            final TreeColumn treeColumn = column.getColumn();
            treeColumn.setResizable(true);
            treeColumn.setMoveable(true);
            treeColumn.addSelectionListener(new SelectionListener() {

                @Override
                public void widgetDefaultSelected(final SelectionEvent e) {
                }

                @Override
                public void widgetSelected(final SelectionEvent e) {
                }
            });

            // column.getColumn().setData(MARKER_FIELD, markerField);
            // Show the help in the first column
            column.setLabelProvider(new ColumnLabelProvider());
            treeColumn.setText(name);
            treeColumn.setToolTipText(name);
        }
        // column = new TreeViewerColumn(viewer, SWT.NONE);
        // treeColumn = column.getColumn();
        // treeColumn.setResizable(true);
        // treeColumn.setMoveable(true);
        // column.setLabelProvider(new ColumnLabelProvider());
        // column.getColumn().setImage(markerField.getColumnHeaderImage());

        // final EditingSupport support = markerField
        // .getEditingSupport(viewer);
        // if (support != null) {
        // column.setEditingSupport(support);
        // }

        // if (builder.getPrimarySortField().equals(markerField)) {
        // updateDirectionIndicator(column.getColumn(), markerField);
        // }

        int columnWidth = -1;

        for (int i = 0; i < names.length; ++i) {
            if (i == 0) {
                // Compute and store a font metric
                final GC gc = new GC(tree);
                gc.setFont(tree.getFont());
                final FontMetrics fontMetrics = gc.getFontMetrics();
                gc.dispose();
                columnWidth = Math.max(100, fontMetrics.getAverageCharWidth() * 20);
            }

            // if (columnWidths != null) {
            // final Integer value = columnWidths.getInteger(getFieldId(column
            // .getColumn()));
            //
            // // Make sure we get a useful value
            // if (value != null && value.intValue() > 0) {
            // columnWidth = value.intValue();
            // }
            // }

            // // Take trim into account if we are using the default value, but
            // not
            // // if it is restored.
            // if (columnWidth < 0) {
            // layout.addColumnData(new ColumnPixelData(markerField
            // .getDefaultColumnWidth(tree), true, true));
            // } else {
            layout.addColumnData(new ColumnPixelData(columnWidth, true));
            // }
        }
        // }

        // Remove extra columns
        // if (currentColumns.length > fields.length) {
        // for (int i = fields.length; i < currentColumns.length; i++) {
        // currentColumns[i].dispose();
        //
        // }
        // }

        viewer.getTree().setLayout(layout);
        tree.setLinesVisible(true);
        tree.setHeaderVisible(true);
        tree.layout(true);

    }
View Full Code Here

   *            the parent control
   * @param style
   *            the SWT style bits used to create the tree.
   */
  public TreeViewer(Composite parent, int style) {
    this(new Tree(parent, style));
  }
View Full Code Here

   *
   * @see org.eclipse.jface.viewers.AbstractTreeViewer#hookControl(org.eclipse.swt.widgets.Control)
   */
  protected void hookControl(Control control) {
    super.hookControl(control);
    Tree treeControl = (Tree) control;

    if ((treeControl.getStyle() & SWT.VIRTUAL) != 0) {
      treeControl.addDisposeListener(new DisposeListener() {
        public void widgetDisposed(DisposeEvent e) {
          treeIsDisposed = true;
          unmapAllElements();
        }
      });
      treeControl.addListener(SWT.SetData, new Listener() {

        public void handleEvent(Event event) {
          if (contentProviderIsLazy) {
            TreeItem item = (TreeItem) event.item;
            TreeItem parentItem = item.getParentItem();
View Full Code Here

        TreeItem ti = (TreeItem) widget;
        int count = ti.getItemCount() + childElements.length;
        ti.setItemCount(count);
        ti.clearAll(false);
      } else {
        Tree t = (Tree) widget;
        t.setItemCount(t.getItemCount() + childElements.length);
        t.clearAll(false);
      }
      return;
    }
    super.internalAdd(widget, parentElement, childElements);
  }
View Full Code Here

        .asList(((TreeSelection) getSelection()).getPaths()));
    preservingSelection(new Runnable() {
      public void run() {
        TreePath removedPath = null;
        if (internalIsInputOrEmptyPath(parentOrTreePath)) {
          Tree tree = (Tree) getControl();
          if (index < tree.getItemCount()) {
            TreeItem item = tree.getItem(index);
            if (item.getData() != null) {
              removedPath = getTreePathFromItem(item);
              disassociate(item);
            }
            item.dispose();
View Full Code Here

    @Override
    protected Control createDialogArea(final Composite parent) {

        final Composite composite = (Composite) super.createDialogArea(parent);
        final Tree functionClausesTree;

        final Label label = new Label(composite, SWT.WRAP);
        label.setText("Please select the function clause which against should fold!");
        final GridData minToksData = new GridData(GridData.GRAB_HORIZONTAL
                | GridData.GRAB_VERTICAL | GridData.HORIZONTAL_ALIGN_FILL
                | GridData.VERTICAL_ALIGN_CENTER);
        minToksData.widthHint = convertHorizontalDLUsToPixels(IDialogConstants.MINIMUM_MESSAGE_AREA_WIDTH);
        label.setLayoutData(minToksData);
        label.setFont(parent.getFont());

        functionClausesTree = new Tree(composite, SWT.BORDER);
        final GridData treeData = new GridData(GridData.GRAB_HORIZONTAL
                | GridData.GRAB_VERTICAL | GridData.HORIZONTAL_ALIGN_FILL
                | GridData.VERTICAL_ALIGN_CENTER);
        treeData.widthHint = convertHorizontalDLUsToPixels(IDialogConstants.MINIMUM_MESSAGE_AREA_WIDTH);
        functionClausesTree.setLayoutData(treeData);

        try {
            final Collection<IErlModule> erlmodules = ErlangEngine.getInstance()
                    .getModelUtilService()
                    .getProject(GlobalParameters.getWranglerSelection().getErlElement())
                    .getModules();

            for (final IErlModule m : erlmodules) {
                // must refresh the scanner!
                m.open(null);

                final TreeItem moduleName = new TreeItem(functionClausesTree, 0);
                moduleName.setText(m.getModuleName());
                moduleName.setData(m);
                final List<IErlFunction> functions = filterFunctions(m.getChildren());
                for (final IErlFunction f : functions) {
                    final TreeItem functionName = new TreeItem(moduleName, 0);
                    functionName.setText(f.getNameWithArity());
                    final List<IErlFunctionClause> clauses = filterClauses(f
                            .getChildren());
                    functionName.setData(f);
                    for (final IErlFunctionClause c : clauses) {
                        final TreeItem clauseName = new TreeItem(functionName, 0);
                        clauseName.setText(String.valueOf(c.getName()));
                        clauseName.setData(c);
                    }
                }
            }

            // listen to treeitem selection
            functionClausesTree.addSelectionListener(new SelectionListener() {

                @Override
                public void widgetDefaultSelected(final SelectionEvent e) {
                }

                // if a function or a function clause is selected, then
                // highlight it
                // and store the selection
                @Override
                public void widgetSelected(final SelectionEvent e) {

                    final TreeItem[] selectedItems = functionClausesTree.getSelection();

                    if (selectedItems.length > 0) {
                        final TreeItem treeItem = selectedItems[0];
                        final Object data = treeItem.getData();
                        if (data instanceof IErlFunctionClause) {
View Full Code Here

                /*ISSUE: May have to create a interface with method:
                 setSelection(Point p) so that user's custom widgets
                 can use this class. If we keep this option. */
                if (w instanceof Tree) {
                    Tree tree = (Tree) w;
                    TreeItem item = tree.getItem(new Point(e.x, e.y));
                    if (item != null) {
            tree.setSelection(new TreeItem[] { item });
          }
                    selEvent.item = item;
                } else if (w instanceof Table) {
                    Table table = (Table) w;
                    TableItem item = table.getItem(new Point(e.x, e.y));
View Full Code Here

          "Illegal value of direction argument."); //$NON-NLS-1$
    }
  }

  private ViewerRow getRowBelow(boolean sameLevel) {
    Tree tree = item.getParent();

    // This means we have top-level item
    if (item.getParentItem() == null) {
      if (sameLevel || !item.getExpanded()) {
        int index = tree.indexOf(item) + 1;

        if (index < tree.getItemCount()) {
          return new TreeViewerRow(tree.getItem(index));
        }
      } else if (item.getExpanded() && item.getItemCount() > 0) {
        return new TreeViewerRow(item.getItem(0));
      }
    } else {
View Full Code Here

    return null;
  }

  private ViewerRow getRowAbove(boolean sameLevel) {
    Tree tree = item.getParent();

    // This means we have top-level item
    if (item.getParentItem() == null) {
      int index = tree.indexOf(item) - 1;
      TreeItem nextTopItem = null;

      if (index >= 0) {
        nextTopItem = tree.getItem(index);
      }

      if (nextTopItem != null) {
        if (sameLevel) {
          return new TreeViewerRow(nextTopItem);
View Full Code Here

TOP

Related Classes of org.eclipse.swt.widgets.Tree

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.