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

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

Introduction

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

Prototype

public void setCheckedElements(Object[] elements) 

Source Link

Document

Sets which elements are checked in this viewer's tree.

Usage

From source file:com.ecfeed.ui.dialogs.CalculateCoverageDialog.java

License:Open Source License

private void setInitialSelection(CheckboxTreeViewer viewer, Object[] checked, Object[] grayed) {
    viewer.setCheckedElements(checked);
    viewer.setGrayedElements(grayed);// w  ww .j  a v a 2s  . c o m

    Set<TestCaseNode> testCases = new HashSet<>();

    for (Object element : checked) {
        //if the element is non grayed test suite name
        if (element instanceof String && Arrays.asList(grayed).contains(element) == false) {
            testCases.addAll(fMethod.getTestCases((String) element));
        } else if (element instanceof TestCaseNode) {
            testCases.add((TestCaseNode) element);
        }
    }

    fCheckStateListener.applyCheckedTestCases(testCases, true);
}

From source file:com.jetbrains.mylyn.yt.ui.InPlaceResizableCheckBoxTreeDialog.java

License:Open Source License

@Override
protected Control createControl(Composite parent) {
    getShell().setText(dialogLabel);//from  www .java  2s.com

    Composite composite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.marginHeight = MARGIN_SIZE;
    layout.marginWidth = MARGIN_SIZE;
    layout.horizontalSpacing = 0;
    layout.verticalSpacing = 0;
    composite.setLayout(layout);
    GridData gd = new GridData(GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL | GridData.FILL_BOTH);
    composite.setLayoutData(gd);

    valueTree = new CheckboxFilteredTree(composite, SWT.CHECK | SWT.MULTI | SWT.V_SCROLL | SWT.BORDER,
            new SubstringPatternFilter());
    gd = new GridData(GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL | GridData.FILL_BOTH);
    gd.heightHint = 175;
    CheckboxTreeViewer viewer = valueTree.getViewer();
    viewer.getControl().setLayoutData(gd);

    if (validValues != null) {

        viewer.setContentProvider(new ITreeContentProvider() {

            public Object[] getChildren(Object parentElement) {
                if (parentElement instanceof Map<?, ?>) {
                    return ((Map<?, ?>) parentElement).keySet().toArray();
                }
                return null;
            }

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

            public boolean hasChildren(Object element) {
                return false;
            }

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

            public void dispose() {
            }

            public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
            }

        });

        // viewer.setSorter(new ViewerSorter());
        viewer.setLabelProvider(new LabelProvider() {
            @Override
            public String getText(Object element) {
                if (element instanceof String) {
                    return validValues.get(element);
                }
                return super.getText(element);
            }
        });
        viewer.setInput(validValues);

        Set<String> invalidValues = new HashSet<String>();

        // Remove any currently entered invalid values
        for (String value : selectedValues) {
            if (!validValues.containsKey(value)) {
                invalidValues.add(value);
            }
        }

        // Remove any unselected values
        for (String value : validValues.keySet()) {
            if (!viewer.setChecked(value, true)) {
                invalidValues.add(value);
            }
        }

        selectedValues.removeAll(invalidValues);

        viewer.setCheckedElements(selectedValues.toArray());

    }

    viewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            if (event.getChecked()) {
                selectedValues.add((String) event.getElement());
            } else {
                selectedValues.remove(event.getElement());
            }
        }

    });

    return valueTree;
}

From source file:com.siteview.mde.internal.ui.launcher.FeatureBlock.java

License:Open Source License

/**
 * Sets input to the tree, including location selection and checked features
 * //ww w  .ja  va  2 s . c  o m
 * @param config configuration to get attributes from
 * @param tree tree to set input and checked items on
 */
