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:gov.redhawk.prf.internal.ui.editor.composite.BasicStructPropertyComposite.java

License:Open Source License

/**
 * @param propertyComposite//ww w . j av  a2  s . c o  m
 * @param toolkit
 */
protected void createConfigurationKindViewer(final Composite parent, final FormToolkit toolkit) {
    // Type
    this.kindLabel = toolkit.createLabel(parent, "Kind:");
    this.kindLabel.setForeground(toolkit.getColors().getColor(IFormColors.TITLE));
    this.kindLabel.setLayoutData(GridDataFactory.fillDefaults().align(SWT.BEGINNING, SWT.BEGINNING).create());
    final CheckboxTableViewer viewer = new CheckboxTableViewer(
            toolkit.createTable(parent, SWT.CHECK | SWT.READ_ONLY));
    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(new LabelProvider() {
        /**
         * {@inheritDoc}
         */
        @Override
        public String getText(final Object element) {
            if (element instanceof StructPropertyConfigurationType) {
                final StructPropertyConfigurationType type = (StructPropertyConfigurationType) element;
                if (type == StructPropertyConfigurationType.CONFIGURE) {
                    return element.toString() + " (default)";
                }
            }
            return element == null ? "" : element.toString(); //$NON-NLS-1$ // SUPPRESS CHECKSTYLE AvoidInLine
        }
    });
    viewer.addFilter(new ViewerFilter() {

        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            if (element instanceof StructPropertyConfigurationType) {
                switch ((StructPropertyConfigurationType) element) {
                case FACTORYPARAM:
                case TEST:
                    return false;
                default:
                    break;
                }
            }
            return true;
        }
    });
    viewer.setInput(StructPropertyConfigurationType.values());
    viewer.getControl().setLayoutData(GridDataFactory.fillDefaults().span(2, 1).grab(true, false).create());

    this.configurationKindViewer = viewer;
    HelpUtil.assignTooltip(this.configurationKindViewer.getControl(), HelpConstants.prf_properties_simple_type);
}

From source file:io.sarl.eclipse.preferences.SREsPreferencePage.java

License:Apache License

@Override
protected Control createContents(Composite parent) {
    initializeDialogUnits(parent);//from   w  w w . j a v  a  2  s. com

    noDefaultAndApplyButton();

    final GridLayout layout = new GridLayout();
    layout.numColumns = 1;
    layout.marginHeight = 2;
    layout.marginWidth = 2;
    parent.setLayout(layout);

    SWTFactory.createWrapLabel(parent, Messages.SREsPreferencePage_0, 1, WRAP_WIDTH);
    SWTFactory.createVerticalSpacer(parent, 1);

    SWTFactory.createWrapLabel(parent, Messages.SREsPreferencePage_1, 1, WRAP_WIDTH);
    final Font font = parent.getFont();
    final Composite listComposite = SWTFactory.createComposite(parent, font, 2, 1, GridData.FILL_BOTH);

    this.sreTable = new Table(listComposite, SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
    final GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = HEIGHT_HINT;
    gd.widthHint = WIDTH_HINT;
    this.sreTable.setLayoutData(gd);
    this.sreTable.setFont(font);
    this.sreTable.setHeaderVisible(true);
    this.sreTable.setLinesVisible(true);

    TableColumn column = new TableColumn(this.sreTable, SWT.NULL);
    column.setText(Messages.SREsPreferencePage_2);
    column.addSelectionListener(new SelectionAdapter() {
        @SuppressWarnings("synthetic-access")
        @Override
        public void widgetSelected(SelectionEvent event) {
            sortByName();
            SREsPreferencePage.this.sresList.refresh(true);
        }
    });
    column.setWidth(DEFAULT_WIDTH);

    column = new TableColumn(this.sreTable, SWT.NULL);
    column.setText(Messages.SREsPreferencePage_3);
    column.addSelectionListener(new SelectionAdapter() {
        @SuppressWarnings("synthetic-access")
        @Override
        public void widgetSelected(SelectionEvent event) {
            sortByLocation();
            SREsPreferencePage.this.sresList.refresh(true);
        }
    });
    column.setWidth(DEFAULT_WIDTH);

    this.sresList = new CheckboxTableViewer(this.sreTable);
    this.sresList.setLabelProvider(new SRELabelProvider());
    this.sresList.setContentProvider(new SREsContentProvider());
    this.sresList.setUseHashlookup(true);

    this.sresList.addSelectionChangedListener(new ISelectionChangedListener() {
        @SuppressWarnings("synthetic-access")
        @Override
        public void selectionChanged(SelectionChangedEvent evt) {
            enableButtons();
        }
    });

    this.sresList.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            if (event.getChecked()) {
                setDefaultSRE((ISREInstall) event.getElement());
            } else {
                setDefaultSRE(null);
            }
        }
    });

    this.sresList.addDoubleClickListener(new IDoubleClickListener() {
        @SuppressWarnings("synthetic-access")
        @Override
        public void doubleClick(DoubleClickEvent event) {
            if (!SREsPreferencePage.this.sresList.getSelection().isEmpty()) {
                editSRE();
            }
        }
    });
    this.sreTable.addKeyListener(new KeyAdapter() {
        @SuppressWarnings("synthetic-access")
        @Override
        public void keyPressed(KeyEvent event) {
            if (event.character == SWT.DEL && event.stateMask == 0) {
                if (SREsPreferencePage.this.removeButton.isEnabled()) {
                    removeSREs();
                }
            }
        }
    });

    final Composite buttons = SWTFactory.createComposite(listComposite, font, 1, 1,
            GridData.VERTICAL_ALIGN_BEGINNING, 0, 0);

    this.addButton = SWTFactory.createPushButton(buttons, Messages.SREsPreferencePage_4, null);
    this.addButton.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event evt) {
            addSRE();
        }
    });

    this.editButton = SWTFactory.createPushButton(buttons, Messages.SREsPreferencePage_5, null);
    this.editButton.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event evt) {
            editSRE();
        }
    });

    this.copyButton = SWTFactory.createPushButton(buttons, Messages.SREsPreferencePage_6, null);
    this.copyButton.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event evt) {
            copySRE();
        }
    });

    this.removeButton = SWTFactory.createPushButton(buttons, Messages.SREsPreferencePage_7, null);
    this.removeButton.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event evt) {
            removeSREs();
        }
    });

    this.resetButton = SWTFactory.createPushButton(buttons, Messages.SREsPreferencePage_10, null);
    this.resetButton.addListener(SWT.Selection, new Listener() {
        @Override
        public void handleEvent(Event evt) {
            resetSREs();
        }
    });

    SWTFactory.createVerticalSpacer(listComposite, 1);

    // Populates the SRE table with existing SREs defined in the workspace.
    final ISREInstall[] sres = SARLRuntime.getSREInstalls();
    for (final ISREInstall sre : sres) {
        sre.revalidate();
    }
    setSREs(sres);
    setDefaultSRE(SARLRuntime.getDefaultSREInstall());

    // by default, sort by name
    restoreColumnSettings(JavaPlugin.getDefault().getDialogSettings());

    enableButtons();

    SARLRuntime.addSREInstallChangedListener(this.installListener);

    applyDialogFont(parent);
    return parent;
}

