Example usage for org.eclipse.jface.viewers CheckboxTableViewer setCheckedElements

List of usage examples for org.eclipse.jface.viewers CheckboxTableViewer setCheckedElements

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers CheckboxTableViewer setCheckedElements.

Prototype

public void setCheckedElements(Object[] elements) 

Source Link

Document

Sets which nodes are checked in this viewer.

Usage

From source file:com.byterefinery.rmbench.dialogs.CheckboxTableHandler.java

License:Open Source License

/**
 * configure the viewer this object operates upon.
 * /*w  w w.  jav  a 2 s  .  c  o  m*/
 * @param columnsViewer the viewer
 * @param tableColumns the table columns
 */
public void setViewer(CheckboxTableViewer columnsViewer, List<Column> tableColumns, Column[] checkedColumns) {
    this.columnsViewer = columnsViewer;
    this.tableColumns = new ArrayList<Column>(tableColumns);
    this.keyColumns = new ArrayList<Column>();
    if (checkedColumns != null) {
        for (int i = 0; i < checkedColumns.length; i++) {
            this.keyColumns.add(checkedColumns[i]);
            this.tableColumns.remove(checkedColumns[i]);
        }
    }

    columnsViewer.addCheckStateListener(new LocalCheckStateListener());
    columnsViewer.setContentProvider(new LocalContentProvider());
    columnsViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            updateButtonState();
        }
    });
    columnsViewer.setInput(tableColumns);
    if (checkedColumns != null)
        columnsViewer.setCheckedElements(checkedColumns);
}

From source file:com.google.gdt.eclipse.appengine.rpc.wizards.ConfigureRPCServiceLayerWizardPage.java

License:Open Source License

private void configureMethodTableViewer(final CheckboxTableViewer viewer,
        final ITreeContentProvider contentProvider, ILabelProvider labelProvider, Button selectAll,
        Button deselectAll) {//  w  ww. j a v  a 2 s. c o m
    viewer.setLabelProvider(labelProvider);

    viewer.setContentProvider(contentProvider);
    viewer.setInput(project);
    viewer.addCheckStateListener(new SelectionChangedListener() {
        @Override
        public void doCheckStateChanged(CheckStateChangedEvent e) {
            handleEntitySelectionChanged();
        }
    });

    selectAll.addSelectionListener(new SelectionChangedListener() {
        @Override
        public void doWidgetSelected(SelectionEvent e) {
            for (Object element : contentProvider.getElements(null)) {
                viewer.setChecked(element, true);
            }
            handleEntitySelectionChanged();
        }
    });
    deselectAll.addSelectionListener(new SelectionChangedListener() {
        @Override
        public void doWidgetSelected(SelectionEvent e) {
            viewer.setCheckedElements(new Object[] {});
            handleEntitySelectionChanged();
        }
    });
    viewer.setAllChecked(true);
    updateEntityStatus();
}

From source file:com.siteview.mde.internal.ui.parts.WizardCheckboxTablePart.java

License:Open Source License

public void setSelection(Object[] selected) {
    CheckboxTableViewer viewer = getTableViewer();
    viewer.setCheckedElements(selected);
    updateCounter(viewer.getCheckedElements().length);
}

From source file:de.tobject.findbugs.properties.PathsProvider.java

License:Open Source License

void setFilters(List<IPathElement> filterFiles) {
    paths.clear();//from  ww  w  .  j av a2  s.c  o  m
    paths.addAll(filterFiles);
    if (viewer instanceof CheckboxTableViewer) {
        CheckboxTableViewer tv = (CheckboxTableViewer) viewer;
        List<IPathElement> checked = new ArrayList<IPathElement>();
        for (IPathElement pe : paths) {
            if (pe.isEnabled()) {
                checked.add(pe);
            }
        }
        tv.setCheckedElements(checked.toArray(new IPathElement[checked.size()]));
    }
}

From source file:gov.redhawk.ui.parts.WizardCheckboxTablePart.java

License:Open Source License

/**
 * Sets the selection.//from w  w  w.  ja  v a 2  s .  c  om
 * 
 * @param selected the new selection
 */
public void setSelection(final Object[] selected) {
    final CheckboxTableViewer viewer = getTableViewer();
    viewer.setCheckedElements(selected);
    updateCounter(viewer.getCheckedElements().length);
}