protected void setInput(ILaunchConfiguration config, CheckboxTreeViewer tree) {
    // Maps feature IDs to their models
    Map featureModels = new HashMap();
    FeatureModelManager fmm = MDECore.getDefault().getFeatureModelManager();
    IFeatureModel[] workspaceModels = fmm.getWorkspaceModels();
    for (int i = 0; i < workspaceModels.length; i++) {
        String id = workspaceModels[i].getFeature().getId();
        featureModels.put(id, new FeatureLaunchModel(workspaceModels[i], null));
    }

    // If there is both a workspace and a target model with the same id, combine them into the same launch model
    IFeatureModel[] externalModels = fmm.getExternalModels();
    for (int i = 0; i < externalModels.length; i++) {
        String id = externalModels[i].getFeature().getId();
        if (featureModels.containsKey(id)) {
            FeatureLaunchModel launchModel = (FeatureLaunchModel) featureModels.get(id);
            launchModel.setTargetModel(externalModels[i]);
        } else {
            featureModels.put(id, new FeatureLaunchModel(null, externalModels[i]));
        }
    }

    fFeatureModels = featureModels;
    try {
        fAdditionalPlugins = new ArrayList();
        List checkedAdditionalPlugins = new ArrayList();
        HashMap allAdditionalMap = BundleLauncherHelper.getAdditionalPlugins(config, false);
        HashMap checkedAdditionalMap = BundleLauncherHelper.getAdditionalPlugins(config, true);
        for (Iterator iterator = allAdditionalMap.keySet().iterator(); iterator.hasNext();) {
            IMonitorModelBase model = (IMonitorModelBase) iterator.next();
            PluginLaunchModel launchModel = new PluginLaunchModel(model, (String) allAdditionalMap.get(model));
            fAdditionalPlugins.add(launchModel);
            if (checkedAdditionalMap.containsKey(model)) {
                checkedAdditionalPlugins.add(launchModel);
            }
        }

        List models = new ArrayList(fFeatureModels.values());
        if (fAdditionalPlugins.size() > 0) {
            models.add(fAdditionalPluginsParentElement);
        }
        tree.setInput(models);

        // Loop through the saved config to determine location settings and selection
        Set selected = config.getAttribute(IPDELauncherConstants.SELECTED_FEATURES, (Set) null);
        if (selected == null) {
            tree.setCheckedElements(fFeatureModels.values().toArray());
        } else {
            ArrayList selectedFeatureList = new ArrayList();
            for (Iterator iterator = selected.iterator(); iterator.hasNext();) {
                String currentSelected = (String) iterator.next();
                String[] attributes = currentSelected.split(":"); //$NON-NLS-1$
                if (attributes.length > 0) {
                    String id = attributes[0];
                    FeatureLaunchModel model = (FeatureLaunchModel) fFeatureModels.get(id);
                    if (model != null) {
                        selectedFeatureList.add(model);
                        if (attributes.length > 1) {
                            model.setPluginResolution(attributes[1]);
                        }
                    }
                }
            }
            List checkedElements = new ArrayList();
            checkedElements.addAll(selectedFeatureList);
            checkedElements.addAll(checkedAdditionalPlugins);
            tree.setCheckedElements(checkedElements.toArray());
        }
    } catch (CoreException e) {
        PDELaunchingPlugin.log(e);
    }

    updateCounter();
}

From source file:gov.nasa.ensemble.common.ui.multiselect.InPlaceCheckBoxTreeDialog.java

License:Open Source License

