Example usage for org.eclipse.jface.databinding.viewers ObservableListContentProvider ObservableListContentProvider

List of usage examples for org.eclipse.jface.databinding.viewers ObservableListContentProvider ObservableListContentProvider

Introduction

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

Prototype

public ObservableListContentProvider() 

Source Link

Document

Constructs an ObservableListContentProvider.

Usage

From source file:org.eclipse.e4.tools.emf.ui.internal.common.component.virtual.VPerspectiveControlEditor.java

License:Open Source License

private Composite createForm(Composite parent, EMFDataBindingContext context, WritableValue master) {
    CTabFolder folder = new CTabFolder(parent, SWT.BOTTOM);

    CTabItem item = new CTabItem(folder, SWT.NONE);
    item.setText(Messages.ModelTooling_Common_TabDefault);

    parent = createScrollableContainer(folder);
    item.setControl(parent.getParent());

    {/*from  w ww.  jav a2s.c o m*/
        viewer = new TableViewer(parent);
        ObservableListContentProvider cp = new ObservableListContentProvider();
        viewer.setContentProvider(cp);
        viewer.setLabelProvider(new ComponentLabelProvider(getEditor(), Messages));
        GridData gd = new GridData(GridData.FILL_BOTH);
        viewer.getControl().setLayoutData(gd);

        Composite buttonComp = new Composite(parent, SWT.NONE);
        buttonComp.setLayoutData(new GridData(GridData.FILL, GridData.END, false, false));
        GridLayout gl = new GridLayout(2, false);
        gl.marginLeft = 0;
        gl.marginRight = 0;
        gl.marginWidth = 0;
        gl.marginHeight = 0;
        buttonComp.setLayout(gl);

        Button b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Up);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_arrow_up));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false, 2, 1));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        MElementContainer<?> container = (MElementContainer<?>) getMaster().getValue();
                        int idx = container.getChildren().indexOf(obj) - 1;
                        if (idx >= 0) {
                            if (Util.moveElementByIndex(getEditingDomain(), (MUIElement) obj,
                                    getEditor().isLiveModel(), idx)) {
                                viewer.setSelection(new StructuredSelection(obj));
                            }
                        }

                    }
                }
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Down);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_arrow_down));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false, 2, 1));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        MElementContainer<?> container = (MElementContainer<?>) getMaster().getValue();
                        int idx = container.getChildren().indexOf(obj) + 1;
                        if (idx < container.getChildren().size()) {
                            if (Util.moveElementByIndex(getEditingDomain(), (MUIElement) obj,
                                    getEditor().isLiveModel(), idx)) {
                                viewer.setSelection(new StructuredSelection(obj));
                            }
                        }
                    }
                }
            }
        });

        final ComboViewer childrenDropDown = new ComboViewer(buttonComp);
        childrenDropDown.getControl().setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        childrenDropDown.setContentProvider(new ArrayContentProvider());
        childrenDropDown.setLabelProvider(new LabelProvider() {
            @Override
            public String getText(Object element) {
                EClass eclass = (EClass) element;
                return eclass.getName();
            }
        });
        childrenDropDown.setInput(new EClass[] { BasicPackageImpl.Literals.PART_SASH_CONTAINER,
                BasicPackageImpl.Literals.PART_STACK, BasicPackageImpl.Literals.PART,
                BasicPackageImpl.Literals.INPUT_PART, AdvancedPackageImpl.Literals.AREA,
                AdvancedPackageImpl.Literals.PLACEHOLDER });
        childrenDropDown.setSelection(new StructuredSelection(BasicPackageImpl.Literals.PART_SASH_CONTAINER));

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_AddEllipsis);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_table_add));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!childrenDropDown.getSelection().isEmpty()) {
                    EClass eClass = (EClass) ((IStructuredSelection) childrenDropDown.getSelection())
                            .getFirstElement();
                    handleAdd(eClass);
                }
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Remove);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_table_delete));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false, 2, 1));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    List<?> elements = ((IStructuredSelection) viewer.getSelection()).toList();

                    Command cmd = RemoveCommand.create(getEditingDomain(), getMaster().getValue(),
                            UiPackageImpl.Literals.ELEMENT_CONTAINER__CHILDREN, elements);
                    if (cmd.canExecute()) {
                        getEditingDomain().getCommandStack().execute(cmd);
                    }
                }
            }
        });
    }

    folder.setSelection(0);

    return folder;
}

From source file:org.eclipse.e4.tools.emf.ui.internal.common.component.virtual.VRootBindingContexts.java

License:Open Source License