From source file:net.sf.eclipsensis.installoptions.properties.tabbed.section.GeneralPropertySection.java

License:Open Source License

private Control createFlagsSection(final InstallOptionsWidget widget, Composite parent,
        final InstallOptionsCommandHelper commandHelper) {
    final String displayName = widget.getPropertyDescriptor(InstallOptionsModel.PROPERTY_FLAGS)
            .getDisplayName();//ww w .  j  a  va2 s.  c  o m

    TabbedPropertySheetWidgetFactory factory = getWidgetFactory();
    Composite group = factory.createGroup(parent, displayName);
    GridLayout layout = new GridLayout(2, true);
    group.setLayout(layout);

    final boolean[] nonUserChange = { false };

    final Table table = factory.createTable(group, SWT.FLAT | SWT.CHECK | SWT.SINGLE | SWT.HIDE_SELECTION);
    GC gc = new GC(table);
    gc.setFont(JFaceResources.getDialogFont());
    FontMetrics fontMetrics = gc.getFontMetrics();
    gc.dispose();
    GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
    data.horizontalSpan = 2;
    data.widthHint = fontMetrics.getAverageCharWidth() * 30;
    data.heightHint = fontMetrics.getHeight() * 10;
    table.setLayoutData(data);

    final CheckboxTableViewer viewer = new CheckboxTableViewer(table);
    viewer.setContentProvider(new CollectionContentProvider());
    viewer.setLabelProvider(new LabelProvider());
    viewer.setComparer(new IElementComparer() {
        public boolean equals(Object a, Object b) {
            return Common.objectsAreEqual(a, b);
        }

        public int hashCode(Object element) {
            if (element != null) {
                return element.hashCode();
            }
            return 0;
        }
    });
    table.addListener(SWT.EraseItem, new Listener() {
        public void handleEvent(Event event) {
            event.detail &= ~(SWT.SELECTED | SWT.FOCUSED);
        }
    });
    final List<String> flags = new ArrayList<String>(widget.getFlags());
    final Collection<String> availableFlags = widget.getTypeDef().getFlags();
    final IPropertyDescriptor descriptor = widget.getPropertyDescriptor(InstallOptionsModel.PROPERTY_FLAGS);
    final ICellEditorValidator validator = PropertyDescriptorHelper
            .getCellEditorValidator((PropertyDescriptor) descriptor);
    final Runnable runnable = new Runnable() {
        public void run() {
            nonUserChange[0] = true;
            try {
                if (validator != null) {
                    String error = validator.isValid(flags);
                    if (error != null) {
                        Common.openError(table.getShell(), error, InstallOptionsPlugin.getShellImage());
                        viewer.setCheckedElements(widget.getFlags().toArray());
                        return;
                    }
                }
                commandHelper.propertyChanged(InstallOptionsModel.PROPERTY_FLAGS, descriptor.getDisplayName(),
                        widget, flags);
            } finally {
                nonUserChange[0] = false;
            }
        }
    };
    viewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            String flag = (String) event.getElement();
            boolean checked = event.getChecked();
            if (checked) {
                flags.add(flag);
            } else {
                flags.remove(flag);
            }
            runnable.run();
        }
    });
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            if (!event.getSelection().isEmpty()) {
                String flag = (String) ((IStructuredSelection) event.getSelection()).getFirstElement();
                viewer.setSelection(StructuredSelection.EMPTY);
                boolean checked = viewer.getChecked(flag);
                viewer.setChecked(flag, !checked);
                if (!checked) {
                    flags.add(flag);
                } else {
                    flags.remove(flag);
                }
                runnable.run();
            }
        }
    });

    Button b = factory.createButton(group, InstallOptionsPlugin.getResourceString("select.all.label"), //$NON-NLS-1$
            SWT.PUSH | SWT.FLAT);
    b.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            flags.clear();
            flags.addAll(availableFlags);
            viewer.setCheckedElements(availableFlags.toArray());
            runnable.run();
        }
    });
    b.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
    b = factory.createButton(group, InstallOptionsPlugin.getResourceString("deselect.all.label"), //$NON-NLS-1$
            SWT.PUSH | SWT.FLAT);
    b.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            flags.clear();
            viewer.setCheckedElements(Common.EMPTY_STRING_ARRAY);
            runnable.run();
        }
    });
    b.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));

    viewer.setInput(availableFlags == null ? Collections.EMPTY_LIST : availableFlags);
    viewer.setCheckedElements(flags.toArray());
    final PropertyChangeListener listener = new PropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent evt) {
            if (evt.getPropertyName().equals(InstallOptionsModel.PROPERTY_FLAGS)) {
                if (!nonUserChange[0]) {
                    List<String> newFlags = widget.getFlags();
                    if (Common.isValid(viewer.getControl())) {
                        viewer.setCheckedElements(
                                newFlags == null ? Common.EMPTY_STRING_ARRAY : newFlags.toArray());
                        flags.clear();
                        flags.addAll(newFlags);
                    }
                }
            }
        }
    };
    widget.addPropertyChangeListener(listener);
    group.addDisposeListener(new DisposeListener() {
        public void widgetDisposed(DisposeEvent e) {
            widget.removePropertyChangeListener(listener);
        }
    });
    return group;
}

