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

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

Introduction

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

Prototype

public CheckboxTableViewer(Table table) 

Source Link

Document

Creates a table viewer on the given table control.

Usage

From source file:tern.eclipse.ide.ui.controls.TernDefsBlock.java

License:Open Source License

public void createControl(Composite ancestor) {

    Composite parent = new Composite(ancestor, SWT.NULL);
    GridLayout layout = new GridLayout();
    layout.numColumns = 2;// w  ww  .  ja va2s .  c o  m
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    parent.setLayout(layout);
    Font font = ancestor.getFont();
    parent.setFont(font);
    fControl = parent;

    GridData data;

    if (tableLabel != null) {
        Label tableLabel = new Label(parent, SWT.NONE);
        tableLabel.setText(this.tableLabel);
        data = new GridData();
        data.horizontalSpan = 2;
        tableLabel.setLayoutData(data);
        tableLabel.setFont(font);
    }

    Table fTable = new Table(parent, SWT.CHECK | SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL);

    data = new GridData(GridData.FILL_BOTH);
    data.widthHint = 450;
    fTable.setLayoutData(data);
    fTable.setFont(font);

    fTable.setHeaderVisible(true);
    fTable.setLinesVisible(true);

    TableColumn column1 = new TableColumn(fTable, SWT.NONE);
    column1.setWidth(180);
    column1.setResizable(true);
    column1.setText(TernUIMessages.TernDefsBlock_defName);
    column1.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            sortByName();
        }
    });

    TableColumn column2 = new TableColumn(fTable, SWT.NONE);
    column2.setWidth(180);
    column2.setResizable(true);
    column2.setText(TernUIMessages.TernDefsBlock_defPath);
    column2.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            sortByPath();
        }
    });

    tableViewer = new CheckboxTableViewer(fTable);
    tableViewer.setLabelProvider(new TernDefLabelProvider());
    tableViewer.setContentProvider(new TernDefContentProvider(ternDefs));

    restoreColumnSettings();
}

From source file:tern.eclipse.ide.ui.controls.TernModulesBlock.java

License:Open Source License

/**
 * Create table of tern modules.// ww w .  j a  va  2 s  . c  o m
 * 
 * @param ancestor
 */
private void createModulesMaster(Composite ancestor) {
    Composite parent = new Composite(ancestor, SWT.NULL);
    GridLayout layout = new GridLayout();
    layout.numColumns = 2;
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    parent.setLayout(layout);
    Font font = ancestor.getFont();
    parent.setFont(font);

    Table table = new Table(parent, SWT.CHECK | SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL);

    GridData data = new GridData(GridData.FILL_BOTH);
    data.widthHint = 350;
    data.heightHint = 400;
    table.setLayoutData(data);
    table.setFont(parent.getFont());

    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    tableViewer = new CheckboxTableViewer(table);

    // create name column
    TableViewerColumn nameColumn = new TableViewerColumn(tableViewer, SWT.NONE);
    nameColumn.getColumn().setWidth(180);
    nameColumn.getColumn().setResizable(true);
    nameColumn.getColumn().setText(TernUIMessages.TernModulesBlock_moduleName);
    nameColumn.getColumn().addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            sortByName();
        }
    });

    // create version column
    TableViewerColumn versionColumn = new TableViewerColumn(tableViewer, SWT.NONE);
    versionColumn.getColumn().setWidth(100);
    versionColumn.getColumn().setResizable(true);
    versionColumn.getColumn().setText(TernUIMessages.TernModulesBlock_moduleVersion);
    final TernModuleVersionEditingSupport versionEditiongSupport = new TernModuleVersionEditingSupport(
            tableViewer);
    versionColumn.setEditingSupport(versionEditiongSupport);

    tableViewer.setComparer(TERN_MODULES_COMPARER);
    tableViewer.setLabelProvider(TernModuleLabelProvider.getInstance());
    tableViewer.setContentProvider(ArrayContentProvider.getInstance());

    // when a module is checked and dependencies checkbox is checked, tern
    // module dependencies must be selected too
    addCheckStateListener(new ICheckStateListener() {

        @Override
        public void checkStateChanged(CheckStateChangedEvent e) {
            if (checkUpdating) {
                return;
            }
            try {
                checkUpdating = true;
                ITernModule module = ((ITernModule) e.getElement());
                // update checked modules list
                updateCheckedModules(module, e.getChecked());
                if (e.getChecked() && isSelectDependencies()) {
                    TernModuleMetadata metadata = module.getMetadata();
                    if (metadata != null) {
                        ITernModule dependencyModule = null;
                        // loop for each dependencies and check it if needed
                        for (String moduleName : metadata.getDependencies(module.getVersion())) {
                            dependencyModule = ternModules.get(moduleName);
                            if (dependencyModule != null) {
                                // update module selection
                                if (!tableViewer.getChecked(dependencyModule)) {
                                    tableViewer.setChecked(dependencyModule, true);
                                }
                                // update checked modules list
                                updateCheckedModules(dependencyModule, true);
                                if (dependencyModule instanceof ITernModuleConfigurable) {
                                    ITernModuleConfigurable configurable = (ITernModuleConfigurable) dependencyModule;
                                    if (configurable.hasVersion()) {
                                        // update version
                                        String version = configurable.getModule(moduleName).getVersion();
                                        versionEditiongSupport.setValue(dependencyModule, version);
                                    }
                                }
                            }
                        }
                    }
                }
            } finally {
                checkUpdating = false;
            }
        }
    });

    // when a module is selected, details, dependencies, options tabs must
    // be
    // refreshed.
    addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent e) {
            if (!e.getSelection().isEmpty()) {
                ITernModule module = (ITernModule) ((IStructuredSelection) e.getSelection()).getFirstElement();
                refreshModule(module);
            } else {
                refreshModule(null);
            }
        }
    });
    restoreColumnSettings();
}

