Example usage for org.eclipse.jface.viewers ViewerCell getItem

List of usage examples for org.eclipse.jface.viewers ViewerCell getItem

Introduction

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

Prototype

public Widget getItem() 

Source Link

Document

Return the item for the receiver.

Usage

From source file:org.kalypso.contribs.eclipse.jface.viewers.FocusCellOwnerDrawHighlighter.java

License:Open Source License

private void hookListener(final ColumnViewer viewer) {

    final Listener listener = new Listener() {
        @Override/*from w ww  . j a  va2  s .c om*/
        public void handleEvent(final Event event) {
            if ((event.detail & SWT.SELECTED) > 0) {
                final ViewerCell focusCell = getFocusCell();
                final Widget focusItem = focusCell == null ? null : focusCell.getItem();

                final Widget currentItem = event.item;
                if (focusItem != null && focusItem.equals(currentItem)
                        && focusCell.getColumnIndex() == event.index) {
                    markFocusedCell(event);
                }
            }
        }

    };
    viewer.getControl().addListener(SWT.EraseItem, listener);
}

From source file:org.polymap.p4.imports.labels.MessageCellLabelProvider.java

License:Open Source License

private void applyStyleViaCSS(ViewerCell cell, int severity) {
    String cssCode = "none";
    if (severity == IStatus.ERROR) {
        cssCode = "error";
    } else if (severity == IStatus.WARNING) {
        cssCode = "warning";
    }/*from w  w w.jav  a  2 s.c om*/
    ((TreeItem) cell.getItem()).setData(RWT.CUSTOM_VARIANT, cssCode);
}

From source file:org.polymap.rhei.batik.toolkit.md.TreeExpandStateDecorator.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    ((CellLabelProvider) delegate).update(cell);

    Object elm = cell.getElement();
    boolean expanded = viewer.getExpandedState(elm);

    TreeItem item = (TreeItem) cell.getItem();
    int level = 0;
    for (TreeItem i = item; i != null; i = i.getParentItem()) {
        level++;/*  w  w  w. j  a  v  a  2s  . c  o m*/
    }

    HSLColor bg = bgColor.map(color -> new HSLColor(color).adjustLuminance(34).adjustSaturation(-100))
            .orElse(new HSLColor(viewer.getTree().getBackground()));

    if (expanded) {
        level--;
        cell.setFont(UIUtils.bold(MdAppDesign.font(FontStyle.Subhead)));
    } else {
        level--;
        cell.setFont(MdAppDesign.font(FontStyle.Subhead));
    }

    float delta = saturationDelta.get() * level;
    HSLColor levelColor = bg.adjustSaturation(delta).adjustLuminance(luminanceDelta.get() * level);
    item.setBackground(levelColor.toSWT());
}

From source file:org.rssowl.ui.internal.editors.feed.NewsTableLabelProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    NewsColumn column = fColumnModel.getColumn(cell.getColumnIndex());

    /* Text *///from   w w  w.  j  ava2s .  c om
    cell.setText(getColumnText(cell.getElement(), column, cell.getColumnIndex()));

    /* Image */
    cell.setImage(getColumnImage(cell.getElement(), column, cell.getColumnIndex()));

    /* Font */
    cell.setFont(getFont(cell.getElement(), cell.getColumnIndex()));

    /* Foreground */
    Color foreground = getForeground(cell.getElement(), cell.getColumnIndex());

    /* This is required to invalidate + redraw the entire TableItem! */
    if (!OwlUI.isHighContrast()) {
        Item item = (Item) cell.getItem();
        if (item instanceof TreeItem)
            ((TreeItem) cell.getItem()).setForeground(foreground);
        else if (item instanceof TableItem)
            ((TableItem) cell.getItem()).setForeground(foreground);
    }

    /* Background */
    if (!OwlUI.isHighContrast())
        cell.setBackground(getBackground(cell.getElement(), cell.getColumnIndex()));
}

From source file:org.webcat.oda.designer.impl.ColumnMappingPage.java

License:Open Source License