private Composite createForm(Composite parent, EMFDataBindingContext context, WritableValue master) {
    CTabFolder folder = new CTabFolder(parent, SWT.BOTTOM);

    CTabItem item = new CTabItem(folder, SWT.NONE);
    item.setText(Messages.ModelTooling_Common_TabDefault);

    parent = createScrollableContainer(folder);
    item.setControl(parent.getParent());

    {/*www  .  ja  v a 2 s  . com*/
        viewer = new TableViewer(parent);
        ObservableListContentProvider cp = new ObservableListContentProvider();
        viewer.setContentProvider(cp);
        GridData gd = new GridData(GridData.FILL_BOTH);
        viewer.getControl().setLayoutData(gd);
        viewer.setLabelProvider(new ComponentLabelProvider(getEditor(), Messages));

        Composite buttonComp = new Composite(parent, SWT.NONE);
        buttonComp.setLayoutData(new GridData(GridData.FILL, GridData.END, false, false));
        GridLayout gl = new GridLayout();
        gl.marginLeft = 0;
        gl.marginRight = 0;
        gl.marginWidth = 0;
        gl.marginHeight = 0;
        buttonComp.setLayout(gl);

        Button b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Up);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_arrow_up));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        MApplication container = (MApplication) getMaster().getValue();
                        int idx = container.getAddons().indexOf(obj) - 1;
                        if (idx >= 0) {
                            Command cmd = MoveCommand.create(getEditingDomain(), getMaster().getValue(),
                                    CommandsPackageImpl.Literals.BINDING_TABLE_CONTAINER__ROOT_CONTEXT, obj,
                                    idx);

                            if (cmd.canExecute()) {
                                getEditingDomain().getCommandStack().execute(cmd);
                                viewer.setSelection(new StructuredSelection(obj));
                            }
                        }

                    }
                }
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Down);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_arrow_down));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        MApplication container = (MApplication) getMaster().getValue();
                        int idx = container.getAddons().indexOf(obj) + 1;
                        if (idx < container.getAddons().size()) {
                            Command cmd = MoveCommand.create(getEditingDomain(), getMaster().getValue(),
                                    CommandsPackageImpl.Literals.BINDING_TABLE_CONTAINER__ROOT_CONTEXT, obj,
                                    idx);

                            if (cmd.canExecute()) {
                                getEditingDomain().getCommandStack().execute(cmd);
                                viewer.setSelection(new StructuredSelection(obj));
                            }
                        }

                    }
                }
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_AddEllipsis);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_table_add));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                handleAddContext();
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Remove);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_table_delete));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    handleRemoveContexts(((IStructuredSelection) viewer.getSelection()).toList());
                }
            }
        });
    }

    folder.setSelection(0);

    return folder;
}

From source file:org.eclipse.e4.tools.emf.ui.internal.common.component.virtual.VToolBarContributionsEditor.java

License:Open Source License

private Composite createForm(Composite parent, EMFDataBindingContext context, WritableValue master) {
    CTabFolder folder = new CTabFolder(parent, SWT.BOTTOM);

    CTabItem item = new CTabItem(folder, SWT.NONE);
    item.setText(Messages.ModelTooling_Common_TabDefault);

    parent = createScrollableContainer(folder);
    item.setControl(parent.getParent());

    {/*from  w  ww.  ja v a2  s  .  c om*/
        viewer = new TableViewer(parent);
        ObservableListContentProvider cp = new ObservableListContentProvider();
        viewer.setContentProvider(cp);
        GridData gd = new GridData(GridData.FILL_BOTH);
        viewer.getControl().setLayoutData(gd);
        viewer.setLabelProvider(new ComponentLabelProvider(getEditor(), Messages));

        Composite buttonComp = new Composite(parent, SWT.NONE);
        buttonComp.setLayoutData(new GridData(GridData.FILL, GridData.END, false, false));
        GridLayout gl = new GridLayout();
        gl.marginLeft = 0;
        gl.marginRight = 0;
        gl.marginWidth = 0;
        gl.marginHeight = 0;
        buttonComp.setLayout(gl);

        Button b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Up);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_arrow_up));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        MToolBarContributions container = (MToolBarContributions) getMaster().getValue();
                        int idx = container.getToolBarContributions().indexOf(obj) - 1;
                        if (idx >= 0) {
                            Command cmd = MoveCommand.create(getEditingDomain(), getMaster().getValue(),
                                    MenuPackageImpl.Literals.TOOL_BAR_CONTRIBUTIONS__TOOL_BAR_CONTRIBUTIONS,
                                    obj, idx);

                            if (cmd.canExecute()) {
                                getEditingDomain().getCommandStack().execute(cmd);
                                viewer.setSelection(new StructuredSelection(obj));
                            }
                        }

                    }
                }
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Down);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_arrow_down));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        MToolBarContributions container = (MToolBarContributions) getMaster().getValue();
                        int idx = container.getToolBarContributions().indexOf(obj) + 1;
                        if (idx < container.getToolBarContributions().size()) {
                            Command cmd = MoveCommand.create(getEditingDomain(), getMaster().getValue(),
                                    MenuPackageImpl.Literals.TOOL_BAR_CONTRIBUTIONS__TOOL_BAR_CONTRIBUTIONS,
                                    obj, idx);

                            if (cmd.canExecute()) {
                                getEditingDomain().getCommandStack().execute(cmd);
                                viewer.setSelection(new StructuredSelection(obj));
                            }
                        }

                    }
                }
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_AddEllipsis);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_table_add));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                handleAdd();
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Remove);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_table_delete));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    List<?> commands = ((IStructuredSelection) viewer.getSelection()).toList();
                    Command cmd = RemoveCommand.create(getEditingDomain(), getMaster().getValue(),
                            MenuPackageImpl.Literals.TOOL_BAR_CONTRIBUTIONS__TOOL_BAR_CONTRIBUTIONS, commands);
                    if (cmd.canExecute()) {
                        getEditingDomain().getCommandStack().execute(cmd);
                    }
                }
            }
        });
    }

    folder.setSelection(0);

    return folder;
}