From source file:net.bioclipse.chembl.ui.wizard.ChemblWizardPage.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    final Composite container = new Composite(parent, SWT.NONE);
    final GridLayout layout = new GridLayout(5, false);
    container.setLayout(layout);/*www.  j a v  a  2  s  .  c  o  m*/
    setControl(container);

    setMessage(
            "This is a search tool for ChEMBL. Searches may be done from eiter a compound or a protein perspective.\n"
                    + " Need help? Push the help button for further information. ");
    PlatformUI.getWorkbench().getHelpSystem().setHelp(container, "net.bioclipse.chembl.ui.helpmessage");
    setPageComplete(false);

    label = new Label(container, SWT.NONE);
    label.setText("Search");
    font = new Font(container.getDisplay(), "Helvetica", 15, SWT.NONE);
    label.setFont(font);
    gridData = new GridData();
    gridData.horizontalSpan = 5;
    label.setLayoutData(gridData);

    compounds = new Button(container, SWT.CHECK);
    compounds.setText("Compound search");
    compounds.setSelection(true);
    gridData = new GridData();
    gridData.horizontalSpan = 1;
    compounds.setLayoutData(gridData);

    targetprot = new Button(container, SWT.CHECK);
    targetprot.setText("Target search");
    targetprot.setSelection(false);
    gridData = new GridData();
    gridData.horizontalSpan = 4;
    targetprot.setLayoutData(gridData);

    //gridData for the upcoming checkboxes
    gridData = new GridData();
    gridData.horizontalSpan = 1;

    check1 = new Button(container, SWT.RADIO);
    check1.setText("chebiId             ");
    check1.setToolTipText("Example of chebi id: 106677");
    check1.setSelection(true);
    check1.setVisible(true);
    check1.setLayoutData(gridData);

    check3 = new Button(container, SWT.RADIO);
    check3.setText("Keyword          ");
    check3.setToolTipText("Search with a keyword");
    check3.setSelection(false);
    check3.setVisible(true);
    check3.setLayoutData(gridData);

    check2 = new Button(container, SWT.RADIO);
    check2.setText("SMILES");
    check2.setToolTipText("OBS! very slow search");
    check2.setSelection(false);
    check2.setVisible(true);
    check2.setLayoutData(gridData);

    check4 = new Button(container, SWT.RADIO);
    check4.setText("Fasta sequence          ");
    check4.setToolTipText("Add a FASTA sequence");
    check4.setSelection(false);
    check4.setVisible(false);
    check4.setLayoutData(gridData);
    check4.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            //         textf = new Text(container, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL);
            gridData = new GridData(GridData.FILL_BOTH);
            gridData.horizontalSpan = 4;
            gridData.verticalSpan = 10;
            textfield.setLayoutData(gridData);
        }
    });

    //Adding field to search in
    textfield = new Text(container, SWT.BORDER);
    gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.horizontalSpan = 4;
    //      gridData.verticalSpan=10;
    textfield.setLayoutData(gridData);

    buttonGo = new Button(container, SWT.PUSH);
    buttonGo.setText("Search");
    gridData = new GridData();
    gridData.horizontalSpan = 1;
    buttonGo.setLayoutData(gridData);

    history = new Label(container, SWT.NONE);
    history.setText("Last search:  ");
    font = new Font(container.getDisplay(), "Helvetica", 15, SWT.NONE);
    gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.horizontalSpan = 4;
    history.setFont(font);
    history.setLayoutData(gridData);

    //General griddata for upcoming labels
    gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.horizontalSpan = 2;
    gridData.grabExcessHorizontalSpace = true;
    gridData2 = new GridData(GridData.FILL_HORIZONTAL);
    gridData.horizontalSpan = 3;
    gridData.grabExcessHorizontalSpace = true;

    //Labels filled when something is clicked in the table
    title = new Label(container, SWT.BORDER);
    title.setText("title: ");
    title.setLayoutData(gridData);

    type = new Label(container, SWT.NONE);
    type.setText("type: ");
    type.setLayoutData(gridData2);

    score = new Label(container, SWT.BORDER);
    score.setText("score: ");
    score.setLayoutData(gridData);

    target = new Label(container, SWT.BORDER);
    target.setText("target: ");
    target.setLayoutData(gridData2);

    key = new Label(container, SWT.BORDER);
    key.setText("key:      ");
    key.setLayoutData(gridData);

    label = new Label(container, SWT.NONE);
    font = new Font(container.getDisplay(), "Helvetica", 13, SWT.NONE);
    label.setFont(font);
    label.setText("Result table: ");
    gridData = new GridData();
    gridData.horizontalSpan = 5;
    label.setLayoutData(gridData);

    table = new Table(container, SWT.BORDER | SWT.CHECK);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    tableViewer1 = new CheckboxTableViewer(table);
    gridData = new GridData(gridData.FILL_HORIZONTAL);
    gridData.grabExcessHorizontalSpace = true;
    gridData.grabExcessVerticalSpace = true;
    gridData.widthHint = 100;
    gridData.heightHint = 350;
    gridData.horizontalSpan = 4;
    table.setLayoutData(gridData);

    createTableColumn(table, 5, 0);

    table.addMouseListener(new MouseListener() {
        @Override
        public void mouseDoubleClick(MouseEvent e) {
            // TODO Auto-generated method stub
        }

        @Override
        public void mouseDown(MouseEvent e) {
            Point p = new Point(e.x, e.y);
            TableItem item = table.getItem(p);
            title.setText(columns[0].getText() + ": " + item.getText(0));
            type.setText(columns[1].getText() + ": " + item.getText(1));
            score.setText(columns[2].getText() + ": " + item.getText(2));
            target.setText(columns[3].getText() + ": " + item.getText(3));
            key.setText(columns[4].getText() + ": " + item.getText(4));
        }

        @Override
        public void mouseUp(MouseEvent e) {
            // TODO Auto-generated method stub
        }
    });

    Transfer[] types = new Transfer[] { TextTransfer.getInstance() };
    DragSource source = new DragSource(table, DND.DROP_MOVE | DND.DROP_COPY);
    source.setTransfer(types);
    source.addDragListener(new DragSourceAdapter() {
        public void dragSetData(DragSourceEvent event) {
            // Get the selected items in the drag source
            DragSource ds = (DragSource) event.widget;
            Table table = (Table) ds.getControl();
            TableItem[] selection = table.getSelection();

            StringBuffer buff = new StringBuffer();
            for (int i = 0, n = selection.length; i < n; i++) {
                buff.append(selection[i].getText(0) + "\t");
                buff.append(selection[i].getText(1) + "\t");
                buff.append(selection[i].getText(2) + "\t");
                buff.append(selection[i].getText(3) + "\t");
                buff.append(selection[i].getText(4) + "\t");
                buff.append(selection[i].getText(5) + "\t");
                buff.append(selection[i].getText(6) + "\t");
            }
            event.data = buff.toString();
        }
    });

    save = new Button(container, SWT.PUSH);
    save.setText("Select");
    gridData = new GridData();
    gridData.horizontalSpan = 1;
    save.setLayoutData(gridData);

    checkAll1 = new Button(container, SWT.CHECK);
    checkAll1.setText("Check all");
    gridData = new GridData();
    gridData.horizontalSpan = 4;
    checkAll1.setLayoutData(gridData);

    label = new Label(container, SWT.NONE);
    label.setFont(font);
    label.setText("Selected items: ");
    gridData = new GridData();
    gridData.horizontalSpan = 5;
    label.setLayoutData(gridData);

    table2 = new Table(container, SWT.CHECK | SWT.BORDER);
    table2.setHeaderVisible(true);
    table2.setLinesVisible(true);
    table2.setLayoutData(gridData);
    tableViewer2 = new CheckboxTableViewer(table2);
    gridData = new GridData(gridData.FILL_HORIZONTAL);
    gridData.grabExcessHorizontalSpace = true;
    gridData.grabExcessVerticalSpace = true;
    gridData.widthHint = 100;
    gridData.heightHint = 300;
    gridData.horizontalSpan = 4;
    table2.setLayoutData(gridData);
    createTableColumn(table2, 5, 1);

    int operations = DND.DROP_MOVE | DND.DROP_COPY | DND.DROP_DEFAULT;
    DropTarget target = new DropTarget(table2, operations);
    final TextTransfer textTransfer = TextTransfer.getInstance();
    Transfer[] type = new Transfer[] { textTransfer };
    target.setTransfer(type);
    target.addDropListener(new DropTargetListener() {
        public void dragEnter(DropTargetEvent event) {
            if (event.detail == DND.DROP_DEFAULT) {
                if ((event.operations & DND.DROP_COPY) != 0) {
                    event.detail = DND.DROP_COPY;
                } else {
                    event.detail = DND.DROP_NONE;
                }
            }
        }

        @Override
        public void dragLeave(DropTargetEvent event) {
            // TODO Auto-generated method stub
        }

        @Override
        public void dragOperationChanged(DropTargetEvent event) {
            if (event.detail == DND.DROP_DEFAULT) {
                if ((event.operations & DND.DROP_COPY) != 0) {
                    event.detail = DND.DROP_COPY;
                } else {
                    event.detail = DND.DROP_NONE;
                }
            }
        }

        @Override
        public void dragOver(DropTargetEvent event) {
            event.feedback = DND.FEEDBACK_SELECT | DND.FEEDBACK_SCROLL;
            if (textTransfer.isSupportedType(event.currentDataType)) {
                // NOTE: on unsupported platforms this will return null
                Object o = textTransfer.nativeToJava(event.currentDataType);
                //String t = (String)o;

            }
        }

        @Override
        public void drop(DropTargetEvent event) {
            if (textTransfer.isSupportedType(event.currentDataType)) {
                String text = (String) event.data;
                TableItem item = new TableItem(table2, SWT.NONE);

                //               columns2[0].setText("delete");
                String[] split = text.split("\t");
                int length = split.length;
                for (int i = 0; i < length; i++) {
                    item.setText(i, split[i]);

                }
                ((ChemblWizard) getWizard()).data.tab = table2;
                //               item.setText(0,split[0]);
                //               item.setText(1,split[1]);
                //               item.setText(2,split[2]);
                //               item.setText(3,split[3]);
                //               item.setText(4,split[4]);
                //               item.setText(5,split[5]);
                //               item.setText(6,split[6]);

                packColumns(columns2);
                setPageComplete(true);
            }

        }

        @Override
        public void dropAccept(DropTargetEvent event) {
            // TODO Auto-generated method stub
        }
    });

    delete = new Button(container, SWT.PUSH);
    delete.setText("Delete");
    gridData = new GridData();
    gridData.horizontalSpan = 1;
    delete.setLayoutData(gridData);

    checkAll2 = new Button(container, SWT.CHECK);
    checkAll2.setText("Check all");
    checkAll2.setLayoutData(gridData);

    addListeners();
}

