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:org.eclipse.ant.internal.ui.datatransfer.AntBuildfileExportPage.java

License:Open Source License

@Override
public void createControl(Composite parent) {

    initializeDialogUnits(parent);/*from w  w  w  .  j a  v a  2s. c  om*/

    Composite workArea = new Composite(parent, SWT.NONE);
    setControl(workArea);

    workArea.setLayout(new GridLayout());
    workArea.setLayoutData(
            new GridData(GridData.FILL_BOTH | GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL));

    Label titel = new Label(workArea, SWT.NONE);
    titel.setText(DataTransferMessages.AntBuildfileExportPage_2);

    Composite listComposite = new Composite(workArea, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.numColumns = 2;
    layout.marginWidth = 0;
    layout.makeColumnsEqualWidth = false;
    listComposite.setLayout(layout);

    listComposite.setLayoutData(
            new GridData(GridData.GRAB_HORIZONTAL | GridData.GRAB_VERTICAL | GridData.FILL_BOTH));

    // TODO set F1 help

    Table table = new Table(listComposite, SWT.CHECK | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
    fTableViewer = new CheckboxTableViewer(table);
    table.setLayout(new TableLayout());
    GridData data = new GridData(SWT.FILL, SWT.FILL, true, true);
    data.heightHint = 300;
    table.setLayoutData(data);
    fTableViewer.setContentProvider(new WorkbenchContentProvider() {
        @Override
        public Object[] getElements(Object element) {
            if (element instanceof IJavaProject[]) {
                return (IJavaProject[]) element;
            }
            return null;
        }
    });
    fTableViewer.setLabelProvider(new WorkbenchLabelProvider());
    fTableViewer.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            if (event.getChecked()) {
                fSelectedJavaProjects.add((IJavaProject) event.getElement());
            } else {
                fSelectedJavaProjects.remove(event.getElement());
            }
            updateEnablement();
        }
    });

    initializeProjects();
    createSelectionButtons(listComposite);
    createCheckboxes(workArea);
    createTextFields(workArea);
    setControl(workArea);
    updateEnablement();
    Dialog.applyDialogFont(parent);
}

From source file:org.eclipse.ant.internal.ui.launchConfigurations.AntTargetsTab.java

License:Open Source License

/**
 * Creates the table which displays the available targets
 * /*from   w  w w  .j a  va  2s .  c o m*/
 * @param parent
 *            the parent composite
 */
private void createTargetsTable(Composite parent) {
    Font font = parent.getFont();
    Label label = new Label(parent, SWT.NONE);
    label.setFont(font);
    label.setText(AntLaunchConfigurationMessages.AntTargetsTab_Check_targets_to_e_xecute__1);

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

    GridData data = new GridData(GridData.FILL_BOTH);
    int availableRows = availableRows(parent);
    data.heightHint = table.getItemHeight() * (availableRows / 20);
    data.widthHint = 250;
    table.setLayoutData(data);
    table.setFont(font);

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

    TableLayout tableLayout = new TableLayout();
    ColumnWeightData weightData = new ColumnWeightData(30, true);
    tableLayout.addColumnData(weightData);
    weightData = new ColumnWeightData(70, true);
    tableLayout.addColumnData(weightData);
    table.setLayout(tableLayout);

    final TableColumn column1 = new TableColumn(table, SWT.NULL);
    column1.setText(AntLaunchConfigurationMessages.AntTargetsTab_Name_5);

    final TableColumn column2 = new TableColumn(table, SWT.NULL);
    column2.setText(AntLaunchConfigurationMessages.AntTargetsTab_Description_6);

    // TableLayout only sizes columns once. If showing the targets
    // tab as the initial tab, the dialog isn't open when the layout
    // occurs and the column size isn't computed correctly. Need to
    // recompute the size of the columns once all the parent controls
    // have been created/sized.
    // HACK Bug 139190
    getShell().addShellListener(new ShellAdapter() {
        @Override
        public void shellActivated(ShellEvent e) {
            if (!table.isDisposed()) {
                int tableWidth = table.getSize().x;
                if (tableWidth > 0) {
                    int c1 = tableWidth / 3;
                    column1.setWidth(c1);
                    column2.setWidth(tableWidth - c1);
                }
                getShell().removeShellListener(this);
            }
        }
    });

    fTableViewer = new CheckboxTableViewer(table);
    fTableViewer.setLabelProvider(new TargetTableLabelProvider());
    fTableViewer.setContentProvider(new AntModelContentProvider());
    fTableViewer.setComparator(new AntTargetsComparator());

    fTableViewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(DoubleClickEvent event) {
            ISelection selection = event.getSelection();
            if (!selection.isEmpty() && selection instanceof IStructuredSelection) {
                IStructuredSelection ss = (IStructuredSelection) selection;
                Object element = ss.getFirstElement();
                boolean checked = !fTableViewer.getChecked(element);
                fTableViewer.setChecked(element, checked);
                updateOrderedTargets(element, checked);
            }
        }
    });

    fTableViewer.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            updateOrderedTargets(event.getElement(), event.getChecked());
        }
    });

    TableColumn[] columns = fTableViewer.getTable().getColumns();
    for (int i = 0; i < columns.length; i++) {
        final int index = i;
        columns[index].addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                if (fSortButton.getSelection()) {
                    // index 0 => sort_name (1)
                    // index 1 => sort_description (2)
                    int column = index + 1;
                    if (column == fSortDirection) {
                        column = -column; // invert the sort when the same column is selected twice in a row
                    }
                    setSort(column);
                }
            }
        });
    }
}

