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

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

Introduction

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

Prototype

public static CheckboxTableViewer newCheckList(Composite parent, int style) 

Source Link

Document

Creates a table viewer on a newly-created table control under the given parent.

Usage

From source file:org.eclipse.dltk.internal.ui.preferences.DLTKLoggingPreferencePage.java

License:Open Source License

@Override
protected Control createContents(Composite parent) {
    viewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER | SWT.FULL_SELECTION);
    viewer.setContentProvider(ArrayContentProvider.getInstance());
    viewer.setLabelProvider(new OptionLableProvider());
    final List<Option> options = collectOptions();
    viewer.setInput(options);//from  ww w . j av a  2s .  co  m
    final Set<String> optionIds = new HashSet<String>();
    for (Option option : options) {
        optionIds.add(option.id);
    }
    final Map<String, Boolean> state = DLTKLogging.getState(optionIds);
    final List<Option> checked = new ArrayList<Option>();
    for (Option option : options) {
        final Boolean value = state.get(option.id);
        if (value != null && value.booleanValue()) {
            checked.add(option);
        }
    }
    viewer.setCheckedElements(checked.toArray());
    return viewer.getControl();
}

From source file:org.eclipse.dltk.internal.ui.workingsets.WorkingSetConfigurationDialog.java

License:Open Source License

private void createTableViewer(Composite parent) {
    fTableViewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER | SWT.MULTI);
    fTableViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            updateButtonAvailability();/*from   w  ww  .j a v  a2 s.c  o m*/
        }
    });
    GridData data = new GridData(GridData.FILL_BOTH);
    data.heightHint = convertHeightInCharsToPixels(20);
    data.widthHint = convertWidthInCharsToPixels(50);
    fTableViewer.getTable().setLayoutData(data);
    fTableViewer.getTable().setFont(parent.getFont());

    fTableViewer.addFilter(new Filter());
    fTableViewer.setLabelProvider(new WorkingSetLabelProvider());
    fTableViewer.setContentProvider(new IStructuredContentProvider() {
        public Object[] getElements(Object element) {
            return ((List) element).toArray();
        }

        public void dispose() {
        }

        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }
    });
    fTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            handleSelectionChanged();
        }
    });
}

From source file:org.eclipse.dltk.mod.ui.wizards.SimpleWorkingSetSelectionDialog.java

License:Open Source License

protected CheckboxTableViewer createTableViewer(Composite parent) {
    CheckboxTableViewer result = CheckboxTableViewer.newCheckList(parent, SWT.BORDER | SWT.MULTI);
    result.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            checkedStateChanged();/*from  w  w  w  . jav a 2s  .  c o m*/
        }
    });
    GridData data = new GridData(GridData.FILL_BOTH);
    data.heightHint = convertHeightInCharsToPixels(20);
    data.widthHint = convertWidthInCharsToPixels(50);
    result.getTable().setLayoutData(data);
    result.getTable().setFont(parent.getFont());

    result.addFilter(createTableFilter());
    result.setLabelProvider(createTableLabelProvider());
    result.setSorter(createTableSorter());
    result.setContentProvider(new IStructuredContentProvider() {
        public Object[] getElements(Object element) {
            return (Object[]) element;
        }

        public void dispose() {
        }

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

    result.setInput(fWorkingSets);
    result.setCheckedElements(fInitialSelection);

    return result;
}

From source file:org.eclipse.e4.tools.emf.ui.internal.imp.ModelImportPage1.java

License:Open Source License

/**
 * Create contents of the wizard.//from   w  w  w  .  j a v  a  2 s . c  om
 * 
 * @param parent
 */
@Override
public void createControl(Composite parent) {
    Composite container = new Composite(parent, SWT.NULL);

    setControl(container);
    container.setLayout(new GridLayout(1, false));

    ComboViewer comboViewer = new ComboViewer(container, SWT.NONE);
    Combo combo = comboViewer.getCombo();
    combo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));

    Composite composite = new Composite(container, SWT.NONE);
    composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
    TableColumnLayout tcl_composite = new TableColumnLayout();
    composite.setLayout(tcl_composite);

    final CheckboxTableViewer checkboxTableViewer = CheckboxTableViewer.newCheckList(composite,
            SWT.BORDER | SWT.FULL_SELECTION);

    TableViewerColumn tableViewerColumn = new TableViewerColumn(checkboxTableViewer, SWT.NONE);
    TableColumn column = tableViewerColumn.getColumn();
    column.setResizable(false);
    tcl_composite.setColumnData(column, new ColumnWeightData(1, ColumnWeightData.MINIMUM_WIDTH, true));
    column.setText("Description");
    checkboxTableViewer.setLabelProvider(new TableLabelProvider());
    checkboxTableViewer.setContentProvider(new TableContentProvider());
    comboViewer.setContentProvider(new ComboContentProvider());

    comboViewer.setInput("go");

    comboViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            String bundle = ((IStructuredSelection) event.getSelection()).getFirstElement().toString();
            RegistryStruct struct = RegistryUtil.getStruct(wizard.getApplicationElement(), wizard.getHint());
            struct.setBundle(bundle);
            checkboxTableViewer.setInput(struct);

        }
    });

    checkboxTableViewer.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            checkedElements = checkboxTableViewer.getCheckedElements();
            if (checkedElements.length > 0) {
                setPageComplete(true);
            } else {
                setPageComplete(false);
            }
        }
    });
}

