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

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

Introduction

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

Prototype

public Tree getTree() 

Source Link

Document

Returns this tree viewer's tree control.

Usage

From source file:org.eclipse.babel.runtime.actions.LocalizeDialog.java

License:Open Source License

/**
 * Create the table part of the dialog./*from w  w w  .  ja v a  2 s . c  o  m*/
 *
 * @param parent  the parent composite to contain the dialog area
 */
protected void createFeaturesTree(Composite parent) {
    TreeViewer table = new TreeViewer(parent,
            SWT.H_SCROLL | SWT.V_SCROLL | SWT.SINGLE | SWT.FULL_SELECTION | SWT.BORDER);

    GridData gridData = new GridData(GridData.FILL, GridData.FILL, true, true);
    gridData.heightHint = convertVerticalDLUsToPixels(TABLE_HEIGHT);
    table.getTree().setLayoutData(gridData);
    table.getTree().setHeaderVisible(true);

    //      ViewContentProvider contentProvider;

    //table.setContentProvider(contentProvider);
    //      table.setLabelProvider(labelProvider);

    table.getTree().setLinesVisible(true);
    table.getTree().setFont(parent.getFont());
    //      table.addSelectionListener(new SelectionAdapter() {
    //      public void widgetSelected(SelectionEvent e) {
    //      AboutBundleGroupData info = (AboutBundleGroupData) e.item
    //      .getData();
    //      updateButtons(info);
    //      }
    //      });

    int[] columnWidths = { convertHorizontalDLUsToPixels(120), convertHorizontalDLUsToPixels(120),
            convertHorizontalDLUsToPixels(70), convertHorizontalDLUsToPixels(130) };

    //      for (int i = 0; i < columnTitles.length; i++) {
    //      TreeColumn tableColumn = new TreeColumn(table, SWT.NULL);
    //      tableColumn.setWidth(columnWidths[i]);
    //      tableColumn.setText(columnTitles[i]);
    //      final int columnIndex = i;
    //      tableColumn.addSelectionListener(new SelectionAdapter() {
    //      public void widgetSelected(SelectionEvent e) {
    //      sort(columnIndex);
    //      }
    //      });
    //      }

    //      // create a table row for each bundle group
    //      String selId = lastSelection == null ? null : lastSelection.getId();
    //      int sel = 0;
    //      for (int i = 0; i < bundleGroupInfos.length; i++) {
    //      if (bundleGroupInfos[i].getId().equals(selId)) {
    //      sel = i;
    //      }

    //      TableItem item = new TableItem(table, SWT.NULL);
    //      item.setText(createRow(bundleGroupInfos[i]));
    //      item.setData(bundleGroupInfos[i]);
    //      }

    // if an item was specified during construction, it should be
    // selected when the table is created
    //      if (bundleGroupInfos.length > 0) {
    //      table.setSelection(sel);
    //      table.showSelection();
    //      }
}

From source file:org.eclipse.babel.runtime.actions.TranslatableTreeComposite.java

License:Open Source License

public TranslatableTreeComposite(Composite parent, ITreeContentProvider contentProvider, Object input,
        TranslatableSet languageSet, Set<TranslatableResourceBundle> updatedBundles) {
    super(parent, SWT.NONE);

    setLayout(new GridLayout(1, false));

    final TreeViewer viewer = new TreeViewer(this,
            SWT.FULL_SELECTION | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL);
    treeControl = viewer.getTree();
    viewer.getTree().setHeaderVisible(true);
    viewer.getTree().setLinesVisible(true);
    viewer.getTree().setLayoutData(new GridData(GridData.FILL, GridData.FILL, true, true));
    viewer.setContentProvider(contentProvider);

    createTreeColumns(viewer, languageSet, updatedBundles);

    viewer.setInput(input);//from  ww w .  j  av  a2 s. c  om

    ColumnViewerToolTipSupport.enableFor(viewer);

    createButtonsSection(this, viewer, languageSet, updatedBundles)
            .setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
}

From source file:org.eclipse.babel.runtime.actions.TranslatableTreeComposite.java

