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

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

Introduction

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

Prototype

public CheckboxCellEditor(Composite parent) 

Source Link

Document

Creates a new checkbox cell editor parented under the given control.

Usage

From source file:Snippet048TreeViewerTabWithCheckboxFor3_3.java

License:Open Source License

public Snippet048TreeViewerTabWithCheckboxFor3_3(final Shell shell) {
    final TreeViewer v = new TreeViewer(shell, SWT.BORDER | SWT.FULL_SELECTION);
    v.getTree().setLinesVisible(true);//from   w w  w.j a v  a  2 s . c om
    v.getTree().setHeaderVisible(true);

    final TreeViewerFocusCellManager mgr = new TreeViewerFocusCellManager(v,
            new FocusCellOwnerDrawHighlighter(v));
    ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy(v) {
        protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) {
            return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL
                    || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_DOUBLE_CLICK_SELECTION
                    || (event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED
                            && (event.keyCode == SWT.CR || event.character == ' '))
                    || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC;
        }
    };

    TreeViewerEditor.create(v, mgr, actSupport,
            ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR
                    | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION);

    final TextCellEditor textCellEditor = new TextCellEditor(v.getTree());
    final CheckboxCellEditor checkboxCellEditor = new CheckboxCellEditor(v.getTree());

    TreeViewerColumn column = new TreeViewerColumn(v, SWT.NONE);
    column.getColumn().setWidth(200);
    column.getColumn().setMoveable(true);
    column.getColumn().setText("Column 1");
    column.setLabelProvider(new ColumnLabelProvider() {

        public String getText(Object element) {
            return "Column 1 => " + element.toString();
        }

    });
    column.setEditingSupport(new EditingSupport(v) {
        protected boolean canEdit(Object element) {
            return false;
        }

        protected CellEditor getCellEditor(Object element) {
            return textCellEditor;
        }

        protected Object getValue(Object element) {
            return ((MyModel) element).counter + "";
        }

        protected void setValue(Object element, Object value) {
            ((MyModel) element).counter = Integer.parseInt(value.toString());
            v.update(element, null);
        }
    });

    column = new TreeViewerColumn(v, SWT.NONE);
    column.getColumn().setWidth(200);
    column.getColumn().setMoveable(true);
    column.getColumn().setText("Column 2");
    column.setLabelProvider(new ColumnLabelProvider() {

        public String getText(Object element) {
            return "Column 2 => " + element.toString();
        }

    });
    column.setEditingSupport(new EditingSupport(v) {
        protected boolean canEdit(Object element) {
            return true;
        }

        protected CellEditor getCellEditor(Object element) {
            return textCellEditor;
        }

        protected Object getValue(Object element) {
            return ((MyModel) element).counter + "";
        }

        protected void setValue(Object element, Object value) {
            ((MyModel) element).counter = Integer.parseInt(value.toString());
            v.update(element, null);
        }
    });

    column = new TreeViewerColumn(v, SWT.NONE);
    column.getColumn().setWidth(200);
    column.getColumn().setMoveable(true);
    column.getColumn().setText("Column 3");
    column.setLabelProvider(new ColumnLabelProvider() {

        public String getText(Object element) {
            return ((MyModel) element).bool + "";
        }

    });
    column.setEditingSupport(new EditingSupport(v) {
        protected boolean canEdit(Object element) {
            return true;
        }

        protected CellEditor getCellEditor(Object element) {
            return checkboxCellEditor;
        }

        protected Object getValue(Object element) {
            return new Boolean(((MyModel) element).bool);
        }

        protected void setValue(Object element, Object value) {
            ((MyModel) element).bool = ((Boolean) value).booleanValue();
            v.update(element, null);
        }
    });

    v.setContentProvider(new MyContentProvider());
    v.setInput(createModel());
    v.getControl().addTraverseListener(new TraverseListener() {

        public void keyTraversed(TraverseEvent e) {
            if ((e.detail == SWT.TRAVERSE_TAB_NEXT || e.detail == SWT.TRAVERSE_TAB_PREVIOUS)
                    && mgr.getFocusCell().getColumnIndex() == 2) {
                ColumnViewerEditor editor = v.getColumnViewerEditor();
                ViewerCell cell = mgr.getFocusCell();

                try {
                    Method m = ColumnViewerEditor.class.getDeclaredMethod("processTraverseEvent",
                            new Class[] { int.class, ViewerRow.class, TraverseEvent.class });
                    m.setAccessible(true);
                    m.invoke(editor,
                            new Object[] { new Integer(cell.getColumnIndex()), cell.getViewerRow(), e });
                } catch (SecurityException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                } catch (NoSuchMethodException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                } catch (IllegalArgumentException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                } catch (IllegalAccessException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                } catch (InvocationTargetException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                }
            }
        }

    });
}