From source file:org.eclipse.e4.tools.emf.ui.internal.common.component.virtual.VTrimContributionsEditor.java

License:Open Source License

private Composite createForm(Composite parent, EMFDataBindingContext context, WritableValue master) {
    CTabFolder folder = new CTabFolder(parent, SWT.BOTTOM);

    CTabItem item = new CTabItem(folder, SWT.NONE);
    item.setText(Messages.ModelTooling_Common_TabDefault);

    parent = createScrollableContainer(folder);
    item.setControl(parent.getParent());

    {/*from w  w w.  j av  a  2 s .  c o m*/
        viewer = new TableViewer(parent);
        ObservableListContentProvider cp = new ObservableListContentProvider();
        viewer.setContentProvider(cp);
        GridData gd = new GridData(GridData.FILL_BOTH);
        viewer.getControl().setLayoutData(gd);
        viewer.setLabelProvider(new ComponentLabelProvider(getEditor(), Messages));

        Composite buttonComp = new Composite(parent, SWT.NONE);
        buttonComp.setLayoutData(new GridData(GridData.FILL, GridData.END, false, false));
        GridLayout gl = new GridLayout();
        gl.marginLeft = 0;
        gl.marginRight = 0;
        gl.marginWidth = 0;
        gl.marginHeight = 0;
        buttonComp.setLayout(gl);

        Button b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Up);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_arrow_up));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        MTrimContributions container = (MTrimContributions) getMaster().getValue();
                        int idx = container.getTrimContributions().indexOf(obj) - 1;
                        if (idx >= 0) {
                            Command cmd = MoveCommand.create(getEditingDomain(), getMaster().getValue(),
                                    MenuPackageImpl.Literals.TRIM_CONTRIBUTIONS__TRIM_CONTRIBUTIONS, obj, idx);

                            if (cmd.canExecute()) {
                                getEditingDomain().getCommandStack().execute(cmd);
                                viewer.setSelection(new StructuredSelection(obj));
                            }
                        }

                    }
                }
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Down);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_arrow_down));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        MTrimContributions container = (MTrimContributions) getMaster().getValue();
                        int idx = container.getTrimContributions().indexOf(obj) + 1;
                        if (idx < container.getTrimContributions().size()) {
                            Command cmd = MoveCommand.create(getEditingDomain(), getMaster().getValue(),
                                    MenuPackageImpl.Literals.TRIM_CONTRIBUTIONS__TRIM_CONTRIBUTIONS, obj, idx);

                            if (cmd.canExecute()) {
                                getEditingDomain().getCommandStack().execute(cmd);
                                viewer.setSelection(new StructuredSelection(obj));
                            }
                        }

                    }
                }
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_AddEllipsis);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_table_add));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                handleAdd();
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Remove);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_table_delete));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    List<?> commands = ((IStructuredSelection) viewer.getSelection()).toList();
                    Command cmd = RemoveCommand.create(getEditingDomain(), getMaster().getValue(),
                            MenuPackageImpl.Literals.TRIM_CONTRIBUTIONS__TRIM_CONTRIBUTIONS, commands);
                    if (cmd.canExecute()) {
                        getEditingDomain().getCommandStack().execute(cmd);
                    }
                }
            }
        });
    }

    folder.setSelection(0);

    return folder;
}

From source file:org.eclipse.e4.tools.emf.ui.internal.common.component.virtual.VWindowControlEditor.java

License:Open Source License

