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.cdt.internal.docker.launcher.ContainerPropertyTab.java

License:Open Source License

private CheckboxTableViewer createVolumesTable(final Composite container) {
    final Table table = new Table(container,
            SWT.CHECK | SWT.BORDER | SWT.FULL_SELECTION | SWT.V_SCROLL | SWT.H_SCROLL);
    final CheckboxTableViewer tableViewer = new CheckboxTableViewer(table);
    table.setHeaderVisible(true);//from  ww  w. j  a va 2 s . c  o  m
    table.setLinesVisible(true);
    dbc.bindSet(ViewersObservables.observeCheckedElements(tableViewer, DataVolumeModel.class),
            BeanProperties.set(ContainerPropertyVolumesModel.SELECTED_DATA_VOLUMES).observe(model));
    addTableViewerColumn(tableViewer,
            WizardMessages.getString("ImageRunResourceVolVarPage.containerPathColumn"), //$NON-NLS-1$
            180);
    addTableViewerColumn(tableViewer, WizardMessages.getString("ImageRunResourceVolVarPage.mountColumn"), //$NON-NLS-1$
            180);
    addTableViewerColumn(tableViewer, WizardMessages.getString("ImageRunResourceVolVarPage.readonlyColumn"), //$NON-NLS-1$
            60);
    return tableViewer;
}

From source file:org.eclipse.cdt.internal.ui.language.settings.providers.LanguageSettingsProviderTab.java

License:Open Source License

/**
 * Create table to display providers.//from w  ww  .java2  s .c  om
 */
private void createProvidersPane(Composite parent) {
    Composite composite = new Composite(parent, SWT.BORDER | SWT.SINGLE);
    composite.setLayout(new GridLayout());

    // items checkboxes  only for project properties page
    tableProviders = new Table(composite, page.isForPrefs() ? SWT.NONE : SWT.CHECK);
    tableProviders.setLayoutData(new GridData(GridData.FILL_BOTH));
    tableProviders.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            displaySelectedOptionPage();
            updateButtons();
        }
    });
    tableProvidersViewer = new CheckboxTableViewer(tableProviders);
    tableProvidersViewer.setContentProvider(new ArrayContentProvider());
    tableProvidersViewer.setLabelProvider(new ProvidersTableLabelProvider());

    tableProvidersViewer.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            ILanguageSettingsProvider checkedProvider = (ILanguageSettingsProvider) event.getElement();
            String id = checkedProvider.getId();
            ILanguageSettingsProvider newProvider = null;

            if (event.getChecked()) {
                if (LanguageSettingsManager.isWorkspaceProvider(checkedProvider)
                        && !LanguageSettingsManager.isPreferShared(id)) {
                    newProvider = getInitialProvider(id);
                    if (newProvider == null) {
                        ILanguageSettingsProvider rawProvider = LanguageSettingsManager
                                .getRawProvider(checkedProvider);
                        if (rawProvider instanceof ILanguageSettingsEditableProvider) {
                            newProvider = LanguageSettingsManager
                                    .getProviderCopy((ILanguageSettingsEditableProvider) rawProvider, false);
                        }
                    }
                }
            } else {
                if (!LanguageSettingsManager.isWorkspaceProvider(checkedProvider)) {
                    newProvider = LanguageSettingsManager.getWorkspaceProvider(id);
                }
            }

            int pos = presentedProviders.indexOf(checkedProvider);
            tableProviders.setSelection(pos);

            if (newProvider != null) {
                replaceSelectedProvider(newProvider); // will refresh and save checked providers
                createOptionsPage(newProvider);
            } else {
                saveCheckedProviders();
                tableProvidersViewer.refresh(checkedProvider);
                // option page is reused
            }

            displaySelectedOptionPage();
            updateButtons();
        }
    });
}

From source file:org.eclipse.cdt.internal.ui.preferences.CEditorHoverConfigurationBlock.java

License:Open Source License

/**
 * Creates page for hover preferences./*  w w  w. java  2  s.c  o m*/
 *
 * @param parent the parent composite
 * @return the control for the preference page
 */