From source file:net.sf.eclipsensis.installoptions.properties.tabbed.section.ListItemsPropertySectionCreator.java

License:Open Source License

protected CheckboxTableViewer createListItemsAndStateSection(Composite parent,
        TabbedPropertySheetWidgetFactory widgetFactory, final InstallOptionsCommandHelper commandHelper) {
    final IPropertyDescriptor listItemsDescriptor = getWidget()
            .getPropertyDescriptor(InstallOptionsModel.PROPERTY_LISTITEMS);
    final IPropertyDescriptor stateDescriptor = getWidget()
            .getPropertyDescriptor(InstallOptionsModel.PROPERTY_STATE);
    if (listItemsDescriptor != null && stateDescriptor != null) {
        final boolean[] nonUserChange = { false };

        Composite parent2 = widgetFactory.createGroup(parent, listItemsDescriptor.getDisplayName());
        GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
        data.horizontalSpan = 2;//www.ja  va  2  s  .co m
        parent2.setLayoutData(data);
        GridLayout gridLayout = new GridLayout(2, false);
        gridLayout.verticalSpacing = 0;
        gridLayout.marginHeight = 0;
        gridLayout.marginTop = 2;
        parent2.setLayout(gridLayout);

        final Table table = widgetFactory.createTable(parent2, SWT.FLAT | SWT.CHECK | SWT.MULTI);
        GC gc = new GC(table);
        gc.setFont(JFaceResources.getDialogFont());
        FontMetrics fontMetrics = gc.getFontMetrics();
        gc.dispose();
        data = new GridData(SWT.FILL, SWT.FILL, true, true);
        data.widthHint = fontMetrics.getAverageCharWidth() * 30;
        data.heightHint = fontMetrics.getHeight() * 5;
        table.setLayoutData(data);

        final CheckboxTableViewer viewer = new CheckboxTableViewer(table);
        viewer.setContentProvider(new CollectionContentProvider());
        viewer.setLabelProvider(new LabelProvider());
        viewer.setComparer(new IElementComparer() {
            public boolean equals(Object a, Object b) {
                if (a instanceof String && b instanceof String) {
                    return Common.stringsAreEqual((String) a, (String) b, true);
                }
                return Common.objectsAreEqual(a, b);
            }

            public int hashCode(Object element) {
                Object element2 = element;
                if (element2 != null) {
                    if (element2 instanceof String) {
                        element2 = ((String) element2).toLowerCase();
                    }
                    return element2.hashCode();
                }
                return 0;
            }

        });
        final InstallOptionsListItems widget = (InstallOptionsListItems) getWidget();
        final List<String> listItems = new ArrayList<String>(widget.getListItems());
        String[] state = Common.tokenize(widget.getState(), IInstallOptionsConstants.LIST_SEPARATOR);
        final ICellEditorValidator stateValidator = PropertyDescriptorHelper
                .getCellEditorValidator((PropertyDescriptor) stateDescriptor);
        viewer.addCheckStateListener(new ICheckStateListener() {
            public void checkStateChanged(CheckStateChangedEvent event) {
                if (!nonUserChange[0]) {
                    boolean checked = event.getChecked();
                    String oldState = getWidget().getStringPropertyValue(InstallOptionsModel.PROPERTY_STATE);
                    String newState;
                    if (checked && !((InstallOptionsListItems) getWidget()).isMultiSelect()) {
                        String element = (String) event.getElement();
                        viewer.setCheckedElements(new String[] { element });
                        newState = element;
                    } else {
                        newState = Common.flatten(viewer.getCheckedElements(),
                                IInstallOptionsConstants.LIST_SEPARATOR);
                    }
                    if (!Common.stringsAreEqual(oldState, newState, true)) {
                        String error = stateValidator.isValid(newState);
                        if (Common.isEmpty(error)) {
                            commandHelper.propertyChanged(InstallOptionsModel.PROPERTY_STATE,
                                    stateDescriptor.getDisplayName(), getWidget(), newState);
                        } else {
                            Common.openError(viewer.getTable().getShell(), error,
                                    InstallOptionsPlugin.getShellImage());
                            viewer.setCheckedElements(
                                    Common.tokenize(oldState, IInstallOptionsConstants.LIST_SEPARATOR));
                        }
                    }
                }
            }
        });

        viewer.setInput(listItems);
        viewer.setCheckedElements(state);
        final PropertyChangeListener listener = new PropertyChangeListener() {
            @SuppressWarnings("unchecked")
            public void propertyChange(PropertyChangeEvent evt) {
                nonUserChange[0] = true;
                try {
                    if (evt.getPropertyName().equals(InstallOptionsModel.PROPERTY_LISTITEMS)) {
                        List<String> list = (List<String>) evt.getNewValue();
                        if (Common.isValid(viewer.getControl())) {
                            List<String> oldInput = (List<String>) viewer.getInput();
                            if (!Common.objectsAreEqual(list, oldInput)) {
                                viewer.setInput(new ArrayList<String>(list));
                                String state = ((InstallOptionsListItems) getWidget()).getState();
                                viewer.setCheckedElements(
                                        Common.tokenize(state, IInstallOptionsConstants.LIST_SEPARATOR));
                            }
                        }
                    } else if (evt.getPropertyName().equals(InstallOptionsModel.PROPERTY_STATE)) {
                        String state = (String) evt.getNewValue();
                        if (Common.isValid(viewer.getControl())) {
                            viewer.setCheckedElements(
                                    Common.tokenize(state, IInstallOptionsConstants.LIST_SEPARATOR));
                        }
                    }
                } finally {
                    nonUserChange[0] = false;
                }
            }
        };
        widget.addPropertyChangeListener(listener);
        table.addDisposeListener(new DisposeListener() {
            public void widgetDisposed(DisposeEvent e) {
                widget.removePropertyChangeListener(listener);
            }
        });

        Composite buttons = widgetFactory.createComposite(parent2);
        buttons.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true));
        GridLayout layout = new GridLayout(2, true);
        layout.marginHeight = layout.marginWidth = 0;
        buttons.setLayout(layout);
        createListAndStateButtons(buttons, viewer, widgetFactory, commandHelper);

        CLabel l = widgetFactory.createCLabel(parent2,
                InstallOptionsPlugin.getResourceString("listitems.state.checked.items.message"), SWT.FLAT); //$NON-NLS-1$
        FontData[] fd = l.getFont().getFontData();
        for (int i = 0; i < fd.length; i++) {
            fd[i].setStyle(fd[i].getStyle() | SWT.BOLD);
            fd[i].setHeight((int) (fd[i].getHeight() * 0.9));
        }
        final Font f = new Font(l.getDisplay(), fd);
        l.setFont(f);
        l.addDisposeListener(new DisposeListener() {
            public void widgetDisposed(DisposeEvent e) {
                f.dispose();
            }
        });
        data = new GridData(SWT.FILL, SWT.FILL, true, false);
        data.horizontalSpan = 2;
        l.setLayoutData(data);

        return viewer;
    }
    return null;
}