private Control createPageControl(Composite parent) {
    Composite composite = new Composite(parent, SWT.NONE);
    composite.setLayout(new GridLayout(2, false));

    GridData gd;//from   w  w w  .j  a v  a  2 s.co  m

    // Entity description label
    Label descLabel = new Label(composite, SWT.WRAP);
    descLabel.setText(Messages.DATASET_ENTITY_LABEL);
    gd = new GridData(SWT.FILL, SWT.BEGINNING, true, false);
    gd.horizontalSpan = 2;
    gd.widthHint = 350;
    descLabel.setLayoutData(gd);

    // Entity type field label
    Label fieldLabel = new Label(composite, SWT.NONE);
    fieldLabel.setText(Messages.DATASET_ENTITY_COMBO_LABEL);

    // Entity type field drop-down
    entityTypeField = new Combo(composite, SWT.BORDER);
    ContentAssistManager cam = DesignerActivator.getDefault().getContentAssistManager();
    for (String entity : cam.getEntities()) {
        entityTypeField.add(entity);
    }

    entityTypeField.setText(entityTypeName);

    gd = new GridData(SWT.FILL, SWT.BEGINNING, true, false);
    entityTypeField.setLayoutData(gd);

    entityTypeField.addModifyListener(new ModifyListener() {
        public void modifyText(ModifyEvent e) {
            if (ognlCellEditor != null)
                ognlCellEditor.setRootClassName(entityTypeField.getText());

            entityTypeName = entityTypeField.getText();
            updateRelationInformation();
            enablePageControls();
        }
    });

    // Horizontal separator
    Label lineLabel = new Label(composite, SWT.SEPARATOR | SWT.HORIZONTAL);
    gd = new GridData(SWT.FILL, SWT.CENTER, true, false);
    gd.horizontalSpan = 2;
    gd.verticalIndent = 12;
    lineLabel.setLayoutData(gd);

    // Column mapping table description label
    Label tableLabel = new Label(composite, SWT.WRAP);
    tableLabel.setText(Messages.DATASET_COLUMN_MAPPING_LABEL);
    gd = new GridData(SWT.FILL, SWT.BEGINNING, true, false);
    gd.horizontalSpan = 2;
    gd.widthHint = 350;
    tableLabel.setLayoutData(gd);

    // Column mapping table
    columnMappingTable = new ColumnMappingTableViewer(composite);
    columnMappingTable.getViewer().getTable().setHeaderVisible(true);
    columnMappingTable.getViewer().getTable().setLinesVisible(true);

    gd = new GridData(SWT.FILL, SWT.FILL, true, true);
    gd.horizontalSpan = 2;
    gd.grabExcessVerticalSpace = true;
    gd.heightHint = 150;
    columnMappingTable.getControl().setLayoutData(gd);

    TableViewerColumn column;

    final Table table = columnMappingTable.getViewer().getTable();
    columnMappingTable.getViewer().setUseHashlookup(true);

    column = new TableViewerColumn(columnMappingTable.getViewer(), SWT.LEFT);
    column.getColumn().setText("#");
    column.getColumn().setWidth(32);
    column.setLabelProvider(new ColumnLabelProvider() {
        public void update(ViewerCell cell) {
            if (cell.getElement() != newColumn) {
                TableItem item = (TableItem) cell.getItem();
                cell.setText(Integer.toString(table.indexOf(item) + 1));
            }
        }
    });

    column = new TableViewerColumn(columnMappingTable.getViewer(), SWT.LEFT);
    column.getColumn().setText(COLUMN_NAME);
    column.getColumn().setWidth(194);
    column.setLabelProvider(new ColumnLabelProvider() {
        public void update(ViewerCell cell) {
            if (cell.getElement() != newColumn) {
                ColumnMappingElement cme = (ColumnMappingElement) cell.getElement();
                cell.setText(cme.getColumnName());
            } else {
                cell.setText(Messages.DATASET_NEW_COLUMN_PROMPT);
            }
        }
    });

    column = new TableViewerColumn(columnMappingTable.getViewer(), SWT.LEFT);
    column.getColumn().setText(EXPRESSION_NAME);
    column.getColumn().setWidth(194);
    column.setLabelProvider(new ColumnLabelProvider() {
        public void update(ViewerCell cell) {
            ColumnMappingElement cme = (ColumnMappingElement) cell.getElement();
            cell.setText(cme.getExpression());
        }
    });

    column = new TableViewerColumn(columnMappingTable.getViewer(), SWT.LEFT);
    column.getColumn().setText(TYPE_NAME);
    column.getColumn().setWidth(100);
    column.setLabelProvider(new ColumnLabelProvider() {
        public void update(ViewerCell cell) {
            ColumnMappingElement cme = (ColumnMappingElement) cell.getElement();
            cell.setText(cme.getType());
        }
    });

    columnMappingTable.getViewer().setContentProvider(new ColumnMappingTableContentProvider());

    columnMappingTable.getViewer().setInput(columnMappingList);
    refreshColumnMappingViewer();

    // Horizontal separator
    lineLabel = new Label(composite, SWT.SEPARATOR | SWT.HORIZONTAL);
    gd = new GridData(SWT.FILL, SWT.CENTER, true, false);
    gd.horizontalSpan = 2;
    gd.verticalIndent = 12;
    lineLabel.setLayoutData(gd);

    // Preview query panel
    Composite panel = new Composite(composite, SWT.NONE);
    GridLayout layout = new GridLayout(2, false);
    panel.setLayout(layout);
    gd = new GridData(SWT.FILL, SWT.TOP, true, false);
    gd.horizontalSpan = 2;
    gd.widthHint = 350;
    panel.setLayoutData(gd);

    Label previewLabel = new Label(panel, SWT.WRAP);
    previewLabel.setText(Messages.DATASET_DEFINE_QUERY_LABEL);
    gd = new GridData(SWT.FILL, SWT.FILL, true, false);
    previewLabel.setLayoutData(gd);

    Button previewButton = new Button(panel, SWT.PUSH);
    previewButton.setText(Messages.DATASET_DEFINE_QUERY_BUTTON);
    gd = new GridData(SWT.FILL, SWT.CENTER, false, false);
    previewButton.setLayoutData(gd);

    previewButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            openPreviewQueryBuilder();
        }
    });

    setupListeners();
    setupEditors();

    return composite;
}