From source file:org.eclipse.babel.build.ui.wizard.BuildToolWizardConfigurationPage.java

License:Open Source License

private void createLanguagePackFilteredListArea(Composite parent) {
    fLanguagePackListLabel = new Label(parent, SWT.NONE);
    fLanguagePackListLabel.setText(Messages.getString("BuildToolWizardConfigurationPage_IgnoreListLabel")); //$NON-NLS-1$
    GridData gdLabel = new GridData(GridData.FILL_HORIZONTAL);
    gdLabel.widthHint = LABEL_WIDTH;//from  w w w  . ja va  2  s .c  om
    gdLabel.horizontalIndent = LIST_LABEL_INDENT;
    gdLabel.verticalIndent = LIST_SEPARATOR;
    fLanguagePackListLabel.setLayoutData(gdLabel);

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

    Table table = new Table(listComposite, SWT.CHECK | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
    table.setLayout(new TableLayout());
    GridData data = new GridData(GridData.FILL_BOTH);
    data.heightHint = VIEWER_HEIGHT;
    data.widthHint = VIEWER_WIDTH;
    table.setLayoutData(data);

    fLanguagePackResourceIgnoreViewer = new CheckboxTableViewer(table);
    fLanguagePackResourceIgnoreViewer.setLabelProvider(new LabelProvider());
    fLanguagePackResourceIgnoreViewer.setContentProvider(new IgnoreListContentProvider());
    fLanguagePackResourceIgnoreViewer.setInput(fModelIgnoreTable.getModels());
    fLanguagePackResourceIgnoreViewer.setComparator(new ViewerComparator());
    fLanguagePackResourceIgnoreViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            // Enable button only if there's a selection
            if (event.getSelection().isEmpty()) {
                fRemoveLanguagePackFilterButton.setEnabled(false);
            } else {
                fRemoveLanguagePackFilterButton.setEnabled(true);
            }
        }
    });

    // By default, all pre-defined patterns are checked
    fLanguagePackResourceIgnoreViewer.setAllChecked(true);

    createLanguagePackFilteredListControlButtonsArea(listComposite);
}

From source file:org.eclipse.babel.build.ui.wizard.BuildToolWizardConfigurationPage.java

License:Open Source License