From source file:org.eclipse.e4.tools.ui.designer.wizards.part.PropertiesComposite.java

License:Open Source License

protected Composite createClient(Composite parent) {
    Composite client = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    client.setLayout(layout);/*w  w w. j a v  a  2 s .  com*/

    Label label = new Label(client, SWT.NONE);
    label.setText("Show Members:");

    Composite tableComp = new Composite(client, SWT.NONE);
    TableColumnLayout tableLayout = new TableColumnLayout();
    tableComp.setLayout(tableLayout);
    tableComp.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

    tableViewer = CheckboxTableViewer.newCheckList(tableComp,
            SWT.BORDER | SWT.FULL_SELECTION | SWT.HIDE_SELECTION);
    propertiesProvider = new PropertiesContentProvider();
    tableViewer.setContentProvider(propertiesProvider);

    final Table table = tableViewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    TableColumn propertyColumn = new TableColumn(table, SWT.CENTER);
    propertyColumn.reskin(0);
    propertyColumn.setText("Property");
    tableLayout.setColumnData(propertyColumn, new ColumnWeightData(10));
    TableViewerColumn propertyViewerColumn = new TableViewerColumn(tableViewer, propertyColumn);
    final PDCTypeLabelProvider labelProvider = new PDCTypeLabelProvider();
    propertyViewerColumn.setLabelProvider(new ColumnLabelProvider() {
        public String getText(Object element) {
            return PDC.getPropertyDisplayName(element);
        }

        public Image getImage(Object element) {
            return labelProvider.getImage(element);
        }
    });

    TableColumn masterColumn = new TableColumn(table, SWT.LEFT);
    masterColumn.setText("Selection Provider");
    tableLayout.setColumnData(masterColumn, new ColumnWeightData(10));

    TableViewerColumn masterViewerColumn = new TableViewerColumn(tableViewer, masterColumn);
    masterViewerColumn.setLabelProvider(new CellLabelProvider() {
        public void update(ViewerCell cell) {
            final TableItem item = (TableItem) cell.getItem();
            DisposeListener listener = new DisposeListener() {

                public void widgetDisposed(DisposeEvent e) {
                    if (item.getData("EDITOR") != null) {
                        TableEditor editor = (TableEditor) item.getData("EDITOR");
                        editor.getEditor().dispose();
                        editor.dispose();
                    }
                }

            };

            if (item.getData("EDITOR") != null) {
                TableEditor editor = (TableEditor) item.getData("EDITOR");
                if (editor.getEditor() != null) {
                    editor.getEditor().dispose();
                }
                editor.dispose();
            }

            if (item.getData("DISPOSELISTNER") != null) {
                item.removeDisposeListener((DisposeListener) item.getData("DISPOSELISTNER"));
            }
            final Object data = item.getData();
            if (!dataContext.isPropertyMany(data)) {
                return;
            }
            TableEditor editor = new TableEditor(item.getParent());
            item.setData("EDITOR", editor);
            final Button checkBox = new Button(item.getParent(), SWT.CHECK);
            checkBox.pack();
            checkBox.setEnabled(dataContext.containsProperty(data));
            checkBox.setBackground(table.getBackground());
            checkBox.setSelection(dataContext.containsMaster(data));
            checkBox.addListener(SWT.Selection, new Listener() {
                public void handleEvent(Event event) {
                    if (checkBox.getSelection()) {
                        dataContext.addMasterProperty(data);
                    } else {
                        dataContext.removeMasterProperty(data);
                    }
                }
            });
            editor.grabHorizontal = true;
            editor.setEditor(checkBox, item, 1);

            item.addDisposeListener(listener);
            item.setData("DISPOSELISTNER", listener);
        }
    });
    tableViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            Object element = event.getElement();
            boolean checked = event.getChecked();
            TableItem item = (TableItem) tableViewer.testFindItem(element);
            if (item.getData("EDITOR") != null) {
                TableEditor editor = (TableEditor) item.getData("EDITOR");
                Button control = (Button) editor.getEditor();
                if (control != null) {
                    control.setEnabled(checked);
                    if (!checked && control.getSelection()) {
                        dataContext.removeMasterProperty(element);
                    } else if (checked && control.getSelection()) {
                        dataContext.addMasterProperty(element);
                    }
                }
            }
            if (checked) {
                dataContext.addProperty(element);
            } else {
                dataContext.removeProperty(element);
            }
        }
    });

    resetTable();

    dataContext.addPropertyChangeListener(new PropertyChangeListener() {
        public void propertyChange(PropertyChangeEvent evt) {
            String propertyName = evt.getPropertyName();
            if (PartDataContext.VALUE.equals(propertyName) || PartDataContext.TYPE.equals(propertyName)) {
                resetTable();
            }
        }
    });

    createOptions(client);
    return client;
}