From source file:cc.warlock.rcp.views.ScriptManager.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    main = parent;/* ww w . j a  v a 2 s  .co  m*/
    GridLayout layout = new GridLayout();
    layout.numColumns = 1;
    layout.horizontalSpacing = 0;
    layout.marginBottom = 0;
    layout.marginHeight = 0;
    layout.marginLeft = 0;
    layout.marginRight = 0;
    layout.marginTop = 0;
    layout.marginWidth = 0;
    layout.verticalSpacing = 0;

    parent.setLayout(layout);

    scriptsTable = new TableViewer(parent, SWT.SINGLE | SWT.BORDER | SWT.V_SCROLL | SWT.FILL);
    scriptsTable.getTable().setLayoutData(new GridData(GridData.FILL_BOTH));
    scriptsTable.setUseHashlookup(true);
    scriptsTable.setColumnProperties(new String[] { "name", "pause", "stop" });
    scriptsTable.getTable().setLinesVisible(true);
    //scriptsTable.getTable().setHeaderVisible(true);

    CellEditor editors[] = new CellEditor[] { new TextCellEditor(scriptsTable.getTable()),
            new CheckboxCellEditor(scriptsTable.getTable()), new CheckboxCellEditor(scriptsTable.getTable()) };
    scriptsTable.setCellEditors(editors);

    scriptsTable.setCellModifier(new ICellModifier() {
        public boolean canModify(Object element, String property) {
            return false;
        }

        public Object getValue(Object element, String property) {
            return ((ScriptRow) element).getName();
        }

        public void modify(Object element, String property, Object value) {
            return;
        }
    });

    nameColumn = new TableColumn(scriptsTable.getTable(), SWT.LEFT, 0);
    nameColumn.setText("Name");
    pauseColumn = new TableColumn(scriptsTable.getTable(), SWT.RIGHT, 1);
    pauseColumn.setWidth(30);
    pauseColumn.setText("Pause");
    stopColumn = new TableColumn(scriptsTable.getTable(), SWT.RIGHT, 2);
    stopColumn.setWidth(30);
    stopColumn.setText("Stop");
    scriptsTable.setLabelProvider(new ScriptsLabelProvider());
    scriptsTable.setContentProvider(ArrayContentProvider.getInstance());
    scriptsTable.setInput(new ScriptRow[] { new ScriptRow("sfhunter.cmd", false),
            new ScriptRow("train.cmd", true), new ScriptRow("do.wiz", false), new ScriptRow("go.wsl", true) });

    main.addControlListener(new ControlAdapter() {
        public void controlResized(ControlEvent e) {
            Rectangle area = main.getClientArea();
            Table table = scriptsTable.getTable();
            Point size = table.computeSize(SWT.DEFAULT, SWT.DEFAULT);
            ScrollBar vBar = table.getVerticalBar();
            int width = area.width - table.computeTrim(0, 0, 0, 0).width - vBar.getSize().x;
            if (size.y > area.height + table.getHeaderHeight()) {
                // Subtract the scrollbar width from the total column width
                // if a vertical scrollbar will be required
                Point vBarSize = vBar.getSize();
                width -= vBarSize.x;
            }
            Point oldSize = table.getSize();
            if (oldSize.x > area.width) {
                // table is getting smaller so make the columns 
                // smaller first and then resize the table to
                // match the client area width
                nameColumn.setWidth(width - 60);
                stopColumn.setWidth(30);
                pauseColumn.setWidth(30);
                table.setSize(area.width, area.height);
            } else {
                // table is getting bigger so make the table 
                // bigger first and then make the columns wider
                // to match the client area width
                table.setSize(area.width, area.height);
                nameColumn.setWidth(width - 60);
                stopColumn.setWidth(30);
                pauseColumn.setWidth(30);
            }
        }
    });
}