private void createCoverageReportFilteredListArea(Composite parent) {
    fCoverageReportListLabel = new Label(parent, SWT.NONE);
    fCoverageReportListLabel.setText(Messages.getString("BuildToolWizardConfigurationPage_FilterListLabel")); //$NON-NLS-1$
    GridData gdLabel = new GridData(GridData.FILL_HORIZONTAL);
    gdLabel.widthHint = LABEL_WIDTH;/*from  w  ww  .j  a va 2s .c om*/
    gdLabel.horizontalIndent = LIST_LABEL_INDENT;
    gdLabel.verticalIndent = LIST_SEPARATOR;
    fCoverageReportListLabel.setLayoutData(gdLabel);

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

    Table table = new Table(listComposite, SWT.CHECK | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
    table.setLayout(new TableLayout());
    GridData data = new GridData(GridData.FILL_BOTH);
    data.heightHint = VIEWER_HEIGHT;
    data.widthHint = VIEWER_WIDTH;
    table.setLayoutData(data);

    fCoverageReportResourceFilterViewer = new CheckboxTableViewer(table);
    fCoverageReportResourceFilterViewer.setLabelProvider(new LabelProvider());
    fCoverageReportResourceFilterViewer.setContentProvider(new ExcludeListContentProvider());
    fCoverageReportResourceFilterViewer.setInput(fModelResourceExclusionTable.getModels());
    fCoverageReportResourceFilterViewer.setComparator(new ViewerComparator());
    fCoverageReportResourceFilterViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            // Enable button only if there's a selection
            if (event.getSelection().isEmpty()) {
                fRemoveCoverageReportFilterButton.setEnabled(false);
            } else {
                fRemoveCoverageReportFilterButton.setEnabled(true);
            }
        }
    });

    // By default, all pre-defined filters are checked
    fCoverageReportResourceFilterViewer.setAllChecked(true);

    // Create an area with buttons for adding/removing resource patterns, and for selecting/deselecting all
    createExcludeListControlButtonArea(listComposite);

    IDialogSettings settings = getDialogSettings();
    for (String filter : not_null(settings.getArray(EXCLUDE_LIST), new String[] {})) {
        addCoverageReportFilter(filter, false);
    }

    for (String checked : not_null(settings.getArray(EXCLUDE_LIST_CHECKED), new String[] {})) {
        addCoverageReportFilter(checked, true);
    }
}

From source file:org.eclipse.birt.report.designer.internal.ui.swt.custom.TableArea.java

License:Open Source License

protected void createTableViewer(int tableStyle) {
    table = new Table(this, tableStyle | SWT.FULL_SELECTION | SWT.BORDER);
    table.setLayoutData(new GridData(GridData.FILL_BOTH));
    table.setHeaderVisible(true);/*from  ww  w.j a v  a  2 s  .com*/
    table.setLinesVisible(true);
    if ((tableStyle & SWT.CHECK) != 0) {
        tableViewer = new CheckboxTableViewer(table);
    } else {
        tableViewer = new TableViewer(table);
    }
    if (modifier instanceof ITableAreaModifier) {
        table.addKeyListener(new KeyAdapter() {

            /**
             * @see org.eclipse.swt.events.KeyAdapter#keyReleased(org.eclipse.swt.events.KeyEvent)
             */
            public void keyReleased(KeyEvent e) {
                if (e.keyCode == SWT.DEL && e.stateMask == 0 && !getSelection().isEmpty()) {
                    doRemove();
                }
            }
        });
    }
    tableViewer.addDoubleClickListener(new IDoubleClickListener() {

        public void doubleClick(DoubleClickEvent event) {
            if (getSelection().size() == 1) {
                doEdit();
            }
        }
    });
}

From source file:org.eclipse.birt.report.designer.ui.dialogs.ColumnBindingDialog.java

License:Open Source License