From source file:org.eclipse.e4.ui.dialogs.ListSelectionDialog.java

License:Open Source License

protected Control createDialogArea(Composite parent) {
    // page group
    Composite composite = (Composite) super.createDialogArea(parent);

    initializeDialogUnits(composite);/*from  w ww  . j  a  v  a  2 s  . c  o  m*/

    createMessageArea(composite);

    listViewer = CheckboxTableViewer.newCheckList(composite, SWT.BORDER);
    GridData data = new GridData(GridData.FILL_BOTH);
    data.heightHint = SIZING_SELECTION_WIDGET_HEIGHT;
    data.widthHint = SIZING_SELECTION_WIDGET_WIDTH;
    listViewer.getTable().setLayoutData(data);

    listViewer.setLabelProvider(labelProvider);
    listViewer.setContentProvider(contentProvider);

    addSelectionButtons(composite);

    initializeViewer();

    // initialize page
    if (!getInitialElementSelections().isEmpty()) {
        checkInitialSelections();
    }

    Dialog.applyDialogFont(composite);

    return composite;
}

From source file:org.eclipse.edt.debug.internal.ui.java.EGLJavaDebugPreferencePage.java

License:Open Source License

private CheckboxTableViewer createTableViewer(Composite parent) {
    // For TableColumnLayout to work, it must be applied to a composite that contains nothing but the table.
    Composite tableComp = new Composite(parent, SWT.NONE);
    tableComp.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    CheckboxTableViewer viewer = CheckboxTableViewer.newCheckList(tableComp, SWT.SINGLE | SWT.BORDER);
    Table table = viewer.getTable();/* w  ww. jav  a  2s .co m*/
    table.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    table.setLinesVisible(true);
    table.setHeaderVisible(true);

    TableViewerColumn categoryColumn = new TableViewerColumn(viewer, SWT.NONE);
    categoryColumn.getColumn().setText(EGLJavaMessages.TypeFiltersCategoryColumn);
    categoryColumn.getColumn().setResizable(true);
    categoryColumn.getColumn().setMoveable(false);

    TableViewerColumn stepTypeColumn = new TableViewerColumn(viewer, SWT.NONE);
    stepTypeColumn.getColumn().setText(EGLJavaMessages.TypeFiltersBehaviorColumn);
    stepTypeColumn.getColumn().setResizable(true);
    stepTypeColumn.getColumn().setMoveable(false);
    stepTypeColumn.setEditingSupport(new EditingSupport(viewer));

    viewer.setLabelProvider(new LabelProvider());
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setCheckStateProvider(new CheckStateProvider());
    viewer.addCheckStateListener(new CheckStateListener());

    TableColumnLayout layout = new TableColumnLayout();
    tableComp.setLayout(layout);
    layout.setColumnData(categoryColumn.getColumn(), new ColumnWeightData(50, true));
    layout.setColumnData(stepTypeColumn.getColumn(), new ColumnWeightData(40, true));

    return viewer;
}