@Override
public Control createControl(Composite parent) {

    ScrolledPageContent scrolled = new ScrolledPageContent(parent, SWT.H_SCROLL | SWT.V_SCROLL);
    scrolled.setExpandHorizontal(true);
    scrolled.setExpandVertical(true);

    Composite hoverComposite = new Composite(scrolled, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.numColumns = 2;
    layout.marginWidth = 0;
    layout.marginHeight = 0;
    hoverComposite.setLayout(layout);
    hoverComposite.setLayoutData(new GridData(GridData.FILL_BOTH));

    //String rollOverLabel= PreferencesMessages.getString("CEditorHoverConfigurationBlock.annotationRollover"); //$NON-NLS-1$
    //addCheckBox(hoverComposite, rollOverLabel, PreferenceConstants.EDITOR_ANNOTATION_ROLL_OVER, 0); //$NON-NLS-1$

    //addFiller(hoverComposite);

    Label label = new Label(hoverComposite, SWT.NONE);
    label.setText(PreferencesMessages.CEditorHoverConfigurationBlock_hoverPreferences);
    GridData gd = new GridData(GridData.FILL_HORIZONTAL);
    gd.horizontalAlignment = GridData.BEGINNING;
    gd.horizontalSpan = 2;
    label.setLayoutData(gd);

    TableLayoutComposite layouter = new TableLayoutComposite(hoverComposite, SWT.NONE);
    addColumnLayoutData(layouter);

    // Hover table
    fHoverTable = new Table(layouter,
            SWT.H_SCROLL | SWT.V_SCROLL | SWT.SINGLE | SWT.BORDER | SWT.FULL_SELECTION | SWT.CHECK);
    fHoverTable.setHeaderVisible(true);
    fHoverTable.setLinesVisible(true);

    gd = new GridData(GridData.FILL_HORIZONTAL);
    gd.heightHint = SWTUtil.getTableHeightHint(fHoverTable, 10);
    gd.horizontalSpan = 2;
    gd.widthHint = new PixelConverter(parent).convertWidthInCharsToPixels(30);
    layouter.setLayoutData(gd);

    fHoverTable.addSelectionListener(new SelectionListener() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            handleHoverListSelection();
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
        }
    });

    TableLayout tableLayout = new TableLayout();
    fHoverTable.setLayout(tableLayout);

    fNameColumn = new TableColumn(fHoverTable, SWT.NONE);
    fNameColumn.setText(PreferencesMessages.CEditorHoverConfigurationBlock_nameColumnTitle);
    fNameColumn.setResizable(true);

    fModifierColumn = new TableColumn(fHoverTable, SWT.NONE);
    fModifierColumn.setText(PreferencesMessages.CEditorHoverConfigurationBlock_modifierColumnTitle);
    fModifierColumn.setResizable(true);

    fHoverTableViewer = new CheckboxTableViewer(fHoverTable);
    fHoverTableViewer.setUseHashlookup(true);
    fHoverTableViewer.setContentProvider(new CEditorTextHoverDescriptorContentProvider());
    fHoverTableViewer.setLabelProvider(new CEditorTextHoverDescriptorLabelProvider());

    ((CheckboxTableViewer) fHoverTableViewer).addCheckStateListener(new ICheckStateListener() {
        /*
         * @see org.eclipse.jface.viewers.ICheckStateListener#checkStateChanged(org.eclipse.jface.viewers.CheckStateChangedEvent)
         */
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            String id = ((CEditorTextHoverDescriptor) event.getElement()).getId();
            if (id == null)
                return;
            CEditorTextHoverDescriptor[] descriptors = getContributedHovers();
            HoverConfig hoverConfig = null;
            int i = 0, length = fHoverConfigs.length;
            while (i < length) {
                if (id.equals(descriptors[i].getId())) {
                    hoverConfig = fHoverConfigs[i];
                    hoverConfig.fIsEnabled = event.getChecked();
                    fModifierEditor.setEnabled(event.getChecked());
                    break;
                }
                i++;
            }
            updateStatus(hoverConfig);
        }
    });

    // Text field for modifier string
    label = new Label(hoverComposite, SWT.LEFT);
    label.setText(PreferencesMessages.CEditorHoverConfigurationBlock_keyModifier);
    fModifierEditor = new Text(hoverComposite, SWT.BORDER);
    gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
    fModifierEditor.setLayoutData(gd);

    fModifierEditor.addKeyListener(new KeyListener() {
        private boolean isModifierCandidate;

        @Override
        public void keyPressed(KeyEvent e) {
            isModifierCandidate = e.keyCode > 0 && e.character == 0 && e.stateMask == 0;
        }

        @Override
        public void keyReleased(KeyEvent e) {
            if (isModifierCandidate && e.stateMask > 0 && e.stateMask == e.stateMask && e.character == 0) {// && e.time -time < 1000) {
                String text = fModifierEditor.getText();
                Point selection = fModifierEditor.getSelection();
                int i = selection.x - 1;
                while (i > -1 && Character.isWhitespace(text.charAt(i))) {
                    i--;
                }
                boolean needsPrefixDelimiter = i > -1 && !String.valueOf(text.charAt(i)).equals(DELIMITER);

                i = selection.y;
                while (i < text.length() && Character.isWhitespace(text.charAt(i))) {
                    i++;
                }
                boolean needsPostfixDelimiter = i < text.length()
                        && !String.valueOf(text.charAt(i)).equals(DELIMITER);

                String insertString;

                if (needsPrefixDelimiter && needsPostfixDelimiter)
                    insertString = NLS.bind(
                            PreferencesMessages.CEditorHoverConfigurationBlock_insertDelimiterAndModifierAndDelimiter,
                            new String[] { Action.findModifierString(e.stateMask) });
                else if (needsPrefixDelimiter)
                    insertString = NLS.bind(
                            PreferencesMessages.CEditorHoverConfigurationBlock_insertDelimiterAndModifier,
                            new String[] { Action.findModifierString(e.stateMask) });
                else if (needsPostfixDelimiter)
                    insertString = NLS.bind(
                            PreferencesMessages.CEditorHoverConfigurationBlock_insertModifierAndDelimiter,
                            new String[] { Action.findModifierString(e.stateMask) });
                else
                    insertString = Action.findModifierString(e.stateMask);

                if (insertString != null)
                    fModifierEditor.insert(insertString);
            }
        }
    });

    fModifierEditor.addModifyListener(new ModifyListener() {
        @Override
        public void modifyText(ModifyEvent e) {
            handleModifierModified();
        }
    });

    // Description
    Label descriptionLabel = new Label(hoverComposite, SWT.LEFT);
    descriptionLabel.setText(PreferencesMessages.CEditorHoverConfigurationBlock_description);
    gd = new GridData(GridData.VERTICAL_ALIGN_BEGINNING);
    gd.horizontalSpan = 2;
    descriptionLabel.setLayoutData(gd);
    fDescription = new Text(hoverComposite, SWT.LEFT | SWT.WRAP | SWT.MULTI | SWT.READ_ONLY | SWT.BORDER);
    gd = new GridData(GridData.FILL_BOTH);
    gd.horizontalSpan = 2;
    fDescription.setLayoutData(gd);

    initialize();

    scrolled.setContent(hoverComposite);
    final Point size = hoverComposite.computeSize(SWT.DEFAULT, SWT.DEFAULT);
    scrolled.setMinSize(size.x, size.y);

    Dialog.applyDialogFont(scrolled);

    return scrolled;
}