@Override
protected Control createControl(Composite parent) {

    Composite composite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.marginHeight = MARGIN_SIZE;/*from w  w  w .ja va  2s  . c o  m*/
    layout.marginWidth = MARGIN_SIZE;
    layout.horizontalSpacing = 0;
    layout.verticalSpacing = 0;
    composite.setLayout(layout);
    GridData gd = new GridData(GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL | GridData.FILL_BOTH);
    composite.setLayoutData(gd);

    valueTree = new CheckboxFilteredTree(composite,
            SWT.CHECK | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER, new SubstringPatternFilter());
    gd = new GridData(GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL | GridData.FILL_BOTH);
    gd.heightHint = 175;
    gd.widthHint = 160;
    CheckboxTreeViewer viewer = valueTree.getViewer();
    viewer.getControl().setLayoutData(gd);

    if (optionsList != null) {

        viewer.setContentProvider(new ITreeContentProvider() {

            @Override
            public Object[] getChildren(Object parentElement) {
                if (parentElement instanceof List<?>) {
                    return ((List<?>) parentElement).toArray();
                }
                return null;
            }

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

            @Override
            public boolean hasChildren(Object element) {
                return false;
            }

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

            @Override
            public void dispose() {
                //do nothing
            }

            @Override
            public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
                //do nothing
            }

        });

        viewer.setLabelProvider(new LabelProvider() {
            @Override
            public String getText(Object element) {
                if (element instanceof String) {
                    return (String) element;
                }
                return super.getText(element);
            }
        });

        optionsList.remove(null);
        viewer.setInput(optionsList);

        Set<String> invalidValues = new HashSet<String>();

        // Remove any currently entered invalid values
        for (String value : selectedList) {
            if (!optionsList.contains(value)) {
                invalidValues.add(value);
            }
        }
        // Remove any unselected values
        for (String value : optionsList) {
            if (!viewer.setChecked(value, true)) {
                invalidValues.add(value);
            }
        }

        selectedList.removeAll(invalidValues);

        Set<String> joinChecked = new HashSet<String>(getSelectedValues());
        for (String i : getPartialValues()) {
            viewer.setGrayed(i, true);
            joinChecked.add(i);
        }
        viewer.setCheckedElements(joinChecked.toArray());
    }

    this.addEventListener(new IInPlaceDialogListener() {

        @Override
        public void buttonPressed(InPlaceDialogEvent event) {
            if (event.getReturnCode() == AbstractInPlaceDialog.ID_OK) {
                dialogButtonPressOK();
            } else if (event.getReturnCode() == AbstractInPlaceDialog.ID_DESELECT_ALL) {
                dialogButtonPressDeselect();
            }

        }
    });

    viewer.addCheckStateListener(new ICheckStateListener() {

        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {

            if (event.getChecked()) {
                if (greyedList.contains(event.getElement())) {
                    greyedList.remove(event.getElement());
                    valueTree.getViewer().setGrayed(event.getElement(), false);
                }
                selectedList.add((String) event.getElement());
            } else {
                if (greyedList.contains(event.getElement())) {
                    greyedList.remove(event.getElement());
                    valueTree.getViewer().setGrayed(event.getElement(), false);
                } else {
                    selectedList.remove(event.getElement());
                }
            }
        }
    });

    return valueTree;
}

From source file:net.tourbook.ui.views.tourCatalog.ActionUncheckTours.java

License:Open Source License

@Override
public void run() {

    // uncheck all selected tours

    final CheckboxTreeViewer viewer = fCompareResultView.getViewer();
    //      final StructuredSelection selection = (StructuredSelection) viewer.getSelection();
    //      if (selection.size() > 0) {
    ///* ww  w  .  ja  v a  2  s  .  c om*/
    //         for (final Object tour : selection.toArray()) {
    //            viewer.setChecked(tour, false);
    //         }
    //      }

    viewer.setCheckedElements(new Object[0]);
}

From source file:org.caleydo.vis.lineup.internal.ui.CatFilterDalog.java

License:Open Source License

@Override
protected void createSpecificFilterUI(Composite composite) {
    // create message
    Composite buttonComposite = new Composite(composite, SWT.NONE);
    GridData data = new GridData(SWT.FILL, SWT.TOP, true, false);
    data.horizontalSpan = 2;//from   ww w.j  a v  a  2  s. c  o m
    buttonComposite.setLayoutData(data);
    GridLayout layout = new GridLayout(3, false);
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    layout.verticalSpacing = 0;
    buttonComposite.setLayout(layout);
    {
        Label label = new Label(buttonComposite, SWT.WRAP);
        label.setText("Selection Items to Include:");
        data = new GridData(SWT.LEFT, SWT.CENTER, true, false);
        data.horizontalSpan = 1;
        label.setLayoutData(data);
        label.setFont(composite.getFont());

        Button selectButton = new Button(buttonComposite, SWT.PUSH);
        selectButton.setText("Select &All");
        SelectionListener listener = new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                Object[] viewerElements = ArrayContentProvider.getInstance().getElements(categories);
                fViewer.setCheckedElements(viewerElements);
            }
        };
        selectButton.setLayoutData(new GridData(SWT.RIGHT, SWT.TOP, false, false));
        selectButton.addSelectionListener(listener);
        Button deselectButton = new Button(buttonComposite, SWT.PUSH);
        deselectButton.setText("Select &None");
        listener = new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                fViewer.setCheckedElements(new Object[0]);
            }
        };
        deselectButton.setLayoutData(new GridData(SWT.RIGHT, SWT.TOP, false, false));
        deselectButton.addSelectionListener(listener);
    }
    buttonComposite.pack();

    CheckboxTreeViewer treeViewer = createTreeViewer(composite);
    treeViewer.setCheckedElements(selection.toArray());
    treeViewer.setChecked(NA, !filterNA);
    data = new GridData(GridData.FILL_BOTH);
    data.widthHint = getCharWith(composite, 60);
    data.heightHint = getCharHeight(composite) * 10;
    data.horizontalSpan = 2;
    Tree treeWidget = treeViewer.getTree();
    treeWidget.setLayoutData(data);
    treeWidget.setFont(composite.getFont());

    addButtonAndOption(composite);
}