protected Control createDialogArea(Composite parent) {

    UIUtil.bindHelp(parent, IHelpContextIds.COLUMNBINDING_DIALOG_ID);
    Composite parentComposite = (Composite) super.createDialogArea(parent);

    if (this.canSelect) {
        composite = new Composite(parentComposite, SWT.NONE);
        composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
        composite.setLayout(UIUtil.createGridLayoutWithoutMargin(2, false));

        warnLabel = new CLabel(composite, SWT.NONE);
        warnLabel.setImage(/*from  w w  w.j  a  v a 2s. co  m*/
                PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJS_WARN_TSK));
        warnLabel.setText(WARN_COLUMN_BINDINGS);
        GridData gd = new GridData(GridData.FILL_HORIZONTAL);
        gd.horizontalSpan = 2;
        warnLabel.setLayoutData(gd);

        datasetRadio = new Button(composite, SWT.RADIO);
        datasetRadio.setText(LABEL_COLUMN_BINDINGS);
        datasetRadio.setLayoutData(new GridData(GridData.BEGINNING));
        datasetRadio.addSelectionListener(new SelectionAdapter() {

            public void widgetSelected(SelectionEvent e) {
                refreshBinding();
                if (datasetRadio.getSelection()
                        && inputElement
                                .getDataBindingType() == ReportItemHandle.DATABINDING_TYPE_REPORT_ITEM_REF
                        && (DEUtil.getBindingHolder(inputElement, true) == null || DEUtil
                                .getBindingHolder(inputElement, true)
                                .getDataBindingType() != ReportItemHandle.DATABINDING_TYPE_REPORT_ITEM_REF))
                    saveBinding();
            }

        });

        datasetCombo = new Combo(composite, SWT.READ_ONLY | SWT.BORDER);
        datasetCombo.setBackground(
                PlatformUI.getWorkbench().getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND));
        datasetCombo.setVisibleItemCount(30);
        String[] dataSets = ChoiceSetFactory.getDataSets();
        String[] newList = new String[dataSets.length + 1];
        newList[0] = NullDatasetChoice;
        System.arraycopy(dataSets, 0, newList, 1, dataSets.length);
        datasetCombo.setItems(newList);
        String dataSetName = getDataSetName();
        datasetCombo.deselectAll();

        if (dataSetName != null) {
            datasetCombo.setText(dataSetName);
        } else {
            datasetCombo.select(0);
        }

        gd = new GridData();
        gd.widthHint = 250;
        datasetCombo.setLayoutData(gd);
        datasetCombo.addSelectionListener(new SelectionAdapter() {

            public void widgetSelected(SelectionEvent event) {
                saveBinding();
            }
        });

        reportItemRadio = new Button(composite, SWT.RADIO);
        reportItemRadio.setText(Messages.getString("BindingPage.ReportItem.Label")); //$NON-NLS-1$
        reportItemRadio.addSelectionListener(new SelectionAdapter() {

            public void widgetSelected(SelectionEvent e) {
                refreshBinding();
                if (reportItemRadio.getSelection()
                        && inputElement.getDataBindingType() == ReportItemHandle.DATABINDING_TYPE_DATA
                        && (DEUtil.getBindingHolder(inputElement, true) == null || DEUtil
                                .getBindingHolder(inputElement, true)
                                .getDataBindingType() == ReportItemHandle.DATABINDING_TYPE_REPORT_ITEM_REF))
                    saveBinding();
            }
        });
        reportItemCombo = new Combo(composite, SWT.READ_ONLY | SWT.BORDER);
        reportItemCombo.setBackground(
                PlatformUI.getWorkbench().getDisplay().getSystemColor(SWT.COLOR_LIST_BACKGROUND));
        reportItemCombo.setVisibleItemCount(30);
        gd = new GridData();
        gd.widthHint = 250;
        reportItemCombo.setLayoutData(gd);
        reportItemCombo.addSelectionListener(new SelectionAdapter() {

            public void widgetSelected(SelectionEvent e) {
                saveBinding();
            }
        });
    }

    Composite contentComposite = new Composite(parentComposite, SWT.NONE);
    contentComposite.setLayoutData(new GridData(GridData.FILL_BOTH));
    contentComposite.setLayout(UIUtil.createGridLayoutWithoutMargin(2, false));
    /**
     * Binding table
     */
    final Table table = new Table(contentComposite,
            SWT.SINGLE | SWT.FULL_SELECTION | SWT.BORDER | (canSelect ? SWT.CHECK : 0));
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 200;
    gd.verticalSpan = 5;
    table.setLayoutData(gd);
    table.setLinesVisible(true);
    table.setHeaderVisible(true);

    Listener sortListener = new Listener() {

        public void handleEvent(Event e) {
            int modelPos = -1;
            if (table.getSelectionIndex() > -1) {
                modelPos = getOriginalIndex(table.getSelectionIndex());
            }
            // determine new sort column and direction
            TableColumn sortColumn = table.getSortColumn();
            TableColumn currentColumn = (TableColumn) e.widget;
            int dir = table.getSortDirection();
            if (sortColumn == currentColumn) {
                dir = dir == SWT.UP ? SWT.DOWN : SWT.UP;
            } else {
                table.setSortColumn(currentColumn);
                dir = SWT.UP;
                for (int i = 0; i < table.getColumnCount(); i++) {
                    if (currentColumn == table.getColumn(i)) {
                        setSortingColumnIndex(i);
                        break;
                    }
                }
            }
            // update data displayed in table
            setSortDirection(dir);
            table.setSortDirection(dir);
            refreshBindingTable();
            if (modelPos > -1) {
                table.setSelection(getShowIndex(modelPos));
            }
        }

    };

    // table.addKeyListener( new KeyAdapter( ) {
    //
    // /**
    // * @see
    // org.eclipse.swt.events.KeyAdapter#keyReleased(org.eclipse.swt.events.
    // KeyEvent)
    // */
    // public void keyReleased( KeyEvent e )
    // {
    // // If Delete pressed, delete the selected row
    // if ( e.keyCode == SWT.DEL )
    // {
    // IStructuredSelection selection = (IStructuredSelection)
    // bindingTable.getSelection( );
    // if ( selection.getFirstElement( ) instanceof ComputedColumnHandle )
    // {
    // deleteRow( (ComputedColumnHandle) selection.getFirstElement( ) );
    // }
    // }
    // }
    // } );

    table.addKeyListener(new KeyAdapter() {

        public void keyPressed(KeyEvent e) {
            if (e.keyCode == SWT.DEL && (DEUtil.getBindingHolder(inputElement)
                    .getDataBindingType() == ReportItemHandle.DATABINDING_TYPE_DATA
                    || (DEUtil.getBindingHolder(inputElement)
                            .getDataBindingType() == ReportItemHandle.DATABINDING_TYPE_NONE
                            && (DEUtil.getBindingHolder(inputElement, true) == null || DEUtil
                                    .getBindingHolder(inputElement, true)
                                    .getDataBindingType() != ReportItemHandle.DATABINDING_TYPE_REPORT_ITEM_REF)))) {
                int itemCount = table.getItemCount();
                if (selectIndex == itemCount) {
                    return;
                }
                if (selectIndex == itemCount - 1) {
                    selectIndex--;
                }
                try {
                    handleDelEvent();
                } catch (Exception e1) {
                    WidgetUtil.processError(getShell(), e1);
                }
                refreshBindingTable();
            }
        }
    });

    table.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            selectIndex = table.getSelectionIndex();
            updateButtons();
        }
    });

    table.addMouseListener(new MouseAdapter() {

        /**
         * @param e
         */
        public void mouseDoubleClick(MouseEvent e) {
            editSelectedBinding(table.getSelectionIndex());
            refreshBindingTable();
        }
    });
    String[] columns = null;
    int[] columnWidth = null;

    groups = new String[groupList.size() + 1];
    groups[0] = ALL;
    for (int i = 0; i < groupList.size(); i++) {
        groups[i + 1] = ((GroupHandle) groupList.get(i)).getName();
    }

    if (canAggregate) {
        columns = new String[] { null, COLUMN_NAME, COLUMN_DISPLAYNAME_ID, COLUMN_DISPLAYNAME, COLUMN_DATATYPE,
                COLUMN_EXPRESSION, COLUMN_FUNCTION, COLUMN_FILTER, COLUMN_AGGREGATEON };
        columnWidth = new int[] { canSelect ? 25 : 20, 100, 100, 100, 70, 100, 100, 100, 100 };
    } else {
        columns = new String[] { null, COLUMN_NAME, COLUMN_DISPLAYNAME_ID, COLUMN_DISPLAYNAME, COLUMN_DATATYPE,
                COLUMN_EXPRESSION };
        columnWidth = new int[] { canSelect ? 25 : 20, 120, 120, 120, 70, 120 };
    }

    for (int i = 0; i < columns.length; i++) {
        TableColumn column = new TableColumn(table, SWT.LEFT);
        if (i == 0)
            table.setSortColumn(column);
        column.setResizable(columns[i] != null);
        if (columns[i] != null) {
            column.setText(columns[i]);
        }
        column.setWidth(columnWidth[i]);
        column.addListener(SWT.Selection, sortListener);
    }
    table.setSortDirection(SWT.UP);

    if (canSelect) {
        bindingTable = new CheckboxTableViewer(table);
        ((CheckboxTableViewer) bindingTable).addCheckStateListener(new ICheckStateListener() {

            public void checkStateChanged(CheckStateChangedEvent event) {

                if (event.getElement() instanceof ComputedColumnHandle) {
                    ComputedColumnHandle handle = (ComputedColumnHandle) event.getElement();
                    if (handle.getName().equals(selectedColumnName)) {
                        selectedColumnName = null;
                    } else {
                        selectedColumnName = handle.getName();
                    }
                    updateSelection();
                    updateButtons();
                } else {
                    ((CheckboxTableViewer) bindingTable).setChecked(dummyChoice, false);
                }
            }
        });
    } else {
        bindingTable = new TableViewer(table);
    }
    bindingTable.setColumnProperties(columns);
    bindingTable.setContentProvider(contentProvider);
    bindingTable.setLabelProvider(labelProvider);
    // bindingTable.setCellModifier( cellModifier );
    bindingTable.setInput(inputElement);

    bindingTable.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            updateButtons();
        }

    });

    btnAdd = new Button(contentComposite, SWT.PUSH);
    btnAdd.setText(MSG_ADD);
    GridData data = new GridData();
    data.widthHint = Math.max(60, btnAdd.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).x);
    btnAdd.setLayoutData(data);
    btnAdd.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            handleAddEvent();
            refreshBindingTable();
            if (table.getItemCount() > 0)
                selectIndex = getShowIndex(table.getItemCount() - 1);
            updateButtons();
        }

    });

    if (canAggregate) {
        btnAddAggr = new Button(contentComposite, SWT.PUSH);
        btnAddAggr.setText(MSG_ADDAGGREGATEON); //$NON-NLS-1$
        data = new GridData();
        data.widthHint = Math.max(60, btnAddAggr.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).x);
        btnAddAggr.setLayoutData(data);
        btnAddAggr.addListener(SWT.Selection, new Listener() {

            public void handleEvent(Event event) {
                DataColumnBindingDialog dialog = new DataColumnBindingDialog(true);
                dialog.setInput(inputElement);
                dialog.setExpressionProvider(expressionProvider);
                dialog.setAggreate(true);
                if (dialog.open() == Dialog.OK) {
                    if (bindingTable != null) {
                        refreshBindingTable();
                        bindingTable.getTable().setSelection(bindingTable.getTable().getItemCount() - 1);
                    }
                }

                refreshBindingTable();
                if (table.getItemCount() > 0)
                    setSelectionInTable(table.getItemCount() - 1);
                updateButtons();
            }

        });
    }

    btnEdit = new Button(contentComposite, SWT.PUSH);
    btnEdit.setText(MSG_EDIT);
    data = new GridData();
    data.widthHint = Math.max(60, btnEdit.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).x);
    btnEdit.setLayoutData(data);
    btnEdit.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            handleEditEvent();
            refreshBindingTable();
        }

    });
    btnDel = new Button(contentComposite, SWT.PUSH);
    btnDel.setText(MSG_DELETE);
    data = new GridData();
    data.widthHint = Math.max(60, btnDel.computeSize(SWT.DEFAULT, SWT.DEFAULT, true).x);
    btnDel.setLayoutData(data);
    btnDel.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            if (bindingTable.isCellEditorActive()) {
                bindingTable.cancelEditing();
            }
            int pos = bindingTable.getTable().getSelectionIndex();
            if (pos == -1) {
                bindingTable.getTable().setFocus();
                return;
            }
            selectIndex = pos;
            int itemCount = bindingTable.getTable().getItemCount();
            if (selectIndex == itemCount - 1) {
                selectIndex--;
            }
            try {
                handleDelEvent();
            } catch (Exception e1) {
                WidgetUtil.processError(getShell(), e1);
            }
            refreshBindingTable();
        }
    });

    // initTableCellColor( );

    // Add custom buttons
    int buttonsNumber = addButtons(contentComposite, table);
    if (buttonsNumber > 0) {
        // Adjust UI layout
        if (table.getLayoutData() instanceof GridData) {
            ((GridData) table.getLayoutData()).verticalSpan += buttonsNumber;
        }
    }

    if (!isDataSetVisible) {
        if (composite != null)
            ((GridData) composite.getLayoutData()).exclude = true;
    }

    return parentComposite;
}

