Example usage for org.eclipse.jface.viewers CellEditor dispose

List of usage examples for org.eclipse.jface.viewers CellEditor dispose

Introduction

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

Prototype

public void dispose() 

Source Link

Document

Disposes of this cell editor and frees any associated SWT resources.

Usage

From source file:com.clustercontrol.viewer.PropertySheetModifier.java

License:Open Source License

@Override
public boolean canModify(Object element, String property) {
    if (PropertySheet.CLMN_VALUE.equals(property)) {
        if (element instanceof Property) {

            Property nodeProperty = (Property) element;

            if (nodeProperty.getModify() == PropertyDefineConstant.MODIFY_OK) {
                // ?????????
                CellEditor cellEditor = nodeProperty.getCellEditor();

                if (cellEditor.getControl() == null || cellEditor.getControl().isDisposed()) {
                    cellEditor.dispose();
                    cellEditor.create(m_viewer.getTree());
                    nodeProperty.initEditer();
                }/* w  w  w  .ja  v a 2 s.c  om*/

                CellEditor[] editors = new CellEditor[] { null, cellEditor };
                m_viewer.setCellEditors(editors);

                return true;
            } else {
                if (nodeProperty.getEditor().compareTo(PropertyDefineConstant.EDITOR_TEXTAREA) == 0) {
                    // ?????????
                    CellEditor cellEditor = nodeProperty.getCellEditor();

                    if (cellEditor.getControl() == null || cellEditor.getControl().isDisposed()) {
                        cellEditor.dispose();
                        cellEditor.create(m_viewer.getTree());
                        nodeProperty.initEditer();
                    }

                    CellEditor[] editors = new CellEditor[] { null, cellEditor };
                    m_viewer.setCellEditors(editors);

                    return true;
                }
            }
        }
    }
    return false;
}

From source file:com.mentor.nucleus.bp.core.ui.cells.providers.AcceptEventActionCellProvider.java

License:Open Source License

@Override
public boolean supportsEdit(NonRootModelElement element, ObjectElement data, Composite parent) {
    CellEditor editor = getCellEditor(element, parent, data);
    if (editor != null) {
        editor.dispose();
        return true;
    }//from www  .  ja va 2  s  . c o m
    return false;
}

From source file:com.nokia.sdt.component.symbian.actions.EditImageActionFilterDelegate.java

License:Open Source License

private IPropertyDescriptor getImagePropertyDescriptor(EObject instance, String propertyPath) {
    IPropertyDescriptor descriptor = null;
    if (propertyPath == null)
        return null;

    descriptor = ModelUtils.getPropertyPathDescriptor(instance, propertyPath, true);

    if (descriptor != null) {
        // ensure the descriptor has a direct editing interface
        CellEditor editor = descriptor.createPropertyEditor(shell);
        if (!(editor instanceof IDialogCellEditorActivator))
            descriptor = null;/*  w w w  .j  a v  a2 s.c om*/
        editor.dispose();
    }

    return descriptor;
}

From source file:com.nokia.sdt.symbian.ui.images.DirectEditingUtilities.java

License:Open Source License

/**
 * Create a cell editor activator to edit the given image property
 * @param shell//w  w  w. j  av  a2s.  co  m
 * @param instance
 * @param propertyPath
 * @return cell editor activator or null
 */
public static IDialogCellEditorActivator getCellEditorActivator(Shell shell, EObject instance,
        String propertyPath) {

    // We only get this far if direct image editing is available and a property is available
    //   IDirectImageEdit directImageEdit = 
    //      (IDirectImageEdit) EcoreUtil.getRegisteredAdapter(instance, IDirectImageEdit.class);
    //   Check.checkState(directImageEdit != null);

    IPropertyDescriptor desc = ModelUtils.getPropertyPathDescriptor(instance, propertyPath, true);
    Check.checkState(desc != null);

    // ensure this has a direct editing interface
    CellEditor editor = desc.createPropertyEditor(shell);
    if (editor instanceof IDialogCellEditorActivator) {
        return (IDialogCellEditorActivator) editor;
    } else {
        editor.dispose();
        return null;
    }
}