From source file:net.bioclipse.data.wizards.SelectDataFoldersPage.java

License:Open Source License

/**
 * Create contents of the wizard/*  ww  w.ja  v a  2  s.  com*/
 * @param parent
 */
public void createControl(Composite parent) {

    //Cache our wizard for convenience
    wizard = (NewDataProjectWizard) getWizard();

    Composite container = new Composite(parent, SWT.NONE);

    GridLayout layout = new GridLayout();
    layout.numColumns = 2;
    container.setLayout(layout);
    container.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));

    final Label folderLabel = new Label(container, SWT.NONE);
    folderLabel.setText("Folder");

    final Label descriptionLabel = new Label(container, SWT.NONE);
    descriptionLabel.setText("Description");

    //Add viewer for data folders to install
    Table table = new Table(container, SWT.CHECK | SWT.BORDER);
    GridData da = new GridData(SWT.LEFT, SWT.FILL, false, true);
    da.widthHint = 200;
    table.setLayoutData(da);
    viewer = new CheckboxTableViewer(table);

    viewer.setContentProvider(new InstallDataContentProvider());
    viewer.setLabelProvider(new InstallDataLabelProvider());
    viewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            if (event.getElement() instanceof InstallableFolder) {
                InstallableFolder folder = (InstallableFolder) event.getElement();
                folder.setChecked(event.getChecked());
                checkForCompletion();
            }
        }
    });
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            // TODO Auto-generated method stub
            if (event.getSelection() instanceof IStructuredSelection) {
                IStructuredSelection sel = (IStructuredSelection) event.getSelection();
                if (sel.getFirstElement() instanceof InstallableFolder) {
                    InstallableFolder folder = (InstallableFolder) sel.getFirstElement();
                    text.setText(folder.getDescription());
                }
            }
        }

    });

    text = new Text(container, SWT.MULTI | SWT.READ_ONLY | SWT.BORDER);
    text.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));

    /*
    URL dataURL=Platform.getBundle(Activator.PLUGIN_ID).getEntry("/data");
    URL fileURL;
    try {
    fileURL = FileLocator.toFileURL(dataURL);
    } catch (IOException e) {
    System.out.println("Could not convert URL to file: " + dataURL);
    return;
    }
            
    IPath dataPath=new Path(fileURL.getPath());
     */
    updateFolders();
    setControl(container);

}