From source file:org.eclipse.cdt.internal.ui.wizards.indexwizards.TeamProjectIndexExportWizardPage.java

License:Open Source License

/**
  * Creates the checkbox tree and list for selecting resources.
  *//  w w  w .j  av a 2 s  . c  om
  * @param parent the parent control
  */
private final void createResourcesGroup(Composite parent) {
    Composite resourcesGroup = new Composite(parent, SWT.NONE);
    resourcesGroup.setLayout(new GridLayout());
    resourcesGroup.setLayoutData(new GridData(GridData.FILL_BOTH));
    resourcesGroup.setFont(parent.getFont());

    new Label(resourcesGroup, SWT.NONE).setText(Messages.TeamProjectIndexExportWizardPage_labelProjectTable);
    Table table = new Table(resourcesGroup, SWT.CHECK | SWT.BORDER);
    table.setLayoutData(new GridData(GridData.FILL_BOTH));
    fProjectViewer = new CheckboxTableViewer(table);
    fProjectViewer.setContentProvider(new ListContentProvider());
    fProjectViewer.setLabelProvider(new CElementLabelProvider());
    ICheckStateListener checkListener = new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            updateWidgetEnablements();
        }
    };
    fProjectViewer.addCheckStateListener(checkListener);

    // top level group
    Composite buttonComposite = new Composite(resourcesGroup, SWT.NONE);
    buttonComposite.setFont(parent.getFont());

    GridLayout layout = new GridLayout(2, true);
    layout.marginHeight = layout.marginWidth = 0;
    buttonComposite.setLayout(layout);
    buttonComposite.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_FILL | GridData.HORIZONTAL_ALIGN_FILL));

    Button selectButton = createButton(buttonComposite, IDialogConstants.SELECT_ALL_ID,
            Messages.TeamProjectIndexExportWizardPage_selectAll, false);

    SelectionAdapter listener = new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            fProjectViewer.setAllChecked(true);
            updateWidgetEnablements();
        }
    };
    selectButton.addSelectionListener(listener);

    Button deselectButton = createButton(buttonComposite, IDialogConstants.DESELECT_ALL_ID,
            Messages.TeamProjectIndexExportWizardPage_deselectAll, false);

    listener = new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            fProjectViewer.setAllChecked(false);
            updateWidgetEnablements();
        }
    };
    deselectButton.addSelectionListener(listener);

    initProjects();
}