From source file:tern.eclipse.ide.ui.controls.TernPluginsBlock.java

License:Open Source License

public void createControl(Composite ancestor) {

    Composite parent = new Composite(ancestor, SWT.NULL);
    GridLayout layout = new GridLayout();
    layout.numColumns = 2;/*ww w.  jav  a2  s.co m*/
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    parent.setLayout(layout);
    Font font = ancestor.getFont();
    parent.setFont(font);
    fControl = parent;

    GridData data;

    Label tableLabel = new Label(parent, SWT.NONE);
    tableLabel.setText(TernUIMessages.TernPluginsBlock_desc);
    data = new GridData();
    data.horizontalSpan = 2;
    tableLabel.setLayoutData(data);
    tableLabel.setFont(font);

    Table fTable = new Table(parent, SWT.CHECK | SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL);

    data = new GridData(GridData.FILL_BOTH);
    data.widthHint = 450;
    fTable.setLayoutData(data);
    fTable.setFont(font);

    fTable.setHeaderVisible(true);
    fTable.setLinesVisible(true);

    TableColumn column1 = new TableColumn(fTable, SWT.NONE);
    column1.setWidth(180);
    column1.setResizable(true);
    column1.setText(TernUIMessages.TernPluginsBlock_pluginName);
    column1.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            sortByName();
        }
    });

    TableColumn column2 = new TableColumn(fTable, SWT.NONE);
    column2.setWidth(180);
    column2.setResizable(true);
    column2.setText(TernUIMessages.TernPluginsBlock_pluginPath);
    column2.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            sortByPath();
        }
    });

    tableViewer = new CheckboxTableViewer(fTable);
    tableViewer.setLabelProvider(new TernPluginabelProvider());
    tableViewer.setContentProvider(new ProcessorsContentProvider());

    restoreColumnSettings();
}

From source file:tern.eclipse.ide.ui.controls.TernRepositoryBlock.java

License:Open Source License