From source file:net.bioclipse.moss.wizards.InputPage.java

License:Open Source License

/**
 * Create contents of the wizard//from   w  w w. j av a 2 s.  c  o  m
 * 
 * @param parent
 */
public void createControl(final Composite parent) {

    Composite container = new Composite(parent, SWT.NULL);
    setControl(container);
    GridLayout gl = new GridLayout();
    gl.numColumns = 2;
    container.setLayout(gl);

    // Created table and a viewer so input file can be displayed
    table = new Table(container, SWT.CHECK);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    GridData tableData = new GridData();
    tableData.horizontalAlignment = GridData.FILL;
    tableData.verticalAlignment = GridData.FILL;
    tableData.grabExcessHorizontalSpace = true;
    tableData.grabExcessVerticalSpace = true;
    tableData.widthHint = 300;
    tableData.heightHint = 200;
    tableData.horizontalSpan = 2;
    table.setLayoutData(tableData);

    tableViewer = new CheckboxTableViewer(table);
    tableViewer.setContentProvider(new ViewContentProvider());
    tableViewer.setLabelProvider(new ViewLabelProvider());

    // Add columns to table id, value, and description(in SMILES)
    column1 = new TableColumn(table, SWT.NONE);
    column1.setText(colnames[0]);
    column1.setWidth(50);
    column2 = new TableColumn(table, SWT.NONE);
    column2.setText(colnames[1]);
    column2.setWidth(100);
    column3 = new TableColumn(table, SWT.NONE);
    column3.setText(colnames[2]);
    column3.setWidth(1000);

    try {
        tableViewer.setInput(((MossWizard) getWizard()).getMossModel());
    } catch (Exception e) {
        return;
    }
    tableViewer.setAllChecked(true);
    // A molecule can get unselected this method checks whether or not the
    // molecule is to be treated or not
    tableViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            Object obj = event.getElement();
            boolean status = event.getChecked();
            if (obj instanceof InputMolecule) {
                InputMolecule imol = (InputMolecule) obj;
                imol.setChecked(status);
            }
        }
    });
    // Output directory settings
    Label label = new Label(container, SWT.NONE);
    label.setText("Workspace directory for output file");

    GridData labelData = new GridData();
    labelData.horizontalSpan = 2;
    label.setLayoutData(labelData);

    final Text txtoutputFile = new Text(container, SWT.BORDER);
    txtoutputFile.setText("example.mossoutput");

    txtoutputFile.addModifyListener(new ModifyListener() {

        public void modifyText(ModifyEvent e) {
            ((MossWizard) getWizard()).getContainer().updateButtons();
            if (e.getSource() instanceof Text) {
                Text txt = (Text) e.getSource();
                String value = txt.getText();
                ((MossWizard) getWizard()).getFileTable().put("outputName", value);
            }
        }
    });

    GridData outputFileData = new GridData(GridData.FILL_HORIZONTAL);
    outputFileData.verticalAlignment = 2;
    txtoutputFile.setLayoutData(outputFileData);

    Button browse = new Button(container, SWT.PUSH);
    browse.setText("Browse...");

    GridData browseData = new GridData();
    browse.setLayoutData(browseData);

    browse.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            FileDialog dial = new FileDialog(getShell());
            dial.setFilterPath(Platform.getLocation().toOSString());
            // dial.setFilterPath(txtoutputFile.getText());
            dial.setText("MoSS file directory");
            String dir = dial.open();
            if (dir != null) {
                txtoutputFile.setText(dir);
            } else {
                return;
            }

            ((MossWizard) getWizard()).getFileTable().put("output", dir);
        }

    });
    // Identifier(id) output directory settings
    Label labelId = new Label(container, SWT.NONE);
    labelId.setText("Workspace directory for identifier output file");
    GridData labelIdData = new GridData();
    labelIdData.horizontalSpan = 2;
    labelId.setLayoutData(labelIdData);

    final Text txtIdOutputFile = new Text(container, SWT.BORDER);
    txtIdOutputFile.setText("example.mossoutputindex");

    txtIdOutputFile.addModifyListener(new ModifyListener() {

        public void modifyText(ModifyEvent e) {
            ((MossWizard) getWizard()).getContainer().updateButtons();
            if (e.getSource() instanceof Text) {
                Text txt = (Text) e.getSource();
                String value = txt.getText();
                ((MossWizard) getWizard()).getFileTable().put("outputNameId", value);
            }
        }
    });

    GridData idOutputFileData = new GridData(GridData.FILL_HORIZONTAL);
    idOutputFileData.verticalAlignment = 2;
    txtIdOutputFile.setLayoutData(idOutputFileData);

    Button browseId = new Button(container, SWT.PUSH);
    browseId.setText("Browse...");

    GridData browseIdData = new GridData();
    browseId.setLayoutData(browseIdData);
    // final IWorkspaceRoot root= ResourcesPlugin.getWorkspace().getRoot();

    browseId.addSelectionListener(new SelectionAdapter() {
        public void widgetSelected(SelectionEvent e) {
            // ResourceSelectionDialog dialId = new
            // ResourceSelectionDialog(getShell(), root,null );
            // dialId.open();
            // dialId.
            // dialId.setInitialSelections(selectedResources);
            // dialId.setFilterPath(txtIdOutputFile.getText());
            FileDialog dialId = new FileDialog(getShell());
            dialId.setFilterPath(Platform.getLocation().toOSString());

            dialId.setText("MoSS file directory");
            String dirId = dialId.open();
            if (dirId != null) {
                txtIdOutputFile.setText(dirId);
            } else {
                return;
            }
            ((MossWizard) getWizard()).getFileTable().put("outputId", dirId);
        }

    });

}