From source file:swt.snippets.AlternateColumnColorExample.java

License:Open Source License

public AlternateColumnColorExample(Shell shell) {
    final TableViewer v = new TableViewer(shell, SWT.BORDER | SWT.FULL_SELECTION | SWT.VIRTUAL);
    v.setContentProvider(new MyContentProvider());

    final OptimizedIndexSearcher searcher = new OptimizedIndexSearcher();

    TableViewerColumn column = new TableViewerColumn(v, SWT.NONE);
    column.getColumn().setWidth(200);/*w w  w.j a  va  2s . c o  m*/
    column.getColumn().setText("Column 1");
    column.setLabelProvider(new ColumnLabelProvider() {
        boolean even = true;

        public Color getBackground(Object element) {
            if (even) {
                return null;
            } else {
                return v.getTable().getDisplay().getSystemColor(SWT.COLOR_GRAY);
            }
        }

        public void update(ViewerCell cell) {
            even = searcher.isEven((TableItem) cell.getItem());
            super.update(cell);
        }
    });

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

        public Color getBackground(Object element) {
            if (even) {
                return null;
            } else {
                return v.getTable().getDisplay().getSystemColor(SWT.COLOR_GRAY);
            }
        }

        public void update(ViewerCell cell) {
            even = searcher.isEven((TableItem) cell.getItem());
            super.update(cell);
        }

    });

    MyModel[] model = createModel();
    v.setInput(model);
    v.getTable().setLinesVisible(true);
    v.getTable().setHeaderVisible(true);

    final ViewerFilter filter = new ViewerFilter() {

        public boolean select(Viewer viewer, Object parentElement, Object element) {
            return ((MyModel) element).counter % 2 == 0;
        }

    };

    Button b = new Button(shell, SWT.PUSH);
    b.addSelectionListener(new SelectionAdapter() {
        boolean b = true;

        public void widgetSelected(SelectionEvent e) {
            if (b) {
                v.setFilters(new ViewerFilter[] { filter });
                b = false;
            } else {
                v.setFilters(new ViewerFilter[0]);
                b = true;
            }
        }

    });
}

From source file:uk.ac.gda.common.rcp.jface.viewers.ObservableMapCellControlProvider.java

License:Open Source License

@Override
public void update(ViewerCell cell) {
    TableItem item = (TableItem) cell.getItem();
    Control control = null;/*from w w  w .  ja v  a 2  s .c  om*/

    Object e = cell.getElement();
    Object itemData = item.getData(uniqueKey);
    if (itemData != null && itemData instanceof TableEditor) {
        control = ((TableEditor) itemData).getEditor();
    }
    if (control == null) {
        control = controlFactory.createControl((Composite) cell.getViewerRow().getControl());
        TableEditor editor = new TableEditor(item.getParent());
        editor.grabHorizontal = true;
        editor.grabVertical = true;
        editor.setEditor(control, item, cell.getColumnIndex());
        editor.layout();
        //we need to dispose the TableEditor and ProgressBar when the TableItem is disposed otherwise there will be a build up
        //of TableEditor and ProgressBars being constructed as the list changes which will only
        //be disposed when the table is disposed. 
        item.setData(uniqueKey, editor);
        item.addDisposeListener(new DisposeListener() {

            @Override
            public void widgetDisposed(DisposeEvent e) {
                Object data = e.widget.getData(uniqueKey);
                if (data != null) {
                    TableEditor tableEditor = (TableEditor) data;
                    tableEditor.getEditor().dispose();
                    tableEditor.dispose();
                }
            }
        });
    }
    Object value = attributeMaps[0].get(e);
    controlFactory.updateControl(control, value);
}

From source file:uk.ac.stfc.isis.ibex.ui.configserver.editing.ButtonCellLabelProvider.java

License:Open Source License

private void setEditor(ViewerCell cell, Button button) {
    TableItem item = (TableItem) cell.getItem();
    TableEditor editor = new TableEditor(item.getParent());
    editor.horizontalAlignment = SWT.FILL;
    editor.verticalAlignment = SWT.FILL;
    editor.grabHorizontal = true;/*from   www  .j  av a2  s.c  o m*/
    editor.grabVertical = true;
    editor.setEditor(button, item, cell.getColumnIndex());
    editor.layout();

    cellEditors.put(cell, editor);
}

From source file:uk.ac.stfc.isis.ibex.ui.widgets.ControlCellLabelProvider.java

License:Open Source License

protected void setEditor(ViewerCell cell, Control control) {
    TableItem item = (TableItem) cell.getItem();
    TableEditor editor = new TableEditor(item.getParent());
    editor.horizontalAlignment = SWT.FILL;
    editor.verticalAlignment = SWT.FILL;
    editor.grabHorizontal = true;//from w  w  w. ja v  a  2 s  . c  o m
    editor.grabVertical = true;
    editor.setEditor(control, item, cell.getColumnIndex());
    editor.layout();

    cellEditors.put(cell, editor);

}