private Composite createForm(Composite parent, EMFDataBindingContext context, WritableValue master) {
    CTabFolder folder = new CTabFolder(parent, SWT.BOTTOM);

    CTabItem item = new CTabItem(folder, SWT.NONE);
    item.setText(Messages.ModelTooling_Common_TabDefault);

    parent = createScrollableContainer(folder);
    item.setControl(parent.getParent());

    {/*from   ww  w. j av  a2s  . co m*/

        tableElement = ViewerElement.create(eclipseContext, parent, this);
        tableElement.getViewer().setContentProvider(new ObservableListContentProvider());
        tableElement.getViewer().setLabelProvider(new ComponentLabelProvider(getEditor(), Messages));

        tableElement.getDropDown().setContentProvider(new ArrayContentProvider());

        tableElement.getDropDown().setLabelProvider(new LabelProvider() {
            @Override
            public String getText(Object element) {
                EClass eclass = (EClass) element;
                return eclass.getName();
            }
        });

        tableElement.getButtonAdd().addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!tableElement.getDropDown().getSelection().isEmpty()) {
                    EClass eClass = (EClass) ((IStructuredSelection) tableElement.getDropDown().getSelection())
                            .getFirstElement();
                    handleAdd(eClass);
                }
            }
        });

        tableElement.getButtonRemove().addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!tableElement.getViewer().getSelection().isEmpty()) {
                    List<?> elements = ((IStructuredSelection) tableElement.getViewer().getSelection())
                            .toList();

                    Command cmd = RemoveCommand.create(getEditingDomain(), getMaster().getValue(),
                            UiPackageImpl.Literals.ELEMENT_CONTAINER__CHILDREN, elements);
                    if (cmd.canExecute()) {
                        getEditingDomain().getCommandStack().execute(cmd);
                    }
                }
            }
        });

        tableElement.getButtonDown().addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!tableElement.getViewer().getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) tableElement.getViewer().getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        MElementContainer<?> container = (MElementContainer<?>) getMaster().getValue();
                        int idx = container.getChildren().indexOf(obj) + 1;
                        if (idx < container.getChildren().size()) {
                            if (Util.moveElementByIndex(getEditingDomain(), (MUIElement) obj,
                                    getEditor().isLiveModel(), idx)) {
                                tableElement.getViewer().setSelection(new StructuredSelection(obj));
                            }
                        }
                    }
                }
            }
        });

        tableElement.getButtonUp().addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!tableElement.getViewer().getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) tableElement.getViewer().getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        MElementContainer<?> container = (MElementContainer<?>) getMaster().getValue();
                        int idx = container.getChildren().indexOf(obj) - 1;
                        if (idx >= 0) {
                            if (Util.moveElementByIndex(getEditingDomain(), (MUIElement) obj,
                                    getEditor().isLiveModel(), idx)) {
                                tableElement.getViewer().setSelection(new StructuredSelection(obj));
                            }
                        }

                    }
                }
            }
        });

        tableElement.getDropDown()
                .setInput(new EClass[] { AdvancedPackageImpl.Literals.PERSPECTIVE_STACK,
                        BasicPackageImpl.Literals.PART_SASH_CONTAINER, BasicPackageImpl.Literals.PART_STACK,
                        BasicPackageImpl.Literals.PART, BasicPackageImpl.Literals.INPUT_PART,
                        AdvancedPackageImpl.Literals.AREA });
        tableElement.getDropDown()
                .setSelection(new StructuredSelection(AdvancedPackageImpl.Literals.PERSPECTIVE_STACK));

    }

    folder.setSelection(0);

    return folder;
}

From source file:org.eclipse.e4.tools.emf.ui.internal.common.component.virtual.VWindowEditor.java

License:Open Source License

private Composite createForm(Composite parent, EMFDataBindingContext context, WritableValue master) {
    CTabFolder folder = new CTabFolder(parent, SWT.BOTTOM);

    CTabItem item = new CTabItem(folder, SWT.NONE);
    item.setText(Messages.ModelTooling_Common_TabDefault);

    parent = createScrollableContainer(folder);
    item.setControl(parent.getParent());

    Composite buttonCompTop = new Composite(parent, SWT.NONE);
    buttonCompTop.setLayoutData(new GridData(GridData.FILL, GridData.END, false, false, 3, 1));
    GridLayout gl = new GridLayout(2, false);
    gl.marginLeft = 0;// w  ww. j a  v  a  2 s .co m
    gl.marginRight = 0;
    gl.marginWidth = 0;
    gl.marginHeight = 0;
    buttonCompTop.setLayout(gl);

    final ComboViewer childrenDropDown = new ComboViewer(buttonCompTop);
    childrenDropDown.getControl().setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
    childrenDropDown.setContentProvider(new ArrayContentProvider());
    childrenDropDown.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            EClass eclass = (EClass) element;
            return eclass.getName();
        }
    });
    childrenDropDown
            .setInput(new EClass[] { BasicPackageImpl.Literals.DIALOG, BasicPackageImpl.Literals.TRIMMED_WINDOW,
                    BasicPackageImpl.Literals.WINDOW, BasicPackageImpl.Literals.WIZARD_DIALOG });
    childrenDropDown.setSelection(new StructuredSelection(BasicPackageImpl.Literals.TRIMMED_WINDOW));

    Button b = new Button(buttonCompTop, SWT.PUSH | SWT.FLAT);
    b.setText(Messages.ModelTooling_Common_AddEllipsis);
    b.setImage(createImage(ResourceProvider.IMG_Obj16_table_add));
    b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, false, false));
    b.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            EClass eClass = (EClass) ((IStructuredSelection) childrenDropDown.getSelection()).getFirstElement();
            handleAdd(eClass);
        }
    });

    viewer = new TableViewer(parent);
    ObservableListContentProvider cp = new ObservableListContentProvider();
    viewer.setContentProvider(cp);
    viewer.setLabelProvider(new ComponentLabelProvider(getEditor(), Messages));
    GridData gd = new GridData(GridData.FILL, GridData.FILL, true, true, 3, 1);
    viewer.getControl().setLayoutData(gd);

    Composite buttonCompBot = new Composite(parent, SWT.NONE);
    buttonCompBot.setLayoutData(new GridData(GridData.FILL, GridData.END, false, false, 3, 1));
    GridLayout gl1 = new GridLayout(3, false);
    gl1.marginLeft = 0;
    gl1.marginRight = 0;
    gl1.marginWidth = 0;
    gl1.marginHeight = 0;
    buttonCompBot.setLayout(gl1);

    b = new Button(buttonCompBot, SWT.PUSH | SWT.FLAT);

    b.setText(Messages.ModelTooling_Common_Up);
    b.setImage(createImage(ResourceProvider.IMG_Obj16_arrow_up));
    b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
    b.addSelectionListener(new SelectionAdapter() {
        @SuppressWarnings("unchecked")
        @Override
        public void widgetSelected(SelectionEvent e) {
            if (!viewer.getSelection().isEmpty()) {
                IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                if (s.size() == 1) {
                    Object obj = s.getFirstElement();
                    EObject container = (EObject) getMaster().getValue();
                    List<Object> l = (List<Object>) container.eGet(targetFeature);
                    int idx = l.indexOf(obj) - 1;
                    if (idx >= 0) {
                        if (Util.moveElementByIndex(getEditingDomain(), (MUIElement) obj,
                                getEditor().isLiveModel(), idx, targetFeature)) {
                            viewer.setSelection(new StructuredSelection(obj));
                        }
                    }

                }
            }
        }
    });

    b = new Button(buttonCompBot, SWT.PUSH | SWT.FLAT);
    b.setText(Messages.ModelTooling_Common_Down);
    b.setImage(createImage(ResourceProvider.IMG_Obj16_arrow_down));
    b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
    b.addSelectionListener(new SelectionAdapter() {
        @SuppressWarnings("unchecked")
        @Override
        public void widgetSelected(SelectionEvent e) {
            if (!viewer.getSelection().isEmpty()) {
                IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                if (s.size() == 1) {
                    Object obj = s.getFirstElement();
                    EObject container = (EObject) getMaster().getValue();
                    List<Object> l = (List<Object>) container.eGet(targetFeature);
                    int idx = l.indexOf(obj) + 1;
                    if (idx < l.size()) {
                        if (Util.moveElementByIndex(getEditingDomain(), (MUIElement) obj,
                                getEditor().isLiveModel(), idx, targetFeature)) {
                            viewer.setSelection(new StructuredSelection(obj));
                        }
                    }
                }
            }
        }
    });

    b = new Button(buttonCompBot, SWT.PUSH | SWT.FLAT);
    b.setText(Messages.ModelTooling_Common_Remove);
    b.setImage(createImage(ResourceProvider.IMG_Obj16_table_delete));
    b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
    b.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            if (!viewer.getSelection().isEmpty()) {
                List<?> windows = ((IStructuredSelection) viewer.getSelection()).toList();
                MElementContainer<?> container = (MElementContainer<?>) getMaster().getValue();
                Command cmd = RemoveCommand.create(getEditingDomain(), container, targetFeature, windows);
                if (cmd.canExecute()) {
                    getEditingDomain().getCommandStack().execute(cmd);
                    if (container.getChildren().size() > 0) {
                        viewer.setSelection(new StructuredSelection(container.getChildren().get(0)));
                    }
                }
            }
        }
    });

    folder.setSelection(0);

    return folder;
}