License:Open Source License

private void createLocaleColumn(final TreeViewer viewer, final Set<TranslatableResourceBundle> updatedBundles,
        final Locale locale, final Locale previousLocale) {
    TreeViewerColumn column = new TreeViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setWidth(150);//from  w w  w  .  j  av  a 2 s  . c o m
    column.getColumn().setText(locale.getDisplayName());
    column.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            ITranslatableText text = getTranslatableText(element);
            String message = text.getLocalizedText(locale);
            if (previousLocale == null) {
                return message;
            } else {
                String fallbackMessage = text.getLocalizedText(previousLocale);
                return (message.equals(fallbackMessage)) ? "" : message; //$NON-NLS-1$
            }
        }

        @Override
        public Color getForeground(Object element) {
            ITranslatableText text = getTranslatableText(element);
            return (text instanceof TranslatableText && ((TranslatableText) text).isDirty(locale))
                    ? Display.getDefault().getSystemColor(SWT.COLOR_DARK_MAGENTA)
                    : null;
        }

    });

    column.setEditingSupport(new EditingSupport(viewer) {
        @Override
        protected boolean canEdit(Object element) {
            ITranslatableText text = getTranslatableText(element);
            return text instanceof TranslatableText;
        }

        @Override
        protected CellEditor getCellEditor(Object element) {
            return new TextCellEditor(viewer.getTree());
        }

        @Override
        protected Object getValue(Object element) {
            // The text cell editor requires that null is never returned
            // by this method.
            ITranslatableText text = getTranslatableText(element);
            String message = text.getLocalizedText(locale);
            if (previousLocale == null) {
                return message;
            } else {
                String fallbackMessage = text.getLocalizedText(previousLocale);
                return (message.equals(fallbackMessage)) ? "" : message; //$NON-NLS-1$
            }
        }

        @Override
        protected void setValue(Object element, Object value) {
            ITranslatableText translatableText = getTranslatableText(element);

            String text = (String) value;

            /*
             * If the text is all white space then we assume that the user
             * is clearing out the locale override.  The text would then be
             * obtained by looking to the parent locale.  For example, if the
             * user was using Canadian English and saw "colour", but the user then blanked
             * that out, then "color" would be used for Canadian locales.
             * 
             * Note this means that an entry must be placed in the delta properties
             * file for Canadian English.  "Colour" would be in the original (immutable)
             * properties file, and so we need an entry in the delta file to say that
             * we should ignore that and use whatever might be used for US-English.
             * We should not simply put the current US-English in the file because then 
             * we would not pick up future changes to the US-English.    
             * 
             * We never allow the user to set text to be blank.  If the original
             * developer displayed a message, then a message must be displayed,
             * regardless of the language.  It is conceivable that this could be
             * a problem in very specific circumstances.  Suppose a developer uses
             * a message to be the suffix that is appended to a word to make it plural.
             * In English the text for most words would be "s".  In another language
             * the word may be the same in the singular and plural so would be the empty
             * string.  This is, however, not a good example, because that would be bad
             * localization.  So this is probably not a problem.
             * 
             * This is a restriction caused by the UI design of this dialog.  The resource
             * bundle implementation would allow an empty string to be passed
             * and that would result in the user seeing a blank string.  Null, on the
             * other hand, results in the value from the parent locale being used.
             */

            text = text.trim();
            if (text.length() == 0) {
                // Setting null means use value from parent locale.
                text = null;
            }

            // If the text can be edited, the text must be of type TranslatableText
            // because that is the only type that the user can edit.
            ((TranslatableText) translatableText).setLocalizedText(locale, text, updatedBundles);
            viewer.update(element, null);

            revertButton.setEnabled(((TranslatableText) translatableText).isDirty(locale));
        }
    });

    column.getColumn().setData(locale);
}

From source file:org.eclipse.babel.runtime.actions.TranslatableTreeComposite.java

License:Open Source License