private void createRepositoryTable(Composite parent) {

    Table table = new Table(parent, SWT.CHECK | SWT.SINGLE | SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL);

    GridData data = new GridData(GridData.FILL_BOTH);
    table.setLayoutData(data);//  w  w w .jav  a  2  s. c om
    table.setFont(parent.getFont());

    table.setHeaderVisible(true);
    table.setLinesVisible(false);

    repositoryViewer = new CheckboxTableViewer(table);

    // create name column
    TableViewerColumn nameColumn = new TableViewerColumn(repositoryViewer, SWT.NONE);
    nameColumn.getColumn().setWidth(100);
    nameColumn.getColumn().setResizable(true);
    nameColumn.getColumn().setText(TernUIMessages.TernRepositoryBlock_repositoryName);

    // create name column
    TableViewerColumn filenameColumn = new TableViewerColumn(repositoryViewer, SWT.NONE);
    filenameColumn.getColumn().setWidth(300);
    filenameColumn.getColumn().setResizable(true);
    filenameColumn.getColumn().setText(TernUIMessages.TernRepositoryBlock_filenameColumn);

    repositoryViewer.setLabelProvider(TernRepositoryLabelProvider.getInstance());
    repositoryViewer.setContentProvider(ArrayContentProvider.getInstance());

    addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            refreshModules();
        }

    });

    repositoryViewer.addCheckStateListener(new ICheckStateListener() {

        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            IIDETernRepository repository = (IIDETernRepository) event.getElement();
            // check and select only one tern repository.
            checkAndSelect(repository);
        }
    });
    restoreColumnSettings();
}

From source file:zigen.plugin.db.ui.dialogs.WizardPage3.java

License:Open Source License