From source file:org.eclipse.e4.tools.emf.ui.internal.common.component.virtual.VWindowSharedElementsEditor.java

License:Open Source License

private Composite createForm(Composite parent, EMFDataBindingContext context, WritableValue master) {
    CTabFolder folder = new CTabFolder(parent, SWT.BOTTOM);

    CTabItem item = new CTabItem(folder, SWT.NONE);
    item.setText(Messages.ModelTooling_Common_TabDefault);

    parent = createScrollableContainer(folder);
    item.setControl(parent.getParent());

    {/*from   w  ww  .  j ava2  s. c  om*/

        final ViewerElement tableElement = ViewerElement.create(eclipseContext, parent, this);
        viewer = tableElement.getViewer();
        viewer.setContentProvider(new ObservableListContentProvider());
        viewer.setLabelProvider(new ComponentLabelProvider(getEditor(), Messages));

        IEMFEditListProperty prop = EMFEditProperties.list(getEditingDomain(),
                BasicPackageImpl.Literals.WINDOW__SHARED_ELEMENTS);
        viewer.setInput(prop.observeDetail(getMaster()));

        tableElement.getButtonUp().addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {

                if (!viewer.getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        EObject container = (EObject) getMaster().getValue();
                        int idx = ((List<?>) container.eGet(BasicPackageImpl.Literals.WINDOW__SHARED_ELEMENTS))
                                .indexOf(obj) - 1;
                        if (idx >= 0) {
                            Command cmd = MoveCommand.create(getEditingDomain(), getMaster().getValue(),
                                    BasicPackageImpl.Literals.WINDOW__SHARED_ELEMENTS, obj, idx);

                            if (cmd.canExecute()) {
                                getEditingDomain().getCommandStack().execute(cmd);
                                viewer.setSelection(new StructuredSelection(obj));
                            }
                        }
                    }
                }
            }
        });

        tableElement.getButtonDown().addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    IStructuredSelection s = (IStructuredSelection) viewer.getSelection();
                    if (s.size() == 1) {
                        Object obj = s.getFirstElement();
                        EObject container = (EObject) getMaster().getValue();
                        List<?> list = (List<?>) container
                                .eGet(BasicPackageImpl.Literals.WINDOW__SHARED_ELEMENTS);
                        int idx = list.indexOf(obj) + 1;
                        if (idx < list.size()) {
                            Command cmd = MoveCommand.create(getEditingDomain(), getMaster().getValue(),
                                    BasicPackageImpl.Literals.WINDOW__SHARED_ELEMENTS, obj, idx);

                            if (cmd.canExecute()) {
                                getEditingDomain().getCommandStack().execute(cmd);
                                viewer.setSelection(new StructuredSelection(obj));
                            }
                        }
                    }
                }
            }
        });

        tableElement.getDropDown().setContentProvider(new ArrayContentProvider());
        tableElement.getDropDown().setLabelProvider(new LabelProvider() {
            @Override
            public String getText(Object element) {
                EClass eclass = (EClass) element;
                return eclass.getName();
            }
        });
        tableElement.getDropDown()
                .setInput(new EClass[] { BasicPackageImpl.Literals.PART_SASH_CONTAINER,
                        BasicPackageImpl.Literals.PART, BasicPackageImpl.Literals.INPUT_PART,
                        BasicPackageImpl.Literals.PART_STACK, AdvancedPackageImpl.Literals.AREA });
        tableElement.getDropDown().setSelection(new StructuredSelection(BasicPackageImpl.Literals.PART));

        tableElement.getButtonAdd().addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!tableElement.getDropDown().getSelection().isEmpty()) {
                    EClass eClass = (EClass) ((IStructuredSelection) tableElement.getDropDown().getSelection())
                            .getFirstElement();
                    handleAdd(eClass);
                }
            }
        });

        tableElement.getButtonRemove().addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    List<?> elements = ((IStructuredSelection) viewer.getSelection()).toList();

                    Command cmd = RemoveCommand.create(getEditingDomain(), getMaster().getValue(),
                            BasicPackageImpl.Literals.WINDOW__SHARED_ELEMENTS, elements);
                    if (cmd.canExecute()) {
                        getEditingDomain().getCommandStack().execute(cmd);
                    }
                }
            }
        });
    }

    folder.setSelection(0);

    return folder;
}