From source file:org.eclipse.cdt.internal.ui.wizards.settingswizards.ProjectSettingsWizardPage.java

License:Open Source License

protected void createSettingsSelectionGroup(Composite parent) {
    Composite settingsSelectionGroup = new Composite(parent, SWT.NONE);
    settingsSelectionGroup.setLayout(new GridLayout());
    settingsSelectionGroup.setLayoutData(new GridData(GridData.FILL_BOTH));
    settingsSelectionGroup.setFont(parent.getFont());

    Label label = new Label(settingsSelectionGroup, SWT.NONE);
    label.setText(strategy.getMessage(MessageType.SETTINGS));

    Table table = new Table(settingsSelectionGroup, SWT.CHECK | SWT.BORDER);
    table.setLayoutData(new GridData(GridData.FILL_BOTH));

    settingsViewer = new CheckboxTableViewer(table);
    settingsViewer.setContentProvider(new ListContentProvider());

    settingsViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override/*from   w  ww  .j  a v a 2s .com*/
        public void selectionChanged(SelectionChangedEvent event) {
            updateWidgetEnablements();
        }
    });

    LabelProvider settingsProcessorLabelProvider = new LabelProvider() {
        @Override
        public Image getImage(Object element) {
            return ((ISettingsProcessor) element).getIcon();
        }

        @Override
        public String getText(Object element) {
            return ((ISettingsProcessor) element).getDisplayName();
        }
    };

    settingsViewer.setLabelProvider(settingsProcessorLabelProvider);
    settingsViewer.setInput(processors);
    settingsViewer.setAllChecked(true);

    Composite buttonComposite = new Composite(settingsSelectionGroup, SWT.NONE);
    GridLayout layout = new GridLayout(2, true);
    layout.marginHeight = layout.marginWidth = 0;
    buttonComposite.setLayout(layout);
    buttonComposite.setLayoutData(new GridData());

    Button selectButton = new Button(buttonComposite, SWT.PUSH);
    selectButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    selectButton.setText(Messages.ProjectSettingsWizardPage_selectAll);

    selectButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            settingsViewer.setAllChecked(true);
            updateWidgetEnablements();
        }
    });

    Button deselectButton = new Button(buttonComposite, SWT.PUSH);
    deselectButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    deselectButton.setText(Messages.ProjectSettingsWizardPage_deselectAll);

    deselectButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            settingsViewer.setAllChecked(false);
            updateWidgetEnablements();
        }
    });
}

From source file:org.eclipse.cdt.managedbuilder.ui.wizards.CDTConfigWizardPage.java

License:Open Source License