private void addSchemaFilterSection(Composite group) {

    Composite innerPanel1 = new Composite(group, SWT.NONE);
    GridLayout gridLayout = new GridLayout(2, false);
    gridLayout.marginHeight = 0;/* www.java2  s  . c o  m*/
    gridLayout.marginWidth = 0;
    innerPanel1.setLayout(gridLayout);
    innerPanel1.setLayoutData(new GridData(GridData.FILL_BOTH));

    visibleCheck = new Button(innerPanel1, SWT.CHECK);
    visibleCheck.setText(Messages.getString("WizardPage3.21")); //$NON-NLS-1$
    visibleCheck.setSelection(false);
    GridData data = new GridData(GridData.FILL_HORIZONTAL);
    data.horizontalSpan = 2;
    visibleCheck.setLayoutData(data);
    visibleCheck.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            checkFilterPattern = visibleCheck.getSelection();
            if (checkFilterPattern) {
                filter(filterText.getText());
            } else {
                filter(""); //$NON-NLS-1$
            }
            setEnabled(checkFilterPattern);
        }
    });

    // Label label = new Label(innerPanel1, SWT.NONE);
    // label.setText(Messages.getString("WizardPage3.13")); //$NON-NLS-1$
    filterText = new Text(innerPanel1, SWT.SINGLE | SWT.BORDER);
    filterText.setEnabled(false);
    filterText.addFocusListener(new TextSelectionListener());
    data = new GridData(GridData.FILL_HORIZONTAL);
    data.horizontalSpan = 2;
    filterText.setLayoutData(data);

    final Label label = new Label(innerPanel1, SWT.NONE);
    label.setText(Messages.getString("WizardPage3.23")); //$NON-NLS-1$
    data = new GridData(GridData.FILL_HORIZONTAL);
    data.horizontalSpan = 2;
    label.setLayoutData(data);

    Composite innerPanel3 = new Composite(group, SWT.NONE);
    gridLayout = new GridLayout(2, false);
    gridLayout.marginHeight = 0;
    gridLayout.marginWidth = 0;
    innerPanel3.setLayout(gridLayout);
    data = new GridData();
    data.horizontalSpan = 2;
    data.horizontalAlignment = GridData.END;
    innerPanel3.setLayoutData(data);

    regularExpressions = new Button(innerPanel3, SWT.CHECK);
    regularExpressions.setEnabled(false);
    regularExpressions.setText(Messages.getString("WizardPage3.14")); //$NON-NLS-1$
    regularExpressions.setSelection(false);
    data = new GridData();
    // data.horizontalSpan = 2;
    data.horizontalAlignment = GridData.END;
    regularExpressions.setLayoutData(data);
    regularExpressions.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            label.setVisible(!regularExpressions.getSelection());
        }

    });

    caseSensitive = new Button(innerPanel3, SWT.CHECK);
    caseSensitive.setEnabled(false);
    caseSensitive.setText(Messages.getString("WizardPage3.15")); //$NON-NLS-1$
    caseSensitive.setSelection(false);
    data = new GridData();
    // data.horizontalSpan = 2;
    data.horizontalAlignment = GridData.END;
    caseSensitive.setLayoutData(data);

    Composite innerPanel2 = new Composite(group, SWT.NONE);
    gridLayout = new GridLayout(2, false);
    gridLayout.marginHeight = 0;
    gridLayout.marginWidth = 0;
    innerPanel2.setLayout(gridLayout);
    innerPanel2.setLayoutData(new GridData(GridData.FILL_BOTH));

    Composite tableComposite = new Composite(innerPanel2, SWT.NONE);
    data = new GridData(GridData.FILL_BOTH);
    data.widthHint = 200;
    data.heightHint = 120;
    // data.heightHint = convertHeightInCharsToPixels(10);
    tableComposite.setLayoutData(data);
    ColumnLayout columnLayout = new ColumnLayout();
    tableComposite.setLayout(columnLayout);
    // Table table = new Table(tableComposite, SWT.CHECK | SWT.BORDER |
    // SWT.MULTI | SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL);
    Table table = new Table(tableComposite, SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    GC gc = new GC(getShell());
    gc.setFont(JFaceResources.getDialogFont());

    TableColumn column1 = new TableColumn(table, SWT.NONE);
    column1.setText(DISPLAY_TXT);
    int minWidth = computeMinimumColumnWidth(gc, DISPLAY_TXT);
    columnLayout.addColumnData(new ColumnWeightData(1, minWidth, true));
    // columnLayout.addColumnData(new ColumnPixelData(minWidth, false,
    // false));
    gc.dispose();

    fTableViewer = new CheckboxTableViewer(table);
    fTableViewer.setLabelProvider(new SchemaLabelProvider());
    fTableViewer.setContentProvider(new SchemaContentProvider());

    fTableViewer.setInput(filterSchemas);

    if (filterSchemas != null) {
        for (int i = 0; i < filterSchemas.length; i++) {
            SchemaInfo info = filterSchemas[i];
            fTableViewer.setChecked(info, info.isChecked());
        }
    }

    Composite buttonComposite = new Composite(tableComposite, SWT.NONE);
    buttonComposite.setLayout(new GridLayout(1, true));
    data = new GridData(GridData.FILL_HORIZONTAL);
    data.minimumHeight = 0;
    data.minimumWidth = 0;
    data.horizontalIndent = 0;
    data.verticalIndent = 0;

    buttonComposite.setLayoutData(data);

    Composite buttons = new Composite(innerPanel2, SWT.NONE);
    buttons.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING));
    gridLayout = new GridLayout();
    gridLayout.marginHeight = 0;
    gridLayout.marginWidth = 0;
    buttons.setLayout(gridLayout);

    selectedCheckOn = WidgetUtil.createButton(buttons, SWT.PUSH, Messages.getString("WizardPage3.16"), //$NON-NLS-1$
            BUTTON_WIDTH2, new GridData());
    selectedCheckOn.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            for (int i = 0; i < fTableViewer.getTable().getItemCount(); i++) {
                SchemaInfo schema = (SchemaInfo) fTableViewer.getElementAt(i);
                schema.setChecked(true);
                fTableViewer.setChecked(schema, true);

            }
        }
    });

    selectedCheckOff = WidgetUtil.createButton(buttons, SWT.PUSH, Messages.getString("WizardPage3.17"), //$NON-NLS-1$
            BUTTON_WIDTH2, new GridData());
    selectedCheckOff.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            for (int i = 0; i < fTableViewer.getTable().getItemCount(); i++) {
                SchemaInfo schema = (SchemaInfo) fTableViewer.getElementAt(i);
                schema.setChecked(false);
                fTableViewer.setChecked(schema, false);
            }
        }
    });

    Button onlyDefaultSchema = WidgetUtil.createButton(buttons, SWT.PUSH, Messages.getString("WizardPage3.18"), //$NON-NLS-1$
            BUTTON_WIDTH2, new GridData());
    onlyDefaultSchema.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            config = ((DBConfigWizard) getWizard()).createNewConfig();
            // schemas = getSchemas();
            for (int i = 0; i < filterSchemas.length; i++) {
                SchemaInfo info = filterSchemas[i];
                if (info.getName().equalsIgnoreCase(config.getSchema())) {
                    info.setChecked(true);
                } else {
                    info.setChecked(false);
                }
                fTableViewer.setChecked(info, info.isChecked());
            }
            fTableViewer.setInput(filterSchemas);
            // filter(filterText.getText());
        }
    });

    Button reload = WidgetUtil.createButton(buttons, SWT.PUSH, Messages.getString("WizardPage3.19"), //$NON-NLS-1$
            BUTTON_WIDTH2, new GridData());
    reload.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            config = ((DBConfigWizard) getWizard()).createNewConfig();
            filterSchemas = loadSchemas();
            ;
            fTableViewer.setInput(filterSchemas);
            // filter(filterText.getText());
        }
    });

    // filterText.addKeyListener(new KeyAdapter() {
    // public void keyReleased(KeyEvent e) {
    // filter(filterText.getText());
    // }
    //
    // });
    filterText.addKeyListener(new FilterListener());

    regularExpressions.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            // filter(filterText.getText());
        }
    });
    caseSensitive.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            // filter(filterText.getText());
        }
    });

    fTableViewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            SchemaInfo schema = (SchemaInfo) event.getElement();
            schema.setChecked(event.getChecked());
            // test(filterSchemas);
        }
    });

    filterText.setText(filterPattern);
    visibleCheck.setSelection(checkFilterPattern);
    setEnabled(checkFilterPattern);

}