From source file:org.eclipse.e4.tools.emf.ui.internal.common.component.virtual.VWindowTrimEditor.java

License:Open Source License

private Composite createForm(Composite parent, EMFDataBindingContext context, WritableValue master) {
    CTabFolder folder = new CTabFolder(parent, SWT.BOTTOM);

    CTabItem item = new CTabItem(folder, SWT.NONE);
    item.setText(Messages.ModelTooling_Common_TabDefault);

    parent = createScrollableContainer(folder);
    item.setControl(parent.getParent());

    {/*w  ww.j a va 2 s .  c om*/
        viewer = new TableViewer(parent);
        ObservableListContentProvider cp = new ObservableListContentProvider();
        viewer.setContentProvider(cp);
        viewer.setLabelProvider(new ComponentLabelProvider(getEditor(), Messages));

        GridData gd = new GridData(GridData.FILL_BOTH);
        viewer.getControl().setLayoutData(gd);

        Composite buttonComp = new Composite(parent, SWT.NONE);
        buttonComp.setLayoutData(new GridData(GridData.FILL, GridData.END, false, false));
        GridLayout gl = new GridLayout();
        gl.marginLeft = 0;
        gl.marginRight = 0;
        gl.marginWidth = 0;
        gl.marginHeight = 0;
        buttonComp.setLayout(gl);

        Button b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_AddEllipsis);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_table_add));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                handleAdd();
            }
        });

        b = new Button(buttonComp, SWT.PUSH | SWT.FLAT);
        b.setText(Messages.ModelTooling_Common_Remove);
        b.setImage(createImage(ResourceProvider.IMG_Obj16_table_delete));
        b.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
        b.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (!viewer.getSelection().isEmpty()) {
                    List<?> trimElements = ((IStructuredSelection) viewer.getSelection()).toList();
                    Command cmd = RemoveCommand.create(getEditingDomain(), getMaster().getValue(),
                            BasicPackageImpl.Literals.TRIMMED_WINDOW__TRIM_BARS, trimElements);
                    if (cmd.canExecute()) {
                        getEditingDomain().getCommandStack().execute(cmd);
                    }
                }
            }
        });
    }

    folder.setSelection(0);

    return folder;
}