From source file:net.refractions.udig.catalog.service.database.TableSelectionTab.java

License:Open Source License

private void createTable(Composite top) {
    Table table = new Table(top, SWT.FULL_SELECTION | SWT.CHECK);

    GridData gridData = new GridData(GridData.FILL_BOTH);
    gridData.horizontalSpan = LAYOUT_COLUMNS;
    table.setLayoutData(gridData);/* w  w  w. ja  va 2s .c  o m*/
    table.setHeaderVisible(true);
    TableLayout layout = new TableLayout();
    table.setLayout(layout);

    layout.addColumnData(new ColumnWeightData(1));
    layout.addColumnData(new ColumnWeightData(1));
    layout.addColumnData(new ColumnWeightData(1));
    layout.addColumnData(new ColumnWeightData(1));

    TableColumn nameColumn = new TableColumn(table, SWT.LEFT);
    nameColumn.setText(localization.table);

    TableColumn schemaColumn = new TableColumn(table, SWT.LEFT);
    schemaColumn.setText(localization.schema);

    TableColumn geometryNameColumn = new TableColumn(table, SWT.LEFT);
    geometryNameColumn.setText(localization.geometryName);

    TableColumn geometryTypeColumn = new TableColumn(table, SWT.LEFT);
    geometryTypeColumn.setText(localization.geometryType);

    tableViewer = new CheckboxTableViewer(table);
    tableViewer.setContentProvider(new FilteringContentProvider());
    tableViewer.setLabelProvider(new TableLabelProvider());

    tableViewer.addDoubleClickListener(new CheckOnDoubleClickListener());
    tableViewer.addCheckStateListener(new ICheckStateListener() {

        public void checkStateChanged(CheckStateChangedEvent event) {
            for (Listener l : listeners) {
                Event event2 = new Event();
                event2.type = SWT.Modify;
                Control control = tableViewer.getControl();
                event2.display = control.getDisplay();
                event2.widget = control;
                l.handleEvent(event2);
            }
        }

    });

    tableViewer.setSorter(new ViewerSorter() {
        @Override
        public int compare(Viewer viewer, Object e1, Object e2) {
            TableDescriptor d1 = (TableDescriptor) e1;
            TableDescriptor d2 = (TableDescriptor) e2;
            return d1.name.compareTo(d2.name);
        }
    });

}

From source file:net.rim.ejde.internal.ui.editors.model.factories.ControlFactory.java

License:Open Source License

