Example usage for org.eclipse.jface.viewers ViewerRow getElement

List of usage examples for org.eclipse.jface.viewers ViewerRow getElement

Introduction

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

Prototype

public abstract Object getElement();

Source Link

Usage

From source file:com.rcpcompany.uibindings.extests.viewerBindings.ViewerSingleSelectionTest.java

License:Open Source License

/**
 * @param c the expected selected country
 * @param runnable a {@link Runnable} that will perform the selection
 *//*from  w ww . j  a  v  a2 s  .c om*/
protected void checkSelection(Country c, Runnable runnable) {
    yield();
    if (runnable != null) {
        final boolean[] selectionChangedSeen = new boolean[] { false };
        final ISelectionChangedListener listener = new ISelectionChangedListener() {
            @Override
            public void selectionChanged(SelectionChangedEvent event) {
                // LogUtils.debug(this, "");
                selectionChangedSeen[0] = true;
            }
        };
        myTableViewer.addSelectionChangedListener(listener);
        assertNoLog(runnable);
        yield();
        myTableViewer.removeSelectionChangedListener(listener);
        assertTrue("no selection change seen", selectionChangedSeen[0]);
    }
    final int i = myShop.getCountries().indexOf(c);
    assertEquals(i, myTable.getSelectionIndex());
    assertArrayEquals(new Object[] { c }, ((IStructuredSelection) myTableViewer.getSelection()).toArray());

    assertEquals(c.getName(), myNameText.getText());

    final ColumnViewerEditor columnViewerEditor = myTableViewer.getColumnViewerEditor();
    assertNotNull(columnViewerEditor);
    final ViewerCell focusCell = columnViewerEditor.getFocusCell();
    assertNotNull(focusCell);
    final ViewerRow viewerRow = focusCell.getViewerRow();
    assertNotNull(viewerRow);
    assertEquals(c, viewerRow.getElement());
}

From source file:net.tourbook.map3.ui.Map3LayerUI.java

License:Open Source License

private void onSelectTreeItem() {

    // ignore mouse when cell editor is active
    if (_opacityEditingSupport.isEditorActive()) {
        return;//from w  ww  .  j a v  a  2 s .  c  o  m
    }

    /*
     * the following actions will only be done, when the sensitive area of the row is hovered
     * with the mouse
     */
    final ViewerRow hoveredRow = _propToolTip.getHoveredRow();

    if (hoveredRow == null) {
        return;
    }

    final Object hoveredItem = hoveredRow.getElement();

    if (hoveredItem instanceof TVIMap3Item) {

        final TVIMap3Item mapItem = (TVIMap3Item) hoveredItem;

        if (mapItem.hasChildren()) {

            // expand collapse item

            if (_layerViewer.getExpandedState(hoveredItem)) {

                _layerViewer.collapseToLevel(hoveredItem, 1);

            } else {

                _layerViewer.expandToLevel(hoveredItem, 1);

                // expand event is not fired, set state manually
                onExpandTree(mapItem);
            }

        } else if (mapItem instanceof TVIMap3Layer) {

            // toggle layer visibility

            toggleLayerVisibility((TVIMap3Layer) mapItem, true, true);
        }
    }

}

From source file:net.tourbook.ui.views.tourMarker.TourMarkerView.java

License:Open Source License

/**
 * Column: Distance delta km/mi//  w ww .j a  v  a  2s. co  m
 */
private void defineColumn_Motion_DistanceDelta() {

    final ColumnDefinition colDef = TableColumnFactory.MOTION_DISTANCE_DELTA.createColumn(_columnManager, _pc);

    colDef.setLabelProvider(new CellLabelProvider() {
        @Override
        public void update(final ViewerCell cell) {

            final TourMarker tourMarker = (TourMarker) cell.getElement();

            final float markerDistance = tourMarker.getDistance();

            if (markerDistance == -1) {

                cell.setText(UI.EMPTY_STRING);

            } else {

                float prevDistance = 0;
                final ViewerRow lastRow = cell.getViewerRow().getNeighbor(ViewerRow.ABOVE, false);

                if (null != lastRow) {
                    final TourMarker element = (TourMarker) lastRow.getElement();
                    if (element instanceof TourMarker) {
                        prevDistance = element.getDistance();
                    }
                    prevDistance = prevDistance < 0 ? 0 : prevDistance;
                }

                cell.setText(_nf3.format(
                        (markerDistance - prevDistance) / 1000 / net.tourbook.ui.UI.UNIT_VALUE_DISTANCE));
            }
        }
    });
}

From source file:net.tourbook.ui.views.tourMarker.TourMarkerView.java

License:Open Source License

/**
 * Column: Time/*  w  ww . ja  v a 2  s  . c  om*/
 */
private void defineColumn_Time_TimeDelta() {

    final ColumnDefinition colDef = TableColumnFactory.MARKER_TIME_DELTA.createColumn(_columnManager, _pc);

    colDef.setLabelProvider(new CellLabelProvider() {
        @Override
        public void update(final ViewerCell cell) {

            final ViewerRow lastRow = cell.getViewerRow().getNeighbor(ViewerRow.ABOVE, false);
            int lastTime = 0;
            if (null != lastRow) {
                final Object element = lastRow.getElement();
                if (element instanceof TourMarker) {
                    lastTime = ((TourMarker) element).getTime();
                }
            }

            cell.setText(net.tourbook.common.UI
                    .format_hh_mm_ss(((TourMarker) cell.getElement()).getTime() - lastTime));

            final String text = ((TourMarker) cell.getElement()).getLabel();

            /*
             * Show text in red/bold when the text ends with a !, this hidden feature was
             * introduced by helmling
             */
            if (text.endsWith(UI.SYMBOL_EXCLAMATION_POINT)) {

                final Display display = Display.getCurrent();

                if (null != display) {
                    cell.setForeground(display.getSystemColor(SWT.COLOR_RED));
                }

                cell.setFont(_boldFont);
            }
        }
    });
}