@Override
public void createControl(Composite p) {
    parent = new Composite(p, SWT.NONE);
    parent.setFont(parent.getFont());/*from   w  w  w  .j a v  a2  s.  com*/
    parent.setLayout(new GridLayout());
    parent.setLayoutData(new GridData(GridData.FILL_BOTH));

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

    setupLabel(c1, Messages.CConfigWizardPage_4, GridData.BEGINNING);
    l_projtype = setupLabel(c1, EMPTY_STR, GridData.FILL_HORIZONTAL);
    setupLabel(c1, Messages.CConfigWizardPage_5, GridData.BEGINNING);
    l_chains = setupLabel(c1, EMPTY_STR, GridData.FILL_HORIZONTAL);
    setupLabel(c1, Messages.CConfigWizardPage_6, GridData.BEGINNING);
    setupLabel(c1, EMPTY_STR, GridData.BEGINNING);

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

    table = new Table(c2, SWT.BORDER | SWT.CHECK | SWT.V_SCROLL);
    GridData gd = new GridData(GridData.FILL_BOTH);
    table.setLayoutData(gd);

    tv = new CheckboxTableViewer(table);
    tv.setContentProvider(new IStructuredContentProvider() {
        @Override
        public Object[] getElements(Object inputElement) {
            return (Object[]) inputElement;
        }

        @Override
        public void dispose() {
        }

        @Override
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }
    });
    tv.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            return element == null ? EMPTY_STR : ((CfgHolder) element).getName();
        }

        @Override
        public Image getImage(Object element) {
            return IMG_CONFIG;
        }
    });
    tv.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            setPageComplete(isCustomPageComplete());
            update();
        }
    });
    Composite c = new Composite(c2, SWT.NONE);
    c.setLayoutData(new GridData(GridData.FILL_VERTICAL));
    c.setLayout(new GridLayout());

    Button b1 = new Button(c, SWT.PUSH);
    b1.setText(Messages.CConfigWizardPage_7);
    b1.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    b1.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            tv.setAllChecked(true);
            setPageComplete(isCustomPageComplete());
            update();
        }
    });

    Button b2 = new Button(c, SWT.PUSH);
    b2.setText(Messages.CConfigWizardPage_8);
    b2.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    b2.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            tv.setAllChecked(false);
            setPageComplete(isCustomPageComplete());
            update();
        }
    });

    // dummy placeholder
    new Label(c, 0).setLayoutData(new GridData(GridData.FILL_BOTH));

    Button b3 = new Button(c, SWT.PUSH);
    b3.setText(Messages.CConfigWizardPage_13);
    b3.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    b3.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            advancedDialog();
        }
    });

    Group gr = new Group(parent, SWT.NONE);
    gd = new GridData(GridData.FILL_HORIZONTAL);
    gd.horizontalSpan = 2;
    gr.setLayoutData(gd);
    gr.setLayout(new FillLayout());
    Label lb = new Label(gr, SWT.NONE);
    lb.setText(COMMENT);

    setControl(parent);
}

From source file:org.eclipse.cdt.ui.newui.BinaryParsTab.java

License:Open Source License

@Override
public void createControls(Composite parent) {
    super.createControls(parent);
    PlatformUI.getWorkbench().getHelpSystem().setHelp(usercomp, ICHelpContextIds.BINARY_PARSER_PAGE);

    usercomp.setLayout(new GridLayout(1, false));

    sashForm = new SashForm(usercomp, SWT.NONE);
    sashForm.setBackground(sashForm.getDisplay().getSystemColor(SWT.COLOR_GRAY));
    sashForm.setOrientation(SWT.VERTICAL);
    sashForm.setLayoutData(new GridData(GridData.FILL_BOTH));

    GridLayout layout = new GridLayout(2, false);
    layout.marginHeight = 5;/*from   www  . j a v a2s  .  co  m*/
    sashForm.setLayout(layout);

    Composite c1 = new Composite(sashForm, SWT.NONE);
    c1.setLayout(new GridLayout(2, false));
    setupLabel(c1, Messages.BinaryParsTab_0, 2, GridData.FILL_HORIZONTAL);
    table = new Table(c1, SWT.BORDER | SWT.CHECK | SWT.SINGLE);
    table.setLayoutData(new GridData(GridData.FILL_BOTH));
    table.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            handleBinaryParserChanged();
            updateButtons();
        }
    });
    tv = new CheckboxTableViewer(table);
    tv.setContentProvider(new IStructuredContentProvider() {
        @Override
        public Object[] getElements(Object inputElement) {
            return (Object[]) inputElement;
        }

        @Override
        public void dispose() {
        }

        @Override
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }
    });
    tv.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            String txt = (element != null) ? element.toString() : EMPTY_STR;
            if (element instanceof BinaryParserConfiguration)
                txt = ((BinaryParserConfiguration) element).getName();
            return txt;
        }
    });

    tv.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent e) {
            saveChecked();
        }
    });

    // get "standard" buttons on my own place
    Composite c = new Composite(c1, SWT.NONE);
    c.setLayoutData(new GridData(GridData.END));
    initButtons(c, new String[] { MOVEUP_STR, MOVEDOWN_STR });

    parserGroup = new Composite(sashForm, SWT.NULL);
    GridData gd = new GridData();
    parserGroup.setLayout(new TabFolderLayout());

    PixelConverter converter = new PixelConverter(parent);
    gd.heightHint = converter.convertHorizontalDLUsToPixels(DEFAULT_HEIGHT);

    gd.horizontalAlignment = GridData.FILL;
    gd.grabExcessHorizontalSpace = true;
    gd.grabExcessVerticalSpace = true;
    gd.horizontalSpan = 2;
    parserGroup.setLayoutData(gd);

    sashForm.setWeights(new int[] { 100, 100 });
    initializeParserList();
    initializeParserPageMap();
    handleBinaryParserChanged();
}