/**
 * Builds a table control onto the given composite body
 *
 * @param label/*  ww  w . j av  a2s.c  o m*/
 * @param style
 * @param columns
 * @param columnProperties
 * @param body
 * @param toolkit
 * @param cProvider
 * @param lProvider
 * @param input
 * @return
 */
public static final Viewer buildTableControl(Composite body, FormToolkit toolkit, String label,
        String toolTipText, Integer style, Integer columns, String columnProperties[],
        IStructuredContentProvider contentProvider, ITableLabelProvider labelProvider, Object input) {
    // Create label control
    if (label != null) {
        buildLabelControl(body, toolkit, ControlFactory.ControlType.LABEL, label, 3);
    }

    Integer tableStyle = SWT.VIRTUAL | SWT.FULL_SELECTION | SWT.BORDER;

    if (style != null) {
        tableStyle = tableStyle | style;
    }
    if ((tableStyle & SWT.MULTI) == 0) {
        tableStyle = tableStyle + SWT.SINGLE;
    }

    // Create table control
    Table table = toolkit.createTable(body, tableStyle);
    table.setToolTipText(toolTipText);

    CellEditor[] editors = new CellEditor[1];
    TextCellEditor textEditor = new TextCellEditor(table);
    textEditor.setStyle(SWT.READ_ONLY);
    editors[0] = textEditor;

    // Create table viewer control
    TableViewer tableViewer;
    if ((tableStyle & SWT.CHECK) != 0) {
        tableViewer = new CheckboxTableViewer(table);
    } else {
        tableViewer = new TableViewer(table);
    }
    tableViewer.setContentProvider(contentProvider == null ? new DefaultContentProvider() : contentProvider);
    tableViewer.setLabelProvider(labelProvider == null ? new DefaultLabelProvider() : labelProvider);
    tableViewer.setUseHashlookup(true);
    tableViewer.setColumnProperties(columnProperties);
    tableViewer.setCellEditors(editors);
    tableViewer.setInput(input);

    initializeControlLayout(body, table, ControlType.TABLE, columns);
    return tableViewer;
}

From source file:net.rim.ejde.internal.ui.preferences.PreprocessDirectiveUI.java

License:Open Source License