From source file:org.eclipse.egit.ui.internal.push.PushTagsPage.java

License:Open Source License

private void initiallySelectTags(Object[] tagNodes, CheckboxTreeViewer viewer) {
    List<TagNode> checkedTags = new ArrayList<>();
    for (Object node : tagNodes) {
        if (node instanceof TagNode) {
            TagNode tagNode = (TagNode) node;
            Ref ref = tagNode.getObject();
            if (tagRefNamesToSelect.contains(ref.getName()))
                checkedTags.add(tagNode);
        }//  ww w.  j  av a 2  s . c  om
    }

    TagNode[] checkedTagsArray = checkedTags.toArray(new TagNode[checkedTags.size()]);
    viewer.setCheckedElements(checkedTagsArray);
    if (checkedTagsArray.length > 0) {
        // Reveal tags (just using reveal does not work on some platforms)
        viewer.setSelection(new StructuredSelection(checkedTagsArray), true);
        // Clear selection, we don't want to highlight the rows that much
        viewer.setSelection(StructuredSelection.EMPTY);
    }
    setSelectedTags(checkedTagsArray);
}

From source file:org.eclipse.emf.converter.ui.contribution.base.ModelConverterPackagePage.java

License:Open Source License

protected void referencedGenModelsAddSelected(CheckboxTreeViewer treeViewer) {
    IPath path = null;/*from w w w. j av  a 2  s. co  m*/
    Resource resource = getModelConverter().getGenModel().eResource();
    if (resource != null) {
        if (resource.getURI().isPlatformResource()) {
            path = new Path(resource.getURI().toPlatformString(true)).makeAbsolute();
        }
    }
    final IPath genModelPath = path;

    ResourceSet resourceSet = null;
    List<GenModel> genModels = new UniqueEList.FastCompare<GenModel>();
    final Set<URI> genModelURIs = new HashSet<URI>();
    Object input = treeViewer.getInput();
    if (input instanceof ItemProvider) {
        Collection<?> elements = ((ItemProvider) input).getChildren();
        for (Object element : elements) {
            if (element instanceof GenModel) {
                GenModel genModel = (GenModel) element;
                URI genModelURI = genModel.eResource().getURI();
                genModels.add(genModel);
                genModelURIs.add(genModelURI);
                if (resourceSet == null && genModelURI.isPlatformResource()) {
                    resourceSet = genModel.eResource().getResourceSet();
                }
            }
        }
    }

    ViewerFilter genModelFilter = new ViewerFilter() {
        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            if (element instanceof IFile) {
                IFile file = (IFile) element;
                URI uri = URI.createPlatformResourceURI(file.getFullPath().toString(), true);
                String fileExtension = file.getFileExtension();
                return ("genmodel".equals(fileExtension) || "xcore".equals(fileExtension))
                        && !file.getFullPath().equals(genModelPath) && !genModelURIs.contains(uri);
            }
            return true;
        }
    };

    IFile[] files = WorkspaceResourceDialog.openFileSelection(getShell(), null,
            ConverterPlugin.INSTANCE.getString("_UI_SelectGenModel_message"), true, null,
            Collections.singletonList(genModelFilter));

    if (files.length > 0) {
        ResourceSet referencedGenModels = resourceSet != null ? resourceSet
                : getModelConverter().createResourceSet();

        for (int i = 0; i < files.length; ++i) {
            URI genModelURI = URI.createPlatformResourceURI(files[i].getFullPath().toString(), true);
            Resource genModelResource = referencedGenModels.getResource(genModelURI, true);
            GenModel genModel = (GenModel) EcoreUtil.getObjectByType(genModelResource.getContents(),
                    GenModelPackage.Literals.GEN_MODEL);
            genModels.add(genModel);
        }

        addExternalGenModels(genModels);
        addReferencedGenModels(genModels);

        List<GenPackage> genPackagesToCheck = new ArrayList<GenPackage>();
        Object[] checkedElements = treeViewer.getCheckedElements();
        LOOP: for (int i = 0; i < checkedElements.length; i++) {
            if (checkedElements[i] instanceof GenPackage) {
                GenPackage checkedGenPackage = (GenPackage) checkedElements[i];
                String nsURI = checkedGenPackage.getNSURI();
                for (GenModel genModel : genModels) {
                    for (GenPackage genPackage : genModel.getGenPackages()) {
                        if (nsURI.equals(genPackage.getNSURI())) {
                            genPackagesToCheck.add(genPackage);
                            continue LOOP;
                        }
                    }
                }
            }
        }
        treeViewer.getTree().deselectAll();
        treeViewer.cancelEditing();
        treeViewer.setInput(new ItemProvider(genModels));
        for (Iterator<?> i = genModels.iterator(); i.hasNext();) {
            treeViewer.expandToLevel(i.next(), AbstractTreeViewer.ALL_LEVELS);
        }
        treeViewer.setCheckedElements(genPackagesToCheck.toArray());
        referencedGenModelsCheckboxTreeViewerCheckStateChanged(null);
    }
}