From source file:org.eclipse.cdt.ui.newui.ConfigMultiSelectionDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite parent) {
    Composite composite = new Composite(parent, SWT.NULL);
    composite.setFont(parent.getFont());
    composite.setLayout(new GridLayout(1, true));
    composite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    // Create the current config table
    table = new Table(composite,
            SWT.CHECK | SWT.BORDER | SWT.SINGLE | SWT.V_SCROLL | SWT.H_SCROLL | SWT.FULL_SELECTION);
    table.setLayoutData(new GridData(GridData.FILL));
    table.setHeaderVisible(true);//from   w w  w .j a v a  2 s . com
    table.setLinesVisible(true);

    message = new Label(composite, SWT.NONE);
    message.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    message.setText(Messages.ConfigMultiSelectionDialog_1);
    message.setForeground(composite.getDisplay().getSystemColor(SWT.COLOR_RED));

    TableColumn col = new TableColumn(table, SWT.NONE);
    col.setText(Messages.ManageConfigDialog_1);
    col.setWidth(100);
    col = new TableColumn(table, SWT.NONE);
    col.setText(Messages.ManageConfigDialog_2);
    col.setWidth(120);

    tv = new CheckboxTableViewer(table);
    tv.setContentProvider(new IStructuredContentProvider() {
        @Override
        public Object[] getElements(Object inputElement) {
            return cfgds;
        }

        @Override
        public void dispose() {
        }

        @Override
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }
    });
    tv.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent e) {
            boolean enabled = (tv.getCheckedElements().length > 1);
            if (b_ok != null)
                b_ok.setEnabled(enabled);
            message.setVisible(!enabled);
            if (enabled) {
                Object[] ob = tv.getCheckedElements();
                result = new ICConfigurationDescription[ob.length];
                System.arraycopy(ob, 0, result, 0, ob.length);
            } else
                result = null;
        }
    });
    tv.setLabelProvider(new ITableLabelProvider() {
        @Override
        public Image getColumnImage(Object element, int columnIndex) {
            return null;
        }

        @Override
        public void addListener(ILabelProviderListener listener) {
        }

        @Override
        public void dispose() {
        }

        @Override
        public boolean isLabelProperty(Object element, String property) {
            return false;
        }

        @Override
        public void removeListener(ILabelProviderListener listener) {
        }

        @Override
        public String getColumnText(Object element, int index) {
            ICConfigurationDescription cfg = (ICConfigurationDescription) element;
            if (index == 0)
                return cfg.getName();
            if (index == 1)
                return cfg.getDescription();
            return AbstractPage.EMPTY_STR;
        }
    });
    tv.setInput(cfgds);
    table.setFocus();
    return composite;
}

From source file:org.eclipse.cdt.ui.newui.ErrorParsTab.java

License:Open Source License