private Control createButtonsSection(Composite parent, final TreeViewer viewer, TranslatableSet languageSet,
        final Set<TranslatableResourceBundle> updatedBundles) {
    Composite container = new Composite(parent, SWT.NONE);
    container.setLayout(new GridLayout());

    revertButton = new Button(container, SWT.PUSH);
    languageSet.associate(revertButton, Messages.LocalizeDialog_CommandLabel_Revert);
    languageSet.associateToolTip(revertButton, Messages.LocalizeDialog_CommandTooltip_Revert);
    revertButton.setEnabled(false);/*from   w  w  w.  ja  v  a2s.  c om*/
    GridData gd = new GridData();
    gd.horizontalIndent = 20;
    revertButton.setLayoutData(gd);

    revertButton.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            int columnIndex = focusCellManager.getFocusCell().getColumnIndex();
            Object element = focusCellManager.getFocusCell().getElement();
            ITranslatableText translatableText = getTranslatableText(element);
            Locale locale = (Locale) viewer.getTree().getColumn(columnIndex).getData();

            // If this button is enabled, the text must be of type TranslatableText
            // because that is the only type that the user can edit.
            ((TranslatableText) translatableText).revertLocalizedText(locale, updatedBundles);
            viewer.update(element, null);
        }
    });

    return container;
}

From source file:org.eclipse.babel.tapiji.tools.core.ui.widgets.provider.ResKeyTreeLabelProvider.java

License:Open Source License

public void updateTreeViewer(TreeViewer treeViewer) {

    for (TreeItem item : treeViewer.getTree().getItems()) {
        Rectangle bounds = item.getBounds();
        ViewerCell cell = treeViewer.getCell(new Point(bounds.x, bounds.y));
        ViewerRow viewerRow = cell.getViewerRow();

        for (int i = 0; i < viewerRow.getColumnCount(); i++) {
            updateCell(viewerRow.getCell(i));
        }/*w  ww . j  a v a 2s  .  c  o  m*/
    }
}

From source file:org.eclipse.birt.data.oda.pojo.ui.impl.dialogs.ColumnMappingDialog.java

License:Open Source License

private void createTreeViewer(Composite paramArea) {
    Composite left = new Composite(paramArea, SWT.NONE);
    left.setLayout(new GridLayout(1, false));

    GridData data = new GridData(GridData.FILL_BOTH);
    data.widthHint = 150;/*from   ww  w . ja  va  2  s. c  o m*/

    left.setLayoutData(data);

    Label label = new Label(left, SWT.NONE);
    label.setText(Messages.getString("ColumnMappingDialog.Label.methodHierarchy")); //$NON-NLS-1$

    final TreeViewer treeViewer = new TreeViewer(left, SWT.BORDER | SWT.SINGLE);

    treeViewer.getTree().setLayoutData(new GridData(GridData.FILL_BOTH));
    TreeProvider treeProvider = new TreeProvider();
    treeViewer.setLabelProvider(treeProvider);
    treeViewer.setContentProvider(treeProvider);
    if (this.input != null)
        treeViewer.setInput(this.input.getMappingPath());

    treeViewer.expandAll();
    TreeItem[] items = treeViewer.getTree().getItems();
    TreeItem item = null;
    while (items.length > 0) {
        item = items[0];
        items = item.getItems();
    }
    if (item != null)
        treeViewer.getTree().select(item);

    treeViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            editBtn.setEnabled(false);
            if (treeViewer.getTree().getSelectionCount() == 1) {
                Object item = treeViewer.getTree().getSelection()[0].getData();
                if (item instanceof MethodSource) {
                    checkBoxViewer.setInput((MethodSource) item);
                    // updateCheckBoxStatus( );
                    checkBoxViewer.refresh();
                }
            }
        }
    });
}

From source file:org.eclipse.birt.report.designer.data.ui.dataset.PromptParameterDialog.java

License:Open Source License