From source file:org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.dialogs.FindContributionDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite parent) {
    Composite comp = (Composite) super.createDialogArea(parent);

    // TODO param
    getShell().setText(Messages.ContributionClassDialog_ShellTitle);

    if ("show-bundles".equals(mode)) { //$NON-NLS-1$
        // TODO create icon
    } else if ("show-packages".equals(mode)) { //$NON-NLS-1$
        // TODO create icon
    } else if ("show-icons".equals(mode)) { //$NON-NLS-1$
        // TODO create icon
    } else {//from  ww  w  .j  av a 2 s .  c  om
        titleImage = new Image(comp.getDisplay(),
                getClass().getClassLoader().getResourceAsStream("/icons/full/wizban/newclass_wiz.png")); //$NON-NLS-1$
        setTitleImage(titleImage);
    }

    getShell().addDisposeListener(new DisposeListener() {

        @Override
        public void widgetDisposed(DisposeEvent e) {
            javaClassImage.dispose();
            if (titleImage != null) {
                titleImage.dispose();
            }
        }
    });

    javaClassImage = new Image(getShell().getDisplay(),
            getClass().getClassLoader().getResourceAsStream("/icons/full/obj16/class_obj.gif")); //$NON-NLS-1$

    Composite container = new Composite(comp, SWT.NONE);
    container.setLayoutData(new GridData(GridData.FILL_BOTH));
    container.setLayout(new GridLayout(2, false));

    Label l = new Label(container, SWT.NONE);
    // TODO param
    l.setText(Messages.ContributionClassDialog_Label_Classname);

    final Text t = new Text(container, SWT.BORDER | SWT.SEARCH | SWT.ICON_SEARCH);
    t.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    // TODO param
    t.setMessage(Messages.ContributionClassDialog_FilterText_Message);

    new Label(container, SWT.NONE);

    viewer = new TableViewer(container, SWT.FULL_SELECTION | SWT.BORDER);
    GridData gd = new GridData(GridData.FILL_BOTH);
    viewer.getControl().setLayoutData(gd);
    viewer.setContentProvider(new ObservableListContentProvider());
    viewer.setLabelProvider(new StyledCellLabelProvider() {
        @Override
        public void update(ViewerCell cell) {
            ContributionData data = (ContributionData) cell.getElement();
            StyledString styledString = new StyledString();
            if ("show-bundles".equals(mode)) { //$NON-NLS-1$
                styledString.append(data.bundleName, StyledString.DECORATIONS_STYLER);
            } else if ("show-packages".equals(mode)) { //$NON-NLS-1$
                int dot = data.className.lastIndexOf("."); //$NON-NLS-1$
                String packageName;
                if (dot >= 0) {
                    packageName = data.className.substring(0, dot);
                } else {
                    packageName = ""; //$NON-NLS-1$
                }
                styledString.append(packageName, StyledString.DECORATIONS_STYLER);
            } else if ("show-icons".equals(mode)) { //$NON-NLS-1$
                styledString.append(data.iconPath, null);

                if (data.bundleName != null) {
                    styledString.append(" - " + data.bundleName, StyledString.DECORATIONS_STYLER); //$NON-NLS-1$
                }

                if (data.sourceType != null) {
                    styledString.append(" - ", StyledString.DECORATIONS_STYLER); //$NON-NLS-1$
                    styledString.append(data.sourceType + "", StyledString.COUNTER_STYLER); //$NON-NLS-1$
                }

                if (data.iconPath == null) {
                    cell.setImage(javaClassImage);
                }
            } else {
                styledString.append(data.className, null);

                if (data.bundleName != null) {
                    styledString.append(" - " + data.bundleName, StyledString.DECORATIONS_STYLER); //$NON-NLS-1$
                }

                if (data.sourceType != null) {
                    styledString.append(" - ", StyledString.DECORATIONS_STYLER); //$NON-NLS-1$
                    styledString.append(data.sourceType + "", StyledString.COUNTER_STYLER); //$NON-NLS-1$
                }

                if (data.iconPath == null) {
                    cell.setImage(javaClassImage);
                }
            }

            cell.setText(styledString.getString());
            cell.setStyleRanges(styledString.getStyleRanges());
        }
    });
    viewer.addDoubleClickListener(new IDoubleClickListener() {

        @Override
        public void doubleClick(DoubleClickEvent event) {
            okPressed();
        }
    });

    final WritableList list = new WritableList();
    viewer.setInput(list);

    final ClassContributionCollector collector = getCollector();

    t.addModifyListener(new ModifyListener() {
        private ContributionResultHandlerImpl currentResultHandler;

        @Override
        public void modifyText(ModifyEvent e) {
            if (currentResultHandler != null) {
                currentResultHandler.cancled = true;
            }
            list.clear();
            currentResultHandler = new ContributionResultHandlerImpl(list);
            Filter filter = new Filter(project, t.getText());
            collector.findContributions(filter, currentResultHandler);
            t.addKeyListener(new KeyAdapter() {
                @Override
                public void keyPressed(KeyEvent e) {
                    if (e.keyCode == SWT.ARROW_DOWN) {
                        if (viewer.getTable().getItemCount() > 0) {
                            viewer.getTable().setFocus();
                            viewer.getTable().select(0);
                        }
                    }
                }
            });
            viewer.getTable().addKeyListener(new KeyAdapter() {
                @Override
                public void keyPressed(KeyEvent e) {
                    super.keyPressed(e);
                    if ((e.keyCode == SWT.ARROW_UP) && (viewer.getTable().getSelectionIndex() == 0)) {
                        t.setFocus();
                    }
                }
            });
        }
    });

    viewer.setFilters(new ViewerFilter[] { new ViewerFilter() {

        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            ContributionData cd = (ContributionData) element;
            if ("show-bundles".equals(mode)) { //$NON-NLS-1$
                // only add first item from each bundle
                boolean found = false;
                for (Iterator it = list.iterator(); it.hasNext();) {
                    ContributionData cd2 = (ContributionData) it.next();
                    if (cd2.bundleName == null || cd2.bundleName.equals(cd.bundleName)) {
                        if (found == false) {
                            found = true;
                        } else {
                            return false;
                        }
                    }
                }
                return true;
            } else if ("show-packages".equals(mode)) { //$NON-NLS-1$
                if (bundleFilter != null && bundleFilter.isEmpty() == false) {
                    if (!bundleFilter.equals(cd.bundleName)) {
                        return false;
                    }
                }
                String packageName;
                int last = cd.className.lastIndexOf("."); //$NON-NLS-1$
                if (last >= 0) {
                    packageName = cd.className.substring(0, last);
                } else {
                    packageName = ""; //$NON-NLS-1$
                }
                // only add first item from each package
                boolean found = false;
                for (Iterator it = list.iterator(); it.hasNext();) {
                    boolean matches = false;
                    ContributionData cd2 = (ContributionData) it.next();
                    if (packageName.isEmpty() && cd2.className.contains(".") == false) { //$NON-NLS-1$
                        matches = true;
                    } else if (cd2.className.startsWith(packageName + ".")) { //$NON-NLS-1$
                        matches = true;
                    }
                    if (matches) {
                        if (found == false) {
                            found = true;
                        } else {
                            return false;
                        }
                    }
                }
                return true;
            } else if ("show-icons".equals(mode)) { //$NON-NLS-1$
                if (cd.iconPath == null) {
                    return false;
                }
                if (bundleFilter != null && bundleFilter.isEmpty() == false) {
                    if (!bundleFilter.equals(cd.bundleName)) {
                        return false;
                    }
                }
                if (packageFilter != null && packageFilter.isEmpty() == false) {
                    if (!cd.className.startsWith(packageFilter + ".")) { //$NON-NLS-1$
                        return false;
                    }
                }
                return true;
            } else {
                if (bundleFilter != null && bundleFilter.isEmpty() == false) {
                    if (!bundleFilter.equals(cd.bundleName)) {
                        return false;
                    }
                }
                if (packageFilter != null && packageFilter.isEmpty() == false) {
                    if (!cd.className.startsWith(packageFilter + ".")) { //$NON-NLS-1$
                        return false;
                    }
                }

                return true;
            }
        }
    } });

    StringBuilder sbFind = new StringBuilder();

    if ("show-bundles".equals(mode)) { //$NON-NLS-1$
        setTitle(
                org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_findBundle);
        sbFind.append(
                org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_findBundle);
    } else if ("show-packages".equals(mode)) { //$NON-NLS-1$
        setTitle(
                org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_findPackage);
        sbFind.append(
                org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_findPackage);
        if (E.notEmpty(bundleFilter)) {
            sbFind.append(" " //$NON-NLS-1$
                    + org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_inBundle
                    + " " + bundleFilter); //$NON-NLS-3$
        }
    } else if ("show-icons".equals(mode)) { //$NON-NLS-1$
        setTitle(
                org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_findIcon);
        sbFind.append(
                org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_findIcon);
        if (E.notEmpty(bundleFilter)) {
            sbFind.append(" " //$NON-NLS-1$
                    + org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_inBundle
                    + " " + bundleFilter); //$NON-NLS-3$
        }
        if (E.notEmpty(packageFilter)) {
            sbFind.append(" " //$NON-NLS-1$
                    + org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_inPackage
                    + " " + packageFilter); //$NON-NLS-3$
        }
    } else {
        setTitle(
                org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_findClass);
        sbFind.append(
                org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_findClass);
        if (E.notEmpty(bundleFilter)) {
            sbFind.append(" " //$NON-NLS-1$
                    + org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_inBundle
                    + " " + bundleFilter); //$NON-NLS-3$
        }
        if (E.notEmpty(packageFilter)) {
            sbFind.append(" " //$NON-NLS-1$
                    + org.eclipse.e4.tools.emf.ui.internal.common.resourcelocator.Messages.FindContributionDialog_inPackage
                    + " " + packageFilter); //$NON-NLS-3$
        }
    }
    setMessage(sbFind.toString());

    // preload list if few items
    if (list.size() <= 30) {
        t.notifyListeners(SWT.Modify, null);
    }
    return comp;
}