From source file:org.eclipse.birt.report.item.crosstab.internal.ui.dialogs.ShowSummaryFieldDialog.java

License:Open Source License

private void createSummaryFiledViewer(Composite dialogArea) {
    Table table = new Table(dialogArea,
            SWT.BORDER | SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.CHECK);
    table.setLinesVisible(true);//from  w w  w .j a va 2  s. co m
    table.setHeaderVisible(true);

    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 250;
    table.setLayoutData(gd);

    summaryFieldViewer = new CheckboxTableViewer(table);
    SummaryFieldProvider provider = new SummaryFieldProvider();

    for (int i = 0; i < columnNames.length; i++) {
        TableColumn column = new TableColumn(table, SWT.LEFT);
        column.setText(columnNames[i]);
        column.setWidth(columnWidth[i]);
    }
    ComboBoxCellEditor comboCell = new ComboBoxCellEditor(table, new String[0], SWT.READ_ONLY);
    // TextCellEditor textCell = new TextCellEditor(table, SWT.NONE);
    cellEditor = new CellEditor[] { null, comboCell };
    summaryFieldViewer.setColumnProperties(columnNames);
    summaryFieldViewer.setCellEditors(cellEditor);
    summaryFieldViewer.setCellModifier(cellModifier);
    summaryFieldViewer.setUseHashlookup(true);
    summaryFieldViewer.setContentProvider(provider);
    summaryFieldViewer.setLabelProvider(provider);

    summaryFieldViewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            MeasureInfo info = (MeasureInfo) event.getElement();
            if (event.getChecked()) {
                info.setShow(true);
            } else {
                info.setShow(false);
            }
            checkOKButtonStatus();
        }

    });
}