From source file:ch.elexis.core.ui.dialogs.OrderImportDialog.java

License:Open Source License

private void createViewerColumns() {
    TableViewerColumn column;/*from  www .ja  v  a  2  s  .  c o  m*/

    final CheckboxCellEditor checkboxCellEditor = new CheckboxCellEditor(viewer.getTable());
    final TextCellEditor textCellEditor = new TextCellEditor(viewer.getTable());

    /* OK (checkbox column) */
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("OK");
    column.getColumn().setWidth(50);
    column.setLabelProvider(new CheckboxLabelProvider());
    column.setEditingSupport(new EditingSupport(viewer) {
        public boolean canEdit(Object element) {
            return true;
        }

        public CellEditor getCellEditor(Object element) {
            return checkboxCellEditor;
        }

        public Object getValue(Object element) {
            if (element instanceof OrderElement) {
                OrderElement orderElement = (OrderElement) element;
                return new Boolean(orderElement.isVerified());
            } else {
                return null;
            }
        }

        public void setValue(Object element, Object value) {
            if (element instanceof OrderElement) {
                OrderElement orderElement = (OrderElement) element;
                if (value instanceof Boolean) {
                    Boolean bValue = (Boolean) value;
                    orderElement.setVerified(bValue.booleanValue());
                }
                viewer.update(orderElement, null);
            }
        }
    });

    /* Amount delivered*/
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("Geliefert");
    column.getColumn().setWidth(60);
    column.setLabelProvider(new AmountLabelProvider());
    column.setEditingSupport(new EditingSupport(viewer) {
        public boolean canEdit(Object element) {
            return true;
        }

        public CellEditor getCellEditor(Object element) {
            return textCellEditor;
        }

        public Object getValue(Object element) {
            if (element instanceof OrderElement) {
                OrderElement orderElement = (OrderElement) element;
                return orderElement.getAmountAsString();
            } else {
                return null;
            }
        }

        public void setValue(Object element, Object value) {
            if (element instanceof OrderElement) {
                OrderElement orderElement = (OrderElement) element;
                if (value instanceof String) {
                    String text = (String) value;
                    try {
                        int amount = Integer.parseInt(text);
                        orderElement.setAmount(amount);
                        orderElement.setVerified(true);
                    } catch (NumberFormatException ex) {
                        // ignore invalid value
                    }
                }
                viewer.update(orderElement, null);
            }
        }
    });

    /* Amount on stock*/
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("Lager");
    column.getColumn().setWidth(60);
    column.setLabelProvider(new StockLabelProvider());

    /* Pharamcode */
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("Pharmacode");
    column.getColumn().setWidth(80);
    column.setLabelProvider(new PharamcodeLabelProvider());

    /* EAN */
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("EAN");
    column.getColumn().setWidth(110);
    column.setLabelProvider(new EANLabelProvider());

    /* Description */
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("Beschreibung");
    column.getColumn().setWidth(300);
    column.setLabelProvider(new DescriptionLabelProvider());

}

From source file:ch.elexis.dialogs.OrderImportDialog.java

License:Open Source License