@Override
public void createControls(Composite parent) {

    super.createControls(parent);
    PlatformUI.getWorkbench().getHelpSystem().setHelp(usercomp, ICHelpContextIds.ERROR_PARSERS_PAGE);

    usercomp.setLayout(new GridLayout(1, false));

    // SashForm/*from   w  w w .  j  av a  2 s .  c om*/
    SashForm sashForm = new SashForm(usercomp, SWT.NONE);
    sashForm.setBackground(sashForm.getDisplay().getSystemColor(SWT.COLOR_GRAY));
    sashForm.setOrientation(SWT.VERTICAL);
    sashForm.setLayoutData(new GridData(GridData.FILL_BOTH));

    GridLayout layout = new GridLayout(2, false);
    layout.marginHeight = 5;
    sashForm.setLayout(layout);

    // table
    Composite compositeSashForm = new Composite(sashForm, SWT.NONE);
    compositeSashForm.setLayout(new GridLayout(2, false));
    fTable = new Table(compositeSashForm, SWT.BORDER | SWT.CHECK | SWT.SINGLE);
    fTable.setLayoutData(new GridData(GridData.FILL_BOTH));
    fTable.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            displaySelectedOptionPage();
            updateButtons();
        }
    });
    fTableViewer = new CheckboxTableViewer(fTable);
    fTableViewer.setContentProvider(new IStructuredContentProvider() {
        @Override
        public Object[] getElements(Object inputElement) {
            return (Object[]) inputElement;
        }

        @Override
        public void dispose() {
        }

        @Override
        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }
    });
    fTableViewer.setLabelProvider(new LabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof String) {
                String id = (String) element;
                IErrorParserNamed errorParser = fAvailableErrorParsers.get(id);
                if (errorParser != null) {
                    String name = errorParser.getName();
                    if (name != null && name.length() > 0) {
                        return name;
                    }
                }
                return NLS.bind(Messages.GeneralMessages_NonAccessibleID, id);
            }
            return OOPS;
        }

        @Override
        public Image getImage(Object element) {
            final String TEST_PLUGIN_ID = "org.eclipse.cdt.core.tests"; //$NON-NLS-1$
            final String DEPRECATED = CCorePlugin.getResourceString("CCorePlugin.Deprecated"); //$NON-NLS-1$
            if (element instanceof String) {
                String id = (String) element;
                String[] extIds = ErrorParserManager.getErrorParserExtensionIds();
                if (Arrays.asList(extIds).contains(id)) {
                    String imageKey = CDTSharedImages.IMG_OBJS_EXTENSION;
                    if (id.startsWith(TEST_PLUGIN_ID))
                        imageKey = CDTSharedImages.IMG_OBJS_CDT_TESTING;

                    String[] overlayKeys = new String[5];
                    IErrorParserNamed errorParser = fAvailableErrorParsers.get(id);
                    IErrorParserNamed errorParserExt = fExtensionErrorParsers.get(id);
                    if (!errorParser.equals(errorParserExt)) {
                        overlayKeys[IDecoration.TOP_RIGHT] = CDTSharedImages.IMG_OVR_SETTING;
                    } else if (errorParser.getName().contains(DEPRECATED)) {
                        overlayKeys[IDecoration.TOP_RIGHT] = CDTSharedImages.IMG_OVR_INACTIVE;
                    }
                    return CDTSharedImages.getImageOverlaid(imageKey, overlayKeys);
                }
                return CDTSharedImages.getImage(CDTSharedImages.IMG_OBJS_USER);
            }
            return null;
        }

    });

    fTableViewer.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent e) {
            saveChecked();
        }
    });

    // Buttons
    Composite compositeButtons = new Composite(compositeSashForm, SWT.NONE);
    compositeButtons.setLayoutData(new GridData(GridData.END));
    initButtons(compositeButtons, BUTTONS);

    fCompositeForOptionsPage = new Composite(sashForm, SWT.NULL);
    GridData gd = new GridData();
    fCompositeForOptionsPage.setLayout(new TabFolderLayout());

    PixelConverter converter = new PixelConverter(parent);
    gd.heightHint = converter.convertHorizontalDLUsToPixels(DEFAULT_HEIGHT);

    gd.horizontalAlignment = GridData.FILL;
    gd.grabExcessHorizontalSpace = true;
    gd.grabExcessVerticalSpace = true;
    gd.horizontalSpan = 2;
    fCompositeForOptionsPage.setLayoutData(gd);

    sashForm.setWeights(new int[] { 50, 50 });

    // init data
    ICResourceDescription resDecs = getResDesc();
    fCfgDesc = resDecs != null ? resDecs.getConfiguration() : null;
    initMapParsers();
    updateData(getResDesc());
}