From source file:org.eclipse.cdt.cpp.ui.internal.wizards.CppWizardNewProjectCreationPage.java

License:Open Source License

/**
 * Creates the project name specification visual components.
 *
 * @param parent a <code>Composite</code> that is to be used as the parent
 *     of this group's collection of visual components
 * @see org.eclipse.swt.widgets.Composite
 *///  w ww  . j  a  v  a  2 s  .co m
protected final void createReferencedProjectsGroup(Composite parent) {
    //only create this group if there are already projects in the workspace
    if (ResourcesPlugin.getWorkspace().getRoot().getProjects().length == 0) {
        return;
    }

    Composite composite = new Composite(parent, SWT.NONE);
    composite.setLayout(new GridLayout());
    composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    new Label(composite, SWT.NONE)
            .setText(_plugin.getLocalizedString("createProjectWizard.ReferencedProjects"));

    referenceProjectsViewer = new CheckboxTableViewer(composite);

    referenceProjectsViewer.getTable().setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    referenceProjectsViewer.setLabelProvider(new WorkbenchLabelProvider());
    referenceProjectsViewer.setContentProvider(new WorkbenchContentProvider());
    referenceProjectsViewer.setInput(ResourcesPlugin.getWorkspace());
}

From source file:org.eclipse.cdt.debug.internal.ui.dialogfields.CheckedListDialogField.java