private void createViewerColumns() {
    TableViewerColumn column;/* w w w.j ava  2 s .c  om*/

    final CheckboxCellEditor checkboxCellEditor = new CheckboxCellEditor(viewer.getTable());
    final TextCellEditor textCellEditor = new TextCellEditor(viewer.getTable());

    /* OK (checkbox column) */
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("OK");
    column.getColumn().setWidth(50);
    column.setLabelProvider(new CheckboxLabelProvider());
    column.setEditingSupport(new EditingSupport(viewer) {
        public boolean canEdit(Object element) {
            return true;
        }

        public CellEditor getCellEditor(Object element) {
            return checkboxCellEditor;
        }

        public Object getValue(Object element) {
            if (element instanceof OrderElement) {
                OrderElement orderElement = (OrderElement) element;
                return new Boolean(orderElement.isVerified());
            } else {
                return null;
            }
        }

        public void setValue(Object element, Object value) {
            if (element instanceof OrderElement) {
                OrderElement orderElement = (OrderElement) element;
                if (value instanceof Boolean) {
                    Boolean bValue = (Boolean) value;
                    orderElement.setVerified(bValue.booleanValue());
                }
                viewer.update(orderElement, null);
            }
        }
    });

    /* Amount */
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("Geliefert");
    column.getColumn().setWidth(60);
    column.setLabelProvider(new AmountLabelProvider());
    column.setEditingSupport(new EditingSupport(viewer) {
        public boolean canEdit(Object element) {
            return true;
        }

        public CellEditor getCellEditor(Object element) {
            return textCellEditor;
        }

        public Object getValue(Object element) {
            if (element instanceof OrderElement) {
                OrderElement orderElement = (OrderElement) element;
                return orderElement.getAmountAsString();
            } else {
                return null;
            }
        }

        public void setValue(Object element, Object value) {
            if (element instanceof OrderElement) {
                OrderElement orderElement = (OrderElement) element;
                if (value instanceof String) {
                    String text = (String) value;
                    try {
                        int amount = Integer.parseInt(text);
                        orderElement.setAmount(amount);
                        orderElement.setVerified(true);
                    } catch (NumberFormatException ex) {
                        // ignore invalid value
                    }
                }
                viewer.update(orderElement, null);
            }
        }
    });

    /* Amount */
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("Lager");
    column.getColumn().setWidth(60);
    column.setLabelProvider(new StockLabelProvider());

    /* Pharamcode */
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("Pharmacode");
    column.getColumn().setWidth(80);
    column.setLabelProvider(new PharamcodeLabelProvider());

    /* EAN */
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("EAN");
    column.getColumn().setWidth(110);
    column.setLabelProvider(new EANLabelProvider());

    /* Description */
    column = new TableViewerColumn(viewer, SWT.LEFT);
    column.getColumn().setText("Beschreibung");
    column.getColumn().setWidth(300);
    column.setLabelProvider(new DescriptionLabelProvider());

}

From source file:com.appnativa.studio.properties.CheckBoxPropertyDescriptor.java

License:Open Source License

/**
 * The <code>CheckBoxPropertyDescriptor</code> implementation of this
 * <code>IPropertyDescriptor</code> method creates and returns a new
 * <code>ColorCellEditor</code>.
 * <p>//from  w  w w.  ja  v  a2s . c om
 * The editor is configured with the current validator if there is one.
 * </p>
 */
public CellEditor createPropertyEditor(Composite parent) {
    CellEditor editor = new CheckboxCellEditor(parent);

    if (getValidator() != null) {
        editor.setValidator(getValidator());
    }

    return editor;
}

From source file:com.aptana.editor.common.preferences.ValidationPreferencePage.java

License:Open Source License

private Control createValidators(Composite parent) {
    Composite main = new Composite(parent, SWT.NONE);
    main.setLayout(GridLayoutFactory.fillDefaults().spacing(0, 0).create());

    Composite labelComp = new Composite(main, SWT.NONE);
    labelComp.setLayout(GridLayoutFactory.fillDefaults().extendedMargins(5, 0, 0, 0).numColumns(2)
            .spacing(2, SWT.DEFAULT).create());
    labelComp.setLayoutData(GridDataFactory.swtDefaults().grab(true, false).create());
    Label label = new Label(labelComp, SWT.NONE);
    label.setText(Messages.ValidationPreferencePage_LBL_Validators);
    Label helpImage = new Label(labelComp, SWT.NONE);
    helpImage.setImage(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_LCL_LINKTO_HELP));
    helpImage.setToolTipText(Messages.ValidationPreferencePage_EnablingValidatorWarning);

    Group group = new Group(main, SWT.NONE);
    group.setLayout(GridLayoutFactory.swtDefaults().margins(4, 4).create());
    group.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());

    Table table = new Table(group, SWT.SINGLE | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION);
    table.setLayoutData(GridDataFactory.fillDefaults().hint(300, 100).grab(true, false).create());
    table.setLinesVisible(true);/*from  w w  w  .j  ava 2 s.c  om*/
    table.setHeaderVisible(true);

    // set up columns
    // Name column
    TableColumn name = new TableColumn(table, SWT.LEFT);
    name.setWidth(250);
    name.setText(Messages.ValidationPreferencePage_NameColumn);
    name.setToolTipText(Messages.ValidationPreferencePage_NameColumn);

    // Build column
    TableColumn build = new TableColumn(table, SWT.CENTER);
    build.setWidth(40);
    build.setText(Messages.ValidationPreferencePage_BuildColumn);
    build.setToolTipText(Messages.ValidationPreferencePage_BuildColumn);

    // Reconcile column
    TableColumn reconcile = new TableColumn(table, SWT.CENTER);
    reconcile.setWidth(75);
    reconcile.setText(Messages.ValidationPreferencePage_ReconcileColumn);
    reconcile.setToolTipText(Messages.ValidationPreferencePage_ReconcileColumn);

    // Now set up table viewer!
    validatorsViewer = new TableViewer(table);
    // validatorsViewer.setUseHashlookup(true);
    validatorsViewer.setColumnProperties(new String[] { NAME, BUILD, RECONCILE });

    // Assign the cell editors to the viewer
    validatorsViewer.setCellEditors(
            new CellEditor[] { null, new CheckboxCellEditor(table), new CheckboxCellEditor(table) });

    // Set the cell modifier for the viewer
    validatorsViewer.setCellModifier(new ParticipantCellModifier(validatorsViewer));

    // Now set up content/label providers
    validatorsViewer.setContentProvider(ArrayContentProvider.getInstance());
    validatorsViewer.setLabelProvider(new ParticipantLabelProvider());
    // Hide required participants
    validatorsViewer.addFilter(new RequiredParticipantFilter());
    // check the selected build participant, show it's filters
    validatorsViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            updateFilterExpressions();
        }
    });

    // Now set input
    validatorsViewer.setInput(this.participants);

    return main;
}