From source file:org.eclipse.cdt.ui.wizards.conversion.ConvertProjectWizardPage.java

License:Open Source License

/**
 * Creates a list of projects that can be selected by the user.
 *
 * @param parent the parent composite/* w w  w.j  av  a  2  s. c o m*/
 * @return Composite
 */
private final Composite createAvailableProjectsGroup(Composite parent) {

    // Add a label
    Label label = new Label(parent, SWT.LEFT);
    label.setText(CUIPlugin.getResourceString(PROJECT_LIST));

    Composite container = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.marginHeight = 5;
    layout.marginWidth = 5;
    layout.numColumns = 2;
    container.setLayout(layout);
    GridData data = new GridData(GridData.FILL_BOTH);
    container.setLayoutData(data);

    // create the table
    Table table = new Table(container,
            SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL);
    data = new GridData(GridData.FILL_BOTH);
    table.setLayoutData(data);
    table.setHeaderVisible(true);
    table.setLinesVisible(false);
    table.getAccessible().addAccessibleListener(new AccessibleAdapter() {
        @Override
        public void getName(AccessibleEvent e) {
            e.result = CUIPlugin.getResourceString(PROJECT_LIST);
        }
    });

    TableLayout tableLayout = new TableLayout();
    table.setHeaderVisible(false);
    table.setLayout(tableLayout);

    // add a table viewer
    tableViewer = new CheckboxTableViewer(table);
    tableViewer.setLabelProvider(new ProjectLabelProvider());
    tableViewer.setContentProvider(new ProjectContentProvider());

    // set initial input
    tableViewer.setInput(getElements());

    // define and assign sorter
    tableViewer.setSorter(new ViewerSorter() {
        @Override
        public int compare(Viewer viewer, Object object1, Object object2) {

            if ((object1 instanceof IProject) && (object2 instanceof IProject)) {
                IProject left = (IProject) object1;
                IProject right = (IProject) object2;
                int result = left.getName().compareToIgnoreCase(right.getName());

                if (result != 0) {
                    return result;
                }
                return left.getName().compareToIgnoreCase(right.getName());
            }
            return super.compare(viewer, object1, object2);
        }

        @Override
        public boolean isSorterProperty(Object element, String property) {
            return true;
        }
    });
    tableViewer.setAllChecked(false);
    tableViewer.refresh();

    tableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent e) {
            // will default to false until a selection is made
            setPageComplete(validatePage());
            updateSelectionButtons();
        }
    });
    // Add button panel

    Composite buttons = new Composite(container, SWT.NULL);
    buttons.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING));
    layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    layout.verticalSpacing = 8;
    buttons.setLayout(layout);

    selectAllButton = new Button(buttons, SWT.PUSH);
    selectAllButton.setText(CUIMessages.ConvertProjectWizardPage_SelectAll);
    selectAllButton.setLayoutData(getButtonGridData(selectAllButton));
    selectAllButton.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event e) {
            ConvertProjectWizardPage.this.tableViewer.setAllChecked(true);
            // update the pageComplete status
            setPageComplete(true);
            updateSelectionButtons();
        }
    });

    deselectAllButton = new Button(buttons, SWT.PUSH);
    deselectAllButton.setText(CUIMessages.ConvertProjectWizardPage_DeselectAll);
    deselectAllButton.setLayoutData(getButtonGridData(deselectAllButton));
    deselectAllButton.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event e) {
            ConvertProjectWizardPage.this.tableViewer.setAllChecked(false);
            // update the pageComplete status
            setPageComplete(false);
            updateSelectionButtons();
        }
    });

    // enable or disable selection buttons
    Object[] elements = getElements();
    boolean enableSelectionButtons = (elements != null) && (elements.length > 0);

    selectAllButton.setEnabled(enableSelectionButtons);
    // we've called setAllChecked(false) earlier
    deselectAllButton.setEnabled(false);

    return parent;
}