private void createParameterGroup(Composite composite) {
    final Group group2 = new Group(composite, SWT.NONE);
    group2.setLayout(new GridLayout());
    group2.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 8));// GridData.FILL_BOTH));

    group2.setText(Messages.getString("PromptParameterDialog.parameterGroup.title"));

    Label label1 = new Label(group2, SWT.NONE);
    label1.setText(Messages.getString("PromptParameterDialog.parameterGroup.label"));

    TreeViewer viewer2 = new TreeViewer(group2, SWT.FULL_SELECTION);

    Tree tableTree2 = viewer2.getTree();
    GridData gd = new GridData(GridData.FILL_BOTH);
    tableTree2.setLayoutData(gd);//from   w ww  .j a  v a 2 s  .c  o  m
    tableTree2.setHeaderVisible(true);
    tableTree2.setLinesVisible(true);

    TreeViewerColumn tvc21 = new TreeViewerColumn(viewer2, SWT.NONE);
    tvc21.getColumn().setText(Messages.getString("PromptParameterDialog.parameterGroup.nameColumn")); //$NON-NLS-1$
    tvc21.getColumn().setWidth(200);
    tvc21.setLabelProvider(new NameLabelProvider(selectedStatusMap));
    tvc21.setEditingSupport(new ParameterEditingSupport(viewer2, selectedStatusMap));

    TreeViewerColumn tvc22 = new TreeViewerColumn(viewer2, SWT.NONE);
    tvc22.getColumn().setText(Messages.getString("PromptParameterDialog.parameterGroup.previousValue")); //$NON-NLS-1$
    tvc22.getColumn().setWidth(200);
    tvc22.setLabelProvider(new PreviousValueLabelProvider());

    TreeViewerColumn tvc23 = new TreeViewerColumn(viewer2, SWT.NONE);
    tvc23.getColumn().setText(Messages.getString("PromptParameterDialog.parameterGroup.revisedValue")); //$NON-NLS-1$
    tvc23.getColumn().setWidth(200);
    tvc23.setLabelProvider(new RevisedValueLabelProvider());

    viewer2.setContentProvider(new ParameterContentProvider());
    viewer2.setInput(((IAmbiguousOption) input).getAmbiguousParameters());
    viewer2.expandAll();
}

From source file:org.eclipse.birt.report.designer.testutil.ViewerUnti.java

License:Open Source License

/**
 * View Tree//  ww  w . ja  v  a  2s . c om
 * 
 * @param treeViewer
 *            the tree viewer to display
 */
public static void viewTree(TreeViewer treeViewer) {
    viewTree(treeViewer.getTree());
}

From source file:org.eclipse.birt.report.designer.ui.dialogs.ExpressionBuilder.java

License:Open Source License

private void initTree(TreeViewer treeViewer) {
    final Tree tree = treeViewer.getTree();

    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 150;//from   www  . ja va 2s  . co m
    tree.setLayoutData(gd);
    tree.setToolTipText(null);

    treeViewer.setLabelProvider(new ExpressionLabelProvider());
    treeViewer.setContentProvider(new ITreeContentProvider() {

        public Object[] getChildren(Object parentElement) {
            return provider.getChildren(parentElement);
        }

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

        public boolean hasChildren(Object element) {
            return provider.hasChildren(element);
        }

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

        public void dispose() {
        }

        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }
    });
    treeViewer.addSelectionChangedListener(selectionListener);
    treeViewer.addDoubleClickListener(doubleClickListener);
}

From source file:org.eclipse.birt.report.designer.ui.dialogs.TreeValueDialog.java

License:Open Source License

/**
 * Creates and initializes the tree viewer.
 * // w w  w .j av  a  2 s  . c  o  m
 * @param parent
 *            the parent composite
 * @return the tree viewer
 * @see #doCreateTreeViewer(Composite, int)
 */
protected TreeViewer createTreeViewer(Composite parent) {
    TreeViewer treeViewer = super.createTreeViewer(parent);
    Tree tree = treeViewer.getTree();
    assert (tree != null);
    for (int i = 0; i < listeners.size(); i++) {
        int type = listeners.get(i).type;
        Listener listener = listeners.get(i).listener;
        tree.addListener(type, listener);
    }
    return treeViewer;
}