From source file:com.aptana.ide.logging.preferences.LoggingPreferenceWidget.java

License:Open Source License

private void styleCells() {
    CheckboxCellEditor editor = new CheckboxCellEditor(tree);
    ColorCellEditor colorEditor = new ColorCellEditor(tree);
    CellEditor[] editors = new CellEditor[COLUMNS.length];
    editors[0] = editor;/*from  w  w  w .j a  v a 2  s.  c o  m*/
    editors[1] = null;
    editors[2] = null;
    editors[3] = colorEditor;
    editors[4] = editor;
    editors[5] = editors[4];
    editors[6] = editors[5];

    ICellModifier modifier = new ICellModifier() {

        public void modify(Object element, String property, Object value) {
            if (element instanceof Item) {
                element = ((Item) element).getData();
            }
            ColorizationStyle style = null;
            if (element instanceof IToken) {
                style = provider.getStyle((IToken) element);
            } else if (element instanceof Category) {
                style = ((Category) element).getStyle();
            }
            if (style != null) {
                if (value instanceof Boolean) {
                    Boolean bool = (Boolean) value;
                    if (element instanceof IToken && property == COLUMNS[0]) {
                        provider.removeStyle((IToken) element);
                        //regionViewer.refresh(); @regions
                    } else if (property == COLUMNS[4]) {
                        style.setBold(bool.booleanValue());
                    } else if (property == COLUMNS[5]) {
                        style.setItalic(bool.booleanValue());
                    } else if (property == COLUMNS[6]) {
                        style.setUnderline(bool.booleanValue());
                    }
                } else if (value instanceof RGB) {
                    RGB rgb = (RGB) value;
                    if (property == COLUMNS[3]) {
                        style.setForegroundColor(UnifiedColorManager.getInstance().getColor(rgb));
                    }
                }
            } else {
                //               if (element instanceof IToken && value instanceof Boolean && property == COLUMNS[1])
                //               {
                //                  Boolean bool = (Boolean) value;
                //                  if (bool.booleanValue())
                //                  {
                //                     IToken token = (IToken) element;
                //                     style = new ColorizationStyle();
                //                     style.setForegroundColor(UnifiedColorManager.getInstance().getColor(black));
                //                     style.setName(token.getCategory() + "_" + token.getType());
                //                     provider.addStyle((IToken) element, style);
                //                  }
                //               }
            }
            viewer.update(element, null);
        }

        public Object getValue(Object element, String property) {
            ColorizationStyle style = null;
            if (element instanceof IToken) {
                style = provider.getStyle((IToken) element);
            } else if (element instanceof Category) {
                style = ((Category) element).getStyle();
            }
            if (style != null) {
                if (property == COLUMNS[0]) {
                    return Boolean.valueOf(true);
                } else if (property == COLUMNS[3]) {
                    return style.getForegroundColor().getRGB();
                } else if (property == COLUMNS[4]) {
                    return Boolean.valueOf(style.isBold());
                } else if (property == COLUMNS[5]) {
                    return Boolean.valueOf(style.isItalic());
                } else if (property == COLUMNS[6]) {
                    return Boolean.valueOf(style.isUnderline());
                }
            } else if (property == COLUMNS[0]) {
                return Boolean.valueOf(false);
            }
            return null;
        }

        public boolean canModify(Object element, String property) {
            boolean canModify = false;
            ColorizationStyle style = null;
            if (element instanceof IToken) {
                style = provider.getStyle((IToken) element);
                if (property == COLUMNS[0]) {
                    canModify = true;
                }
            } else if (element instanceof Category) {
                style = ((Category) element).getStyle();
            }
            if (style != null) {
                canModify = true;
            }
            return canModify;
        }

    };
    //      final TreeColumn column0 = new TreeColumn(tree, SWT.LEFT);
    //      column0.setWidth(100);
    //      column0.setText(COLUMNS[0]);

    final TreeColumn column1 = new TreeColumn(tree, SWT.LEFT);
    column1.setWidth(ICON_COLUMN_WIDTH);
    column1.setText(COLUMNS[0]);

    final TreeColumn column2 = new TreeColumn(tree, SWT.LEFT);
    column2.setWidth(125);
    column2.setText(COLUMNS[1]);

    final TreeColumn column3 = new TreeColumn(tree, SWT.CENTER);
    column3.setWidth(ICON_COLUMN_WIDTH);
    column3.setText(COLUMNS[2]);
    column3.pack();

    final TreeColumn column4 = new TreeColumn(tree, SWT.CENTER);
    column4.setWidth(ICON_COLUMN_WIDTH);
    column4.setText(COLUMNS[3]);
    column4.pack();

    final TreeColumn column5 = new TreeColumn(tree, SWT.CENTER);
    column5.setWidth(ICON_COLUMN_WIDTH);
    column5.setText(COLUMNS[4]);
    column5.pack();

    final TreeColumn column6 = new TreeColumn(tree, SWT.CENTER);
    column6.setWidth(ICON_COLUMN_WIDTH);
    column6.setText(COLUMNS[5]);
    column6.pack();

    final TreeColumn column7 = new TreeColumn(tree, SWT.CENTER);
    column7.setWidth(ICON_COLUMN_WIDTH);
    column7.setText(COLUMNS[6]);
    column7.pack();

    viewer.setColumnProperties(COLUMNS);
    viewer.setCellEditors(editors);
    viewer.setCellModifier(modifier);
}