From source file:org.eclipse.edt.ide.ui.internal.preferences.ContentAssistAdvancedConfigurationBlock.java

License:Open Source License

private void createDefaultViewer(Composite composite, int h_span) {
    fDefaultViewer = CheckboxTableViewer.newCheckList(composite, SWT.SINGLE | SWT.BORDER);
    Table table = fDefaultViewer.getTable();
    table.setHeaderVisible(true);//  www  .  j av  a  2s.  co  m
    table.setLinesVisible(false);
    table.setLayoutData(new GridData(GridData.FILL, GridData.BEGINNING, false, false, h_span, 1));

    TableColumn nameColumn = new TableColumn(table, SWT.NONE);
    nameColumn.setText(
            PreferencesMessages.CodeAssistAdvancedConfigurationBlock_default_table_category_column_title);
    nameColumn.setResizable(false);
    //      TableColumn keyColumn= new TableColumn(table, SWT.NONE);
    //      keyColumn.setText(PreferencesMessages.CodeAssistAdvancedConfigurationBlock_default_table_keybinding_column_title);
    //      keyColumn.setResizable(false);

    fDefaultViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            boolean checked = event.getChecked();
            ModelElement element = (ModelElement) event.getElement();
            element.setInDefaultCategory(checked);
        }
    });

    fDefaultViewer.setContentProvider(new ArrayContentProvider());

    DefaultTableLabelProvider labelProvider = new DefaultTableLabelProvider();
    fDefaultViewer.setLabelProvider(labelProvider);
    fDefaultViewer.setInput(fModel.elements);
    fDefaultViewer.setComparator(new ViewerComparator()); // sort alphabetically

    final int ICON_AND_CHECKBOX_WITH = 50;
    final int HEADER_MARGIN = 20;
    int minNameWidth = computeWidth(table, nameColumn.getText()) + HEADER_MARGIN;
    //      int minKeyWidth= computeWidth(table, keyColumn.getText()) + HEADER_MARGIN;
    for (int i = 0; i < fModel.elements.size(); i++) {
        minNameWidth = Math.max(minNameWidth,
                computeWidth(table, labelProvider.getColumnText(fModel.elements.get(i), 0))
                        + ICON_AND_CHECKBOX_WITH);
        //         minKeyWidth= Math.max(minKeyWidth, computeWidth(table, labelProvider.getColumnText(fModel.elements.get(i), 1)));
    }

    nameColumn.setWidth(minNameWidth);
    //      keyColumn.setWidth(minKeyWidth);
}

From source file:org.eclipse.edt.ide.ui.internal.preferences.ContentAssistAdvancedConfigurationBlock.java

License:Open Source License

private void createSeparateViewer(Composite composite) {
    fSeparateViewer = CheckboxTableViewer.newCheckList(composite, SWT.SINGLE | SWT.BORDER);
    Table table = fSeparateViewer.getTable();
    table.setHeaderVisible(false);/*from   w w w. ja va 2  s  .  c  om*/
    table.setLinesVisible(false);
    table.setLayoutData(new GridData(GridData.FILL, GridData.BEGINNING, true, false, 1, 1));

    TableColumn nameColumn = new TableColumn(table, SWT.NONE);
    nameColumn.setText(
            PreferencesMessages.CodeAssistAdvancedConfigurationBlock_separate_table_category_column_title);
    nameColumn.setResizable(false);

    fSeparateViewer.setContentProvider(new ArrayContentProvider());

    ITableLabelProvider labelProvider = new SeparateTableLabelProvider();
    fSeparateViewer.setLabelProvider(labelProvider);
    fSeparateViewer.setInput(fModel.elements);

    final int ICON_AND_CHECKBOX_WITH = 50;
    final int HEADER_MARGIN = 20;
    int minNameWidth = computeWidth(table, nameColumn.getText()) + HEADER_MARGIN;
    for (int i = 0; i < fModel.elements.size(); i++) {
        minNameWidth = Math.max(minNameWidth,
                computeWidth(table, labelProvider.getColumnText(fModel.elements.get(i), 0))
                        + ICON_AND_CHECKBOX_WITH);
    }

    nameColumn.setWidth(minNameWidth);

    fSeparateViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            boolean checked = event.getChecked();
            ModelElement element = (ModelElement) event.getElement();
            element.setSeparateCommand(checked);
        }
    });

    table.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            handleTableSelection();
        }
    });

}