From source file:zigen.plugin.db.ui.views.internal.ElementFilterDialog.java

License:Open Source License

protected void createFolderArea(Composite composite) {
    Group group = new Group(composite, SWT.NONE);
    group.setText(Messages.getString("ElementFilterDialog.1")); //$NON-NLS-1$
    group.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    group.setLayout(new GridLayout(1, false));

    final Label labe2 = new Label(group, SWT.NONE);
    labe2.setText(Messages.getString("ElementFilterDialog.2")); //$NON-NLS-1$
    GridData data = new GridData(GridData.FILL_HORIZONTAL);
    data.horizontalSpan = 2;/* w ww .  java 2 s.  co  m*/
    labe2.setLayoutData(data);
    Composite tableComposite = new Composite(group, SWT.NONE);
    data = new GridData(GridData.FILL_BOTH);
    data.widthHint = 200;
    data.heightHint = 120;
    tableComposite.setLayoutData(data);
    ColumnLayout columnLayout = new ColumnLayout();
    tableComposite.setLayout(columnLayout);
    Table table = new Table(tableComposite, SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    table.setHeaderVisible(false);
    table.setLinesVisible(false);
    GC gc = new GC(getShell());
    gc.setFont(JFaceResources.getDialogFont());
    TableColumn column1 = new TableColumn(table, SWT.NONE);
    column1.setText(""); //$NON-NLS-1$
    int minWidth = computeMinimumColumnWidth(gc, ""); //$NON-NLS-1$
    columnLayout.addColumnData(new ColumnWeightData(1, minWidth, true));
    gc.dispose();
    fTableViewer = new CheckboxTableViewer(table);
    fTableViewer.setLabelProvider(new FolderLabelProvider());
    fTableViewer.setContentProvider(new FolderContentProvider());
    filterFolders = loadFolders();
    fTableViewer.setInput(filterFolders);

    if (filterFolders != null) {
        for (int i = 0; i < filterFolders.length; i++) {
            FolderInfo info = filterFolders[i];
            fTableViewer.setChecked(info, info.isChecked());
        }
    }

    fTableViewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            FolderInfo info = (FolderInfo) event.getElement();
            info.setChecked(event.getChecked());
        }
    });
}