From source file:com.arm.cmsis.pack.tree.AdvisedEditingSupport.java

License:Apache License

@Override
protected CellEditor getCellEditor(final Object element) {

    //Log.writeCurrentMethod(element);

    final TreeViewer treeViewer = (TreeViewer) getViewer();

    switch (columnAdvisor.getCellControlType(element, columnIndex)) {
    case CHECK:/*from   w  ww.  ja  v a 2  s .  c o m*/
        return new CheckboxCellEditor(treeViewer.getTree());
    case COMBO:
        final ComboBoxCellEditor cellEditor = new ComboBoxCellEditor(treeViewer.getTree(),
                columnAdvisor.getStringArray(element, columnIndex), SWT.READ_ONLY) {

            @Override
            public LayoutData getLayoutData() {
                LayoutData ld = super.getLayoutData();
                ld.minimumWidth = 20;
                return ld;
            }
        };
        Control control = cellEditor.getControl();
        final CCombo combo = (CCombo) control;

        LayoutData ld = cellEditor.getLayoutData();
        ld.grabHorizontal = true;
        ld.horizontalAlignment = SWT.RIGHT;
        ld.verticalAlignment = SWT.CENTER;
        combo.setLayoutData(ld);

        combo.addSelectionListener(new SelectionListener() {
            public void widgetDefaultSelected(SelectionEvent e) {
            }

            public void widgetSelected(SelectionEvent e) {
                Integer newVal = new Integer(combo.getSelectionIndex());
                setValue(element, newVal);
            }
        });

        return cellEditor;
    default:
        break;
    }

    return null;
}