From source file:org.eclipse.egit.ui.internal.clean.CleanRepositoryPage.java

License:Open Source License

public void createControl(Composite parent) {
    Composite main = new Composite(parent, SWT.NONE);
    GridDataFactory.fillDefaults().grab(true, true).applyTo(main);
    main.setLayout(new GridLayout());

    final Button radioCleanFiles = new Button(main, SWT.RADIO);
    radioCleanFiles.setText(UIText.CleanRepositoryPage_cleanFiles);
    GridDataFactory.fillDefaults().grab(true, false).applyTo(radioCleanFiles);

    final Button radioCleanDirs = new Button(main, SWT.RADIO);
    radioCleanDirs.setText(UIText.CleanRepositoryPage_cleanDirs);
    GridDataFactory.fillDefaults().grab(true, false).applyTo(radioCleanDirs);

    SelectionAdapter listener = new SelectionAdapter() {
        @Override/*from  w  w  w  .  j  a va 2  s  . co  m*/
        public void widgetSelected(SelectionEvent e) {
            cleanDirectories = radioCleanDirs.getSelection();
            updateCleanItems();
        }
    };

    radioCleanFiles.addSelectionListener(listener);
    radioCleanDirs.addSelectionListener(listener);

    radioCleanFiles.setSelection(true);

    final Image fileImage = PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FILE);
    final Image dirImage = PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER);

    cleanTable = CheckboxTableViewer.newCheckList(main, SWT.BORDER);
    cleanTable.setContentProvider(new ArrayContentProvider());
    cleanTable.setLabelProvider(new LabelProvider() {
        @Override
        public Image getImage(Object element) {
            if (!(element instanceof String))
                return null;

            if (((String) element).endsWith("/")) //$NON-NLS-1$
                return dirImage;
            else
                return fileImage;
        }
    });

    GridDataFactory.fillDefaults().grab(true, true).applyTo(cleanTable.getControl());

    Composite lowerComp = new Composite(main, SWT.NONE);
    GridDataFactory.fillDefaults().grab(true, false).applyTo(lowerComp);
    lowerComp.setLayout(new GridLayout(3, false));

    final Button checkIncludeIgnored = new Button(lowerComp, SWT.CHECK);
    checkIncludeIgnored.setText(UIText.CleanRepositoryPage_includeIgnored);
    GridDataFactory.fillDefaults().grab(true, false).applyTo(checkIncludeIgnored);
    checkIncludeIgnored.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            includeIgnored = checkIncludeIgnored.getSelection();
            updateCleanItems();
        }
    });

    Button selAll = new Button(lowerComp, SWT.PUSH);
    selAll.setText(UIText.WizardProjectsImportPage_selectAll);
    GridDataFactory.defaultsFor(selAll).applyTo(selAll);

    Button selNone = new Button(lowerComp, SWT.PUSH);
    selNone.setText(UIText.WizardProjectsImportPage_deselectAll);
    GridDataFactory.defaultsFor(selNone).applyTo(selNone);

    selAll.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            if (cleanTable.getInput() instanceof Set<?>) {
                Set<?> input = (Set<?>) cleanTable.getInput();
                cleanTable.setCheckedElements(input.toArray());
            }
        }
    });

    selNone.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            cleanTable.setCheckedElements(new Object[0]);
        }
    });

    setControl(main);
}