From source file:org.csstudio.sds.components.ui.internal.editparts.ActionButtonEditPart.java

License:Open Source License

private CellEditor createCellEditor2() {
    final CellEditor result = new TextCellEditor((Composite) getViewer().getControl());

    // init cell editor...
    String currentValue = "N/A"; //$NON-NLS-1$
    currentValue = getWidgetModel().getStringProperty(ActionButtonModel.PROP_LABEL);

    result.setValue(currentValue);//from ww  w  .  j av  a 2  s  .c o m
    final Text text = (Text) result.getControl();
    // input text
    text.addKeyListener(new KeyAdapter() {
        @Override
        public void keyPressed(final KeyEvent e) {
            if (e.keyCode == SWT.CR || e.keyCode == SWT.KEYPAD_CR) {
                getWidgetModel().setPropertyValue(ActionButtonModel.PROP_LABEL, text.getText());
                result.deactivate();
                result.dispose();
            } else if (e.keyCode == SWT.ESC) {
                result.deactivate();
                result.dispose();
            }

        }

    });

    text.setForeground(getModelColor(AbstractWidgetModel.PROP_COLOR_FOREGROUND));
    text.setFont(getModelFont(ActionButtonModel.PROP_FONT));

    // calculate background color
    final RGB backgroundRgb = getModelColor(AbstractWidgetModel.PROP_COLOR_BACKGROUND).getRGB();

    final int red = Math.min(backgroundRgb.red + INPUT_FIELD_BRIGHTNESS, 255);
    final int green = Math.min(backgroundRgb.green + INPUT_FIELD_BRIGHTNESS, 255);
    final int blue = Math.min(backgroundRgb.blue + INPUT_FIELD_BRIGHTNESS, 255);

    final Color backgroundColor = CustomMediaFactory.getInstance().getColor(new RGB(red, green, blue));

    text.setBackground(backgroundColor);
    text.selectAll();

    return result;
}

From source file:org.eclipse.bpmn2.modeler.core.merrimac.clad.TableColumn.java

License:Open Source License

protected void setCellEditor(CellEditor ce) {
    CellEditor[] cellEditors = tableViewer.getCellEditors();
    int index = getColumnIndex();
    if (index >= 0 && index < cellEditors.length) {
        CellEditor oldCe = cellEditors[index];
        if (oldCe != null && oldCe != ce)
            oldCe.dispose();
        cellEditors[index] = ce;//from w ww  . ja  v  a 2  s  . c  o  m
    }
}

From source file:org.eclipse.incquery.tooling.ui.queryexplorer.content.detail.DetailsViewerUtil.java

License:Open Source License

public void clearTableViewerColumns(TableViewer viewer) {
    if (viewer.getContentProvider() != null) {
        viewer.setInput(null);/*from w  ww. ja  va 2s. co  m*/
    }
    while (viewer.getTable().getColumnCount() > 0) {
        // calling dispose will decrement the column count of the table
        viewer.getTable().getColumns()[0].dispose();
    }

    if (viewer.getCellEditors() != null) {
        for (CellEditor cellEditor : viewer.getCellEditors()) {
            cellEditor.dispose();
        }
    }

    viewer.refresh();
}

From source file:org.eclipse.scout.rt.ui.rap.basic.table.celleditor.RwtScoutTableCellEditor.java

License:Open Source License