License:Open Source License

@Override
protected TableViewer createTableViewer(Composite parent) {
    Table table = new Table(parent, SWT.CHECK + getListStyle());
    CheckboxTableViewer tableViewer = new CheckboxTableViewer(table);
    tableViewer.addCheckStateListener(new ICheckStateListener() {
        @Override// ww  w .ja  v a2 s  . c  om
        public void checkStateChanged(CheckStateChangedEvent e) {
            doCheckStateChanged(e);
        }
    });
    return tableViewer;
}

From source file:org.eclipse.cdt.internal.autotools.ui.wizards.CProjectPlatformPage.java

License:Open Source License

private void createConfigSelectionGroup(Composite parent) {
    // Create the group composite
    Composite composite = new Composite(parent, SWT.NULL);
    composite.setFont(parent.getFont());
    composite.setLayout(new GridLayout());
    composite.setLayoutData(new GridData(GridData.FILL_BOTH));

    // Create a check box table of valid configurations
    final Label configLabel = new Label(composite, SWT.LEFT);
    configLabel.setFont(composite.getFont());
    configLabel.setText(AutotoolsWizardMessages.getResourceString(CONFIG_LABEL));

    Table table = new Table(composite,
            SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL);
    table.setLayoutData(new GridData(GridData.FILL_BOTH));
    table.setHeaderVisible(true);/*from   ww w.j  ava  2s .  c  o  m*/
    table.setLinesVisible(false);

    // Add a table layout to the table
    TableLayout tableLayout = new TableLayout();
    table.setHeaderVisible(false);
    table.setLayout(tableLayout);

    // Add the viewer
    tableViewer = new CheckboxTableViewer(table);
    tableViewer.setLabelProvider(new ConfigurationLabelProvider());
    tableViewer.setContentProvider(new ConfigurationContentProvider());
    tableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent e) {
            // will default to false until a selection is made
            handleConfigurationSelectionChange();
        }
    });

}