private void createContent() {
    Composite main = new Composite(_parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    layout.marginWidth = 0;/*  w  w w  . j  av  a2s.c o  m*/
    layout.marginHeight = 0;
    layout.numColumns = 1;
    main.setLayout(layout);
    main.setLayoutData(new GridData(GridData.FILL_BOTH));

    Composite tableButtonComposite = new Composite(main, SWT.NONE);
    tableButtonComposite.setLayout(BasicPrefsPage.getGridLayout(2, 5, 0, 0, 0));
    tableButtonComposite.setLayoutData(new GridData(GridData.FILL_BOTH));

    Composite tableComposite = new Composite(tableButtonComposite, SWT.NONE);
    tableComposite.setLayout(BasicPrefsPage.getGridLayout(1, 0, 0, 0, 5));
    tableComposite.setLayoutData(new GridData(GridData.FILL_BOTH));

    Font font = _parent.getFont();
    _fTable = new Table(tableComposite, SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);

    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 250;
    gd.widthHint = 338;
    _fTable.setLayoutData(gd);
    _fTable.setFont(font);
    _fTable.setHeaderVisible(true);
    _fTable.setLinesVisible(true);
    _fTable.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            updateButtons();
        }
    });

    TableColumn statusColumn = new TableColumn(_fTable, SWT.NONE);
    statusColumn.setText(Messages.BuildPrefsPage_PreprocessActiveColulmnHeader);
    statusColumn.setWidth(50);

    TableColumn tagsColumn = new TableColumn(_fTable, SWT.NONE);
    tagsColumn.setText(Messages.BuildPrefsPage_PreprocessTagsColulmnHeader);
    tagsColumn.setWidth(200);
    tagsColumn.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            Object input = _preprocessorTableViewer.getInput();
            if (input instanceof PreprocessorTag[]) {
                PreprocessorTag[] tags = (PreprocessorTag[]) input;
                Arrays.sort(tags, new DirectiveString());
                _preprocessorTableViewer.setInput(tags);
            }
        }
    });
    TableColumn scopeColumn = new TableColumn(_fTable, SWT.NONE);
    scopeColumn.setText(Messages.BuildPrefsPage_PreprocessScopeColulmnHeader);
    scopeColumn.setWidth(100);
    scopeColumn.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            Object input = _preprocessorTableViewer.getInput();
            if (input instanceof PreprocessorTag[]) {
                PreprocessorTag[] tags = (PreprocessorTag[]) input;
                Arrays.sort(tags, new ScopeComparator());
                _preprocessorTableViewer.setInput(tags);
            }
        }
    });

    _preprocessorTableViewer = new CheckboxTableViewer(_fTable);
    _preprocessorTableViewer.setContentProvider(new PreprocessorTagContentProvider());
    _preprocessorTableViewer.setLabelProvider(new PreprocessorTagLabelProvider());
    _preprocessorTableViewer.setCheckStateProvider(new PreprocessorTagCheckStateProvider());
    _preprocessorTableViewer.addCheckStateListener(new ICheckStateListener() {
        @Override
        public void checkStateChanged(CheckStateChangedEvent event) {
            Object element = event.getElement();
            if (element instanceof PreprocessorTag) {
                PreprocessorTag tag = (PreprocessorTag) element;
                if (tag.getScopeID() <= _scope) {
                    tag.setIsActive(Boolean.valueOf(event.getChecked()));
                    performChanged();
                } else {
                    _preprocessorTableViewer.setChecked(tag, !event.getChecked());
                }
            }
        }
    });
    // create a button group with buttons
    Composite buttonComposite = new Composite(tableButtonComposite, SWT.NONE);
    buttonComposite.setLayout(BasicPrefsPage.getGridLayout(1, 0, 0, 0, 0));
    buttonComposite.setLayoutData(new GridData(GridData.FILL_VERTICAL));

    // add "Add..." button
    _addButton = new Button(buttonComposite, SWT.PUSH);
    _addButton.setText(Messages.BasicPrefsPage_AddButtonLabel);
    BasicPrefsPage.setDialogConfirmButtonLayoutData(_addButton, 0);

    // add "Remove" button
    _removeButton = new Button(buttonComposite, SWT.PUSH);
    _removeButton.setText(Messages.BasicPrefsPage_RemoveButtonLabel);
    BasicPrefsPage.setDialogConfirmButtonLayoutData(_removeButton, 5);

    // add "Edit" button
    _editButton = new Button(buttonComposite, SWT.PUSH);
    _editButton.setText(Messages.BasicPrefsPage_EditButtonLabel);
    BasicPrefsPage.setDialogConfirmButtonLayoutData(_editButton, 5);

    // add "Select All" button
    _selectAllButton = new Button(buttonComposite, SWT.PUSH);
    _selectAllButton.setText(Messages.BasicPrefsPage_SelectAllButtonLabel);
    BasicPrefsPage.setDialogConfirmButtonLayoutData(_selectAllButton, 5);

    // add "De-select All" button
    _deselectAllButton = new Button(buttonComposite, SWT.PUSH);
    _deselectAllButton.setText(Messages.BasicPrefsPage_DeselectAllButtonLabel);
    BasicPrefsPage.setDialogConfirmButtonLayoutData(_deselectAllButton, 5);

    // add listener to listen to the event when "Add..." button is pressed
    final PreprocessDirectiveUI ui = this;
    _addButton.addSelectionListener(new SelectionAdapter() {
        PreprocessDefineInputValidator validator = new PreprocessDefineInputValidator(ui);

        @Override
        public void widgetSelected(SelectionEvent e) {
            InputDialog dialog = new InputDialog(_parent.getShell(),
                    Messages.BuildPrefsPage_PreprocessAddDialogTitle,
                    Messages.BuildPrefsPage_PreprocessDialogLabel, "", validator);
            dialog.open();
            String tags = dialog.getValue();
            PreprocessorTag tag = null;
            List<PreprocessorTag> input = getInput();
            boolean changed = false;
            for (String tagString : StringUtils.split(tags, IConstants.SEMICOLON_MARK)) {
                tag = new PreprocessorTag(tagString, true, _scope);
                input.add(tag);
                if (!changed) {
                    changed = true;
                }
            }
            if (changed) {
                performChanged();
            }
            _preprocessorTableViewer.setInput(input.toArray(new PreprocessorTag[input.size()]));
            enableNonAddButtons();
        }
    });

    // add listener to listen to the event when "Remove" button is pressed
    _removeButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            List<PreprocessorTag> input = getInput();
            TableItem[] selections = _fTable.getSelection();
            for (int i = 0; i < selections.length; i++) {
                input.remove(selections[i].getData());
            }
            _preprocessorTableViewer.setInput(input.toArray(new PreprocessorTag[input.size()]));
            disableNonAddButtons();
            if (selections.length > 0) {
                performChanged();
            }
        }
    });

    // add listener to listen to the event when "Edit..." button is pressed
    _editButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            int[] selectedIndexes = _fTable.getSelectionIndices();
            PreprocessDefineInputValidator validator = null;
            String tagString = null;
            List<PreprocessorTag> input = getInput();
            PreprocessorTag tag;
            boolean changed = false;
            for (int tagIndex : selectedIndexes) {
                TableItem item = _fTable.getItem(tagIndex);
                String initialText = item.getText(1);
                validator = new PreprocessDefineInputValidator(ui, true, initialText);
                InputDialog dialog = new InputDialog(_parent.getShell(),
                        Messages.BuildPrefsPage_PreprocessEditDialogTitle,
                        Messages.BuildPrefsPage_PreprocessEditLabel, initialText, validator);
                dialog.open();
                tagString = dialog.getValue();
                if ((!initialText.equals(tagString)) && (validator.isValid(tagString) == null)) {
                    tag = new PreprocessorTag(tagString, true, _scope);
                    input.remove(tagIndex);
                    input.add(tagIndex, tag);
                    if (!changed) {
                        changed = true;
                    }
                }
            }
            _preprocessorTableViewer.setInput(input.toArray(new PreprocessorTag[input.size()]));
            if (changed) {
                performChanged();
            }
        }
    });

    // add listener to listen to the event when "Select All" button is pressed
    _selectAllButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            List<PreprocessorTag> input = getInput();
            boolean changed = false;
            for (PreprocessorTag tag : input) {
                if (tag.getScopeID() == _scope && !tag.isActive()) {
                    tag.setIsActive(true);
                    if (!changed) {
                        changed = true;
                    }
                }
            }
            _preprocessorTableViewer.setInput(input.toArray(new PreprocessorTag[input.size()]));
            if (changed) {
                performChanged();
            }
        }
    });
    // add listener to listen to the event when "Deselect All" button is pressed
    _deselectAllButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            List<PreprocessorTag> input = getInput();
            boolean changed = false;
            for (PreprocessorTag tag : input) {
                if (tag.getScopeID() == _scope && tag.isActive()) {
                    tag.setIsActive(false);
                    if (!changed) {
                        changed = true;
                    }
                }
            }
            _preprocessorTableViewer.setInput(input.toArray(new PreprocessorTag[input.size()]));
            if (changed) {
                performChanged();
            }
        }
    });
    // show data
    showData();
}

From source file:net.sf.eclipsecs.ui.properties.ComplexFileSetsEditor.java

License:Open Source License