public void initializeUi() {
    TableViewer viewer = m_uiTableComposite.getUiTableViewer();
    String[] columnPropertyNames = new String[viewer.getTable().getColumnCount()];
    CellEditor[] oldEditors = viewer.getCellEditors();
    CellEditor[] newEditors = new CellEditor[columnPropertyNames.length];
    boolean hasEditors = false;
    for (int i = 0; i < columnPropertyNames.length; i++) {
        TableColumn rwtCol = viewer.getTable().getColumn(i);
        IColumn<?> scoutCol = (IColumn<?>) rwtCol.getData(IRwtScoutTableForPatch.KEY_SCOUT_COLUMN);
        if (scoutCol != null) {
            columnPropertyNames[i] = "" + scoutCol.getColumnIndex();
            if (scoutCol.isEditable()) {
                hasEditors = true;/*from   w  ww .  j av a  2  s.c om*/
                newEditors[i] = new P_RwtCellEditor(viewer.getTable());
            }
        } else {
            columnPropertyNames[i] = "";
        }
    }
    viewer.setCellModifier(new P_RwtCellModifier());
    viewer.setColumnProperties(columnPropertyNames);
    viewer.setCellEditors(newEditors);
    if (oldEditors != null && oldEditors.length > 0) {
        for (CellEditor editor : oldEditors) {
            if (editor != null) {
                editor.dispose();
            }
        }
    }
    //increase row height when editors are present
    if (hasEditors) {
        //TODO rap viewer.getTable().addListener(SWT.MeasureItem, m_rowHeightListener);
    } else {
        //TODO rap viewer.getTable().removeListener(SWT.MeasureItem, m_rowHeightListener);
    }
}

From source file:org.eclipse.scout.rt.ui.swt.basic.table.celleditor.SwtScoutTableCellEditor.java

License:Open Source License

public void initialize() {
    TableViewer viewer = m_tableComposite.getSwtTableViewer();
    String[] columnPropertyNames = new String[viewer.getTable().getColumnCount()];
    CellEditor[] oldEditors = viewer.getCellEditors();
    CellEditor[] newEditors = new CellEditor[columnPropertyNames.length];
    boolean hasEditors = false;
    for (int i = 0; i < columnPropertyNames.length; i++) {
        TableColumn swtCol = viewer.getTable().getColumn(i);
        IColumn<?> scoutCol = (IColumn<?>) swtCol.getData(SwtScoutTable.KEY_SCOUT_COLUMN);
        if (scoutCol != null) {
            columnPropertyNames[i] = "" + scoutCol.getColumnIndex();
            if (scoutCol.isEditable()) {
                hasEditors = true;//  w  w  w  . ja v a 2 s  .  c om
                newEditors[i] = new P_SwtCellEditor(viewer.getTable());
            }
        } else {
            columnPropertyNames[i] = "";
        }
    }
    viewer.setCellModifier(new P_SwtCellModifier());
    viewer.setColumnProperties(columnPropertyNames);
    viewer.setCellEditors(newEditors);
    if (oldEditors != null && oldEditors.length > 0) {
        for (CellEditor editor : oldEditors) {
            if (editor != null) {
                editor.dispose();
            }
        }
    }
    //increase row height when editors are present
    if (hasEditors) {
        viewer.getTable().addListener(SWT.MeasureItem, m_rowHeightListener);
    } else {
        viewer.getTable().removeListener(SWT.MeasureItem, m_rowHeightListener);
    }
}

From source file:org.kalypso.ogc.gml.table.LayerTableViewer.java

License:Open Source License

/**
 * @see org.eclipse.jface.viewers.TableViewer#getCellEditors()
 *//*from   w w w  .j  av a 2s  . co m*/
private void refreshCellEditors() {
    // dispose old modifiers
    final CellEditor[] oldEditors = getCellEditors();
    if (oldEditors != null) {
        for (final CellEditor element : oldEditors) {
            if (element != null)
                element.dispose();
        }
    }

    final Table table = getTable();
    if (table.isDisposed())
        return;

    final TableColumn[] columns = table.getColumns();
    final CellEditor[] editors = new CellEditor[columns.length];
    setCellEditors(editors);

    final IFeaturesProvider featureProvider = getInput();
    if (featureProvider == null)
        return;

    final IFeatureType featureType = featureProvider.getFeatureType();
    if (featureType == null)
        return;

    // set new modifiers, new celleditors and new cellvalidators
    for (int i = 0; i < editors.length; i++) {
        final IColumnDescriptor column = getDescriptor(columns[i]);
        final IFeatureModifier modifier = createModifier(column, featureType);
        column.setModifier(modifier);

        if (modifier != null) {
            editors[i] = modifier.createCellEditor(table);
            if (editors[i] != null)
                editors[i].setValidator(modifier);
        }
    }
    setCellEditors(editors);
}