From source file:org.eclipse.emf.search.ui.areas.AbstractModelSearchParticipantArea.java

License:Open Source License

/**
 * {@inheritDoc}//from  w  w w  . j  a  va 2s . co  m
 */
public void handleTargetMetaElementParticipantSelection(EObject element) {
    if (element instanceof ENamedElement) {
        TreeViewer v = getMetaElementParticipantFilterCheckedTreeViewer().getViewer();
        if (v instanceof CheckboxTreeViewer) {
            CheckboxTreeViewer containerCheckboxFilteredTree = (CheckboxTreeViewer) v;
            containerCheckboxFilteredTree.setCheckedElements(new EObject[] { element });
            getMetaElementParticipantFilterCheckedTreeViewer().getViewer().reveal(element);
        }
    }
}

From source file:org.eclipse.mylyn.commons.workbench.InPlaceCheckBoxTreeDialog.java

License:Open Source License

@Override
protected Control createControl(Composite parent) {
    getShell().setText(dialogLabel);//from ww w  .j  a  va2s  .co m

    Composite composite = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.marginHeight = MARGIN_SIZE;
    layout.marginWidth = MARGIN_SIZE;
    layout.horizontalSpacing = 0;
    layout.verticalSpacing = 0;
    composite.setLayout(layout);
    GridData gd = new GridData(GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL | GridData.FILL_BOTH);
    composite.setLayoutData(gd);

    valueTree = new CheckboxFilteredTree(composite,
            SWT.CHECK | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER, new SubstringPatternFilter());
    gd = new GridData(GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL | GridData.FILL_BOTH);
    gd.heightHint = 175;
    gd.widthHint = 160;
    CheckboxTreeViewer viewer = valueTree.getViewer();
    viewer.getControl().setLayoutData(gd);

    if (validValues != null) {

        viewer.setContentProvider(new ITreeContentProvider() {

            public Object[] getChildren(Object parentElement) {
                if (parentElement instanceof Map<?, ?>) {
                    return ((Map<?, ?>) parentElement).keySet().toArray();
                }
                return null;
            }

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

            public boolean hasChildren(Object element) {
                return false;
            }

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

            public void dispose() {
            }

            public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
            }

        });

        //viewer.setSorter(new ViewerSorter());
        viewer.setLabelProvider(new LabelProvider() {
            @Override
            public String getText(Object element) {
                if (element instanceof String) {
                    return validValues.get(element);
                }
                return super.getText(element);
            }
        });
        viewer.setInput(validValues);

        Set<String> invalidValues = new HashSet<String>();

        // Remove any currently entered invalid values
        for (String value : selectedValues) {
            if (!validValues.containsKey(value)) {
                invalidValues.add(value);
            }
        }

        // Remove any unselected values
        for (String value : validValues.keySet()) {
            if (!viewer.setChecked(value, true)) {
                invalidValues.add(value);
            }
        }

        selectedValues.removeAll(invalidValues);

        viewer.setCheckedElements(selectedValues.toArray());

    }

    viewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            if (event.getChecked()) {
                selectedValues.add((String) event.getElement());
            } else {
                selectedValues.remove(event.getElement());
            }
        }

    });

    return valueTree;
}