From source file:org.eclipse.e4.tutorial.contacts.views.ListView.java

License:Open Source License

@Inject
public ListView(Composite parent, ContactsRepository contactsRepository) {
    // Table composite (because of TableColumnLayout)
    final Composite tableComposite = new Composite(parent, SWT.NONE);
    tableComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    final TableColumnLayout tableColumnLayout = new TableColumnLayout();
    tableComposite.setLayout(tableColumnLayout);

    // Table viewer
    tableViewer = new TableViewer(tableComposite, SWT.FULL_SELECTION);
    tableViewer.getTable().setHeaderVisible(true);

    // first name column
    final TableViewerColumn firstNameColumn = new TableViewerColumn(tableViewer, SWT.NONE);
    firstNameColumn.getColumn().setText("First Name");
    tableColumnLayout.setColumnData(firstNameColumn.getColumn(), new ColumnWeightData(40));

    // last name column
    final TableViewerColumn lastNameColumn = new TableViewerColumn(tableViewer, SWT.NONE);
    lastNameColumn.getColumn().setText("Last Name");
    tableColumnLayout.setColumnData(lastNameColumn.getColumn(), new ColumnWeightData(40));

    ObservableListContentProvider contentProvider = new ObservableListContentProvider();

    tableViewer.setContentProvider(contentProvider);

    IObservableMap[] attributes = BeansObservables.observeMaps(contentProvider.getKnownElements(),
            Contact.class, new String[] { "firstName", "lastName" });
    tableViewer.setLabelProvider(new ObservableMapLabelProvider(attributes));

    tableViewer.setInput(contactsRepository.getAllContacts());

    GridLayoutFactory.fillDefaults().generateLayout(parent);

    tableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override// ww w.ja  v a  2s  . co m
        public void selectionChanged(SelectionChangedEvent event) {
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            selectionService.setSelection(selection.getFirstElement());
        }
    });
}