From source file:com.arm.cmsis.pack.ui.tree.AdvisedEditingSupport.java

License:Open Source License

@Override
protected CellEditor getCellEditor(final Object element) {
    Composite composite = (Composite) getViewer().getControl();

    switch (columnAdvisor.getCellControlType(element, columnIndex)) {
    case SPIN:/*  w ww . j a v a 2  s.  c  o m*/
        SpinnerCellEditor sce = new SpinnerCellEditor(composite);
        sce.getSpinner().setMinimum(0);
        sce.getSpinner().setMaximum(columnAdvisor.getMaxCount(element, columnIndex));
        return sce;
    case MENU:
        MenuCellEditor mce = new MenuCellEditor(composite);
        return mce;
    case CHECK:
        return new CheckboxCellEditor(composite);
    case COMBO:
        final ComboBoxCellEditor cellEditor = new ComboBoxCellEditor(composite,
                columnAdvisor.getStringArray(element, columnIndex), SWT.READ_ONLY) {
            @Override
            public LayoutData getLayoutData() {
                LayoutData ld = super.getLayoutData();
                ld.minimumWidth = 20;
                return ld;
            }
        };
        Control control = cellEditor.getControl();
        final CCombo combo = (CCombo) control;

        LayoutData ld = cellEditor.getLayoutData();
        ld.grabHorizontal = true;
        ld.horizontalAlignment = SWT.RIGHT;
        ld.verticalAlignment = SWT.CENTER;
        combo.setLayoutData(ld);

        combo.addSelectionListener(new SelectionListener() {
            public void widgetDefaultSelected(SelectionEvent e) {
            }

            public void widgetSelected(SelectionEvent e) {
                Integer newVal = new Integer(combo.getSelectionIndex());
                setValue(element, newVal);
            }
        });

        return cellEditor;
    default:
        break;
    }

    return null;
}

From source file:com.bdaum.zoom.ui.internal.views.BasicView.java

License:Open Source License

protected CellEditor determineCellEditor(QueryField qfield, Composite parent, int maxTextLength) {
    int type = qfield.getType();
    if (type == QueryField.T_BOOLEAN)
        return new CheckboxCellEditor(parent);
    if (type == QueryField.T_LOCATION)
        return new StructCellEditor(parent, qfield);
    if (type == QueryField.T_OBJECT)
        return new StructCellEditor(parent, qfield);
    if (type == QueryField.T_CONTACT)
        return new StructCellEditor(parent, qfield);
    if (qfield.getEnumLabels() != null)
        return new ViewComboCellEditor(parent, qfield);
    if (qfield == QueryField.IPTC_KEYWORDS)
        return new KeywordDialogCellEditor(parent);
    if (qfield == QueryField.IPTC_CATEGORY)
        return new CategoryDialogCellEditor(parent, SWT.SINGLE);
    if (qfield == QueryField.IPTC_SUPPLEMENTALCATEGORIES)
        return new SupplementalCategoryDialogCellEditor(parent);
    if (qfield == QueryField.SALES)
        return new IncrementalNumberCellEditor(parent, 0, 1);
    if (qfield == QueryField.PRICE)
        return new IncrementalNumberCellEditor(parent, Format.getCurrencyDigits(), 1);
    if (qfield == QueryField.EARNINGS)
        return new CurrencyExpressionCellEditor(parent);
    if (qfield.getCard() != 1)
        return qfield.getCard() == QueryField.CARD_MODIFIABLEBAG ? new MixedBagCellEditor(parent, qfield)
                : new ListCellEditor(parent, qfield);
    if (qfield.getType() == QueryField.T_DATE)
        return new DateTimeCellEditor(parent, qfield);
    if (qfield.getEnumeration() instanceof Integer)
        return new TopicTextCellEditor(parent, qfield);
    List<Asset> selectedAssets = getNavigationHistory().getSelectedAssets().getAssets();
    Asset asset = selectedAssets.size() == 1 ? selectedAssets.get(0) : null;
    if (qfield.getMaxlength() > maxTextLength && qfield.getType() == QueryField.T_STRING)
        return new LargeTextCellEditor(parent, qfield, asset);
    return new ViewTextCellEditor(parent, qfield, asset);
}