From source file:org.codecover.eclipse.views.controls.DeleteTSCsSelectDialog.java

License:Open Source License

private static Action makeSelectAllAction(final CheckboxTableViewer vwr) {
    Action action = new Action() {
        @Override/*from   ww  w. j ava  2 s  .c o m*/
        public void run() {
            Object[] allTSCs = (Object[]) vwr.getInput();
            vwr.setCheckedElements(allTSCs);
        }
    };
    action.setText(ACTION_SELECT_ALL_TEXT);
    action.setToolTipText(ACTION_SELECT_ALL_TOOLTIP);
    return action;
}

From source file:org.codecover.eclipse.views.controls.DeleteTSCsSelectDialog.java

License:Open Source License

private static Action makeDeselectAllAction(final CheckboxTableViewer vwr) {
    Action action = new Action() {
        @Override//  w  ww.  j  ava 2s.  c o m
        public void run() {
            vwr.setCheckedElements(new Object[0]);
        }
    };
    action.setText(ACTION_DESELECT_ALL_TEXT);
    action.setToolTipText(ACTION_DESELECT_ALL_TOOLTIP);
    return action;
}

From source file:org.eclipse.bpel.apache.ode.deploy.ui.pages.ProcessPage.java

License:Open Source License

private void createProcessMonitoringSection(Composite parent) {
    final Composite client = createSection(parent, "Process-level Monitoring Events", null, 2);
    final Composite group = toolkit.createComposite(client);
    group.setLayout(new RowLayout(SWT.VERTICAL));
    GridData gd = new GridData();
    gd.verticalAlignment = SWT.BEGINNING;
    gd.horizontalIndent = 5;/*from   w  w w .  ja va  2  s.  c  o m*/
    group.setLayoutData(gd);

    final Button btnNone = toolkit.createButton(group, "None", SWT.RADIO);
    final Button btnAll = toolkit.createButton(group, "All", SWT.RADIO);
    final Button btnSelected = toolkit.createButton(group, "Selected", SWT.RADIO);

    Composite wrapper = toolkit.createComposite(client);
    wrapper.setLayout(new RowLayout());
    final CheckboxTableViewer ctv = CheckboxTableViewer.newCheckList(wrapper, SWT.NONE);
    wrapper.setLayoutData(gd);
    toolkit.paintBordersFor(wrapper);

    ctv.setContentProvider(new ArrayContentProvider());
    ctv.setLabelProvider(new LabelProvider() {

        @Override
        public String getText(Object element) {
            return eventNameById.get(element);
        }

    });
    ctv.setInput(new String[] { INSTANCE_LIFECYCLE_NAME, ACTIVITY_LIFECYCLE_NAME, DATA_HANDLING_NAME,
            SCOPE_HANDLING_NAME, CORRELATION_NAME });

    // create defaulting process event settings
    if (processType.getProcessEvents() == null) {
        TProcessEvents pe = ddFactory.eINSTANCE.createTProcessEvents();
        pe.setGenerate(GenerateType.ALL);
        processType.setProcessEvents(pe);
    }

    if (processType.getProcessEvents().isSetGenerate()) {
        switch (processType.getProcessEvents().getGenerate()) {
        case ALL:
            btnAll.setSelection(true);
            ctv.getControl().setEnabled(false);
            break;
        case NONE:
            btnNone.setSelection(true);
            ctv.getControl().setEnabled(false);
            break;
        }
    } else {
        btnSelected.setSelection(true);
        ctv.getControl().setEnabled(true);
    }

    final SelectionAdapter sa = new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            if (btnAll == e.getSource()) {
                ctv.getControl().setEnabled(false);
                Command command = SetCommand.create(domain, processType.getProcessEvents(),
                        ddPackage.eINSTANCE.getTProcessEvents_Generate(), GenerateType.ALL);
                domain.getCommandStack().execute(command);
            } else if (btnNone == e.getSource()) {
                ctv.getControl().setEnabled(false);
                Command command = SetCommand.create(domain, processType.getProcessEvents(),
                        ddPackage.eINSTANCE.getTProcessEvents_Generate(), GenerateType.NONE);
                domain.getCommandStack().execute(command);
            } else {
                ctv.getControl().setEnabled(true);
                Command command = SetCommand.create(domain, processType.getProcessEvents(),
                        ddPackage.eINSTANCE.getTProcessEvents_Generate(), SetCommand.UNSET_VALUE);
                domain.getCommandStack().execute(command);
            }
        }
    };

    btnAll.addSelectionListener(sa);
    btnNone.addSelectionListener(sa);
    btnSelected.addSelectionListener(sa);

    ctv.setCheckedElements(processType.getProcessEvents().getEnableEvent().toArray());
    final ISelectionChangedListener scl = new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            Command command = SetCommand.create(domain, processType.getProcessEvents(),
                    ddPackage.eINSTANCE.getTEnableEventList_EnableEvent(),
                    Arrays.asList(ctv.getCheckedElements()));
            domain.getCommandStack().execute(command);
        }

    };

    ctv.addSelectionChangedListener(scl);
}