/**
 * {@inheritDoc}//from  w  w  w. j  a v a2  s. co  m
 */
public Control createContents(Composite parent) throws CheckstylePluginException {

    mComposite = parent;

    Group composite = new Group(parent, SWT.NONE);
    composite.setText(Messages.ComplexFileSetsEditor_titleAdvancedFilesetEditor);

    GridLayout layout = new GridLayout();
    layout.numColumns = 2;
    composite.setLayout(layout);

    //
    // Create the table of file sets.
    //
    Table table = new Table(composite, SWT.CHECK | SWT.BORDER | SWT.FULL_SELECTION);

    GridData data = new GridData(GridData.FILL_BOTH);
    table.setLayoutData(data);

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

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

    TableColumn column1 = new TableColumn(table, SWT.NONE);
    column1.setText(Messages.ComplexFileSetsEditor_colEnabled);
    column1.setResizable(false);

    TableColumn column2 = new TableColumn(table, SWT.NONE);
    column2.setText(Messages.ComplexFileSetsEditor_colFilesetName);

    TableColumn column3 = new TableColumn(table, SWT.NONE);
    column3.setText(Messages.ComplexFileSetsEditor_colConfiguration);

    tableLayout.addColumnData(new ColumnWeightData(20));
    tableLayout.addColumnData(new ColumnWeightData(40));
    tableLayout.addColumnData(new ColumnWeightData(40));

    mViewer = new CheckboxTableViewer(table);
    mViewer.setLabelProvider(new FileSetLabelProvider());
    mViewer.setContentProvider(new ArrayContentProvider());
    mViewer.setSorter(new FileSetViewerSorter());
    mViewer.setInput(mFileSets);

    //
    // Set checked state
    //
    for (FileSet fileSet : mFileSets) {
        mViewer.setChecked(fileSet, fileSet.isEnabled());
    }

    mViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(DoubleClickEvent e) {
            editFileSet();
        }
    });

    mViewer.addCheckStateListener(new ICheckStateListener() {
        public void checkStateChanged(CheckStateChangedEvent event) {
            changeEnabledState(event);
        }
    });

    //
    // Build the buttons.
    //
    Composite buttons = new Composite(composite, SWT.NULL);
    buttons.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING));
    layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    buttons.setLayout(layout);

    mAddButton = createPushButton(buttons, Messages.ComplexFileSetsEditor_btnAdd);
    mAddButton.addListener(SWT.Selection, new Listener() {
        public void handleEvent(Event evt) {
            addFileSet();
        }
    });

    mEditButton = createPushButton(buttons, Messages.ComplexFileSetsEditor_btnEdit);
    mEditButton.addListener(SWT.Selection, new Listener() {
        public void handleEvent(Event evt) {
            editFileSet();
        }
    });

    mRemoveButton = createPushButton(buttons, Messages.ComplexFileSetsEditor_btnRemove);
    mRemoveButton.addListener(SWT.Selection, new Listener() {
        public void handleEvent(Event evt) {
            removeFileSet();
        }
    });

    return composite;
}

From source file:net.sf.eclipsecs.ui.properties.FileSetEditDialog.java

License:Open Source License

private Control createFileMatchPatternPart(Composite parent) {

    Group composite = new Group(parent, SWT.NONE);
    composite.setText(Messages.FileSetEditDialog_titlePatternsTable);
    composite.setLayout(new FormLayout());

    Composite buttons = new Composite(composite, SWT.NULL);
    FormData fd = new FormData();
    fd.top = new FormAttachment(0, 3);
    fd.right = new FormAttachment(100, -3);
    fd.bottom = new FormAttachment(100, -3);

    buttons.setLayoutData(fd);/*from ww w. j av  a 2 s  . c  o  m*/
    GridLayout layout = new GridLayout();
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    buttons.setLayout(layout);

    Table table = new Table(composite, SWT.CHECK | SWT.BORDER | SWT.FULL_SELECTION);
    fd = new FormData();
    fd.left = new FormAttachment(0, 3);
    fd.top = new FormAttachment(0, 3);
    fd.right = new FormAttachment(buttons, -3, SWT.LEFT);
    fd.bottom = new FormAttachment(100, -3);
    table.setLayoutData(fd);

    TableLayout tableLayout = new TableLayout();
    table.setLayout(tableLayout);
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    TableColumn column1 = new TableColumn(table, SWT.NONE);
    column1.setText(Messages.FileSetEditDialog_colInclude);

    tableLayout.addColumnData(new ColumnWeightData(11));

    TableColumn column2 = new TableColumn(table, SWT.NONE);
    column2.setText(Messages.FileSetEditDialog_colRegex);
    tableLayout.addColumnData(new ColumnWeightData(89));

    mPatternViewer = new CheckboxTableViewer(table);

    mPatternViewer.setLabelProvider(new FileMatchPatternLabelProvider());
    mPatternViewer.setContentProvider(new ArrayContentProvider());
    mPatternViewer.addDoubleClickListener(mController);
    mPatternViewer.addCheckStateListener(mController);

    //
    // Build the buttons.
    //

    mAddButton = createPushButton(buttons, Messages.FileSetEditDialog_btnAdd);
    mAddButton.addSelectionListener(mController);

    mEditButton = createPushButton(buttons, Messages.FileSetEditDialog_btnEdit);
    mEditButton.addSelectionListener(mController);

    mRemoveButton = createPushButton(buttons, Messages.FileSetEditDialog_btnRemove);
    mRemoveButton.addSelectionListener(mController);

    mUpButton = createPushButton(buttons, Messages.FileSetEditDialog_btnUp);
    mUpButton.addSelectionListener(mController);

    mDownButton = createPushButton(buttons, Messages.FileSetEditDialog_btnDown);
    mDownButton.addSelectionListener(mController);

    return composite;
}