Skip to content

Package: DefaultTableViewerColumnBuilder

DefaultTableViewerColumnBuilder

nameinstructionbranchcomplexitylinemethod
DefaultTableViewerColumnBuilder(ColumnConfiguration)
M: 0 C: 4
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 2
100%
M: 0 C: 1
100%
configureDatabinding(Widget)
M: 0 C: 11
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 3
100%
M: 0 C: 1
100%
configureEditingSupport(TableViewerColumn, TableViewer)
M: 0 C: 14
100%
M: 0 C: 2
100%
M: 0 C: 2
100%
M: 0 C: 4
100%
M: 0 C: 1
100%
configureViewerColumn(TableViewerColumn)
M: 0 C: 17
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 5
100%
M: 0 C: 1
100%
createViewerColumn(TableViewer)
M: 0 C: 8
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
getTableColumn(TableViewerColumn)
M: 0 C: 3
100%
M: 0 C: 0
100%
M: 0 C: 1
100%
M: 0 C: 1
100%
M: 0 C: 1
100%

Coverage

1: /*******************************************************************************
2: * Copyright (c) 2011-2016 EclipseSource Muenchen GmbH and others.
3: *
4: * All rights reserved. This program and the accompanying materials
5: * are made available under the terms of the Eclipse Public License 2.0
6: * which accompanies this distribution, and is available at
7: * https://www.eclipse.org/legal/epl-2.0/
8: *
9: * SPDX-License-Identifier: EPL-2.0
10: *
11: * Contributors:
12: * jonas - initial API and implementation
13: ******************************************************************************/
14: package org.eclipse.emfforms.spi.swt.table;
15:
16: import org.eclipse.emfforms.common.Optional;
17: import org.eclipse.jface.databinding.swt.typed.WidgetProperties;
18: import org.eclipse.jface.viewers.EditingSupport;
19: import org.eclipse.jface.viewers.TableViewer;
20: import org.eclipse.jface.viewers.TableViewerColumn;
21: import org.eclipse.swt.widgets.Item;
22: import org.eclipse.swt.widgets.TableColumn;
23: import org.eclipse.swt.widgets.Widget;
24:
25: /**
26: * The default table viewer configuration helper class.
27: *
28: * @author Mat Hansen <mhansen@eclipsesource.com>
29: *
30: */
31: public class DefaultTableViewerColumnBuilder
32:         extends AbstractTableViewerColumnBuilder<TableViewer, TableViewerColumn> {
33:
34:         /**
35:          * The constructor.
36:          *
37:          * @param config the {@link ColumnConfiguration}
38:          */
39:         public DefaultTableViewerColumnBuilder(ColumnConfiguration config) {
40:                 super(config);
41:         }
42:
43:         @Override
44:         public TableViewerColumn createViewerColumn(TableViewer tableViewer) {
45:                 return new TableViewerColumn(tableViewer, getConfig().getStyleBits());
46:         }
47:
48:         @Override
49:         protected Item getTableColumn(TableViewerColumn viewerColumn) {
50:                 return viewerColumn.getColumn();
51:         }
52:
53:         @Override
54:         protected void configureDatabinding(Widget column) {
55:                 super.configureDatabinding(column);
56:                 bindValue(column, WidgetProperties.tooltipText(), getConfig().getColumnTooltip());
57:         }
58:
59:         @Override
60:         protected void configureViewerColumn(TableViewerColumn viewerColumn) {
61:                 final TableColumn column = viewerColumn.getColumn();
62:
63:                 column.setResizable(getConfig().isResizeable());
64:                 column.setMoveable(getConfig().isMoveable());
65:                 configureImage(column);
66:                 // column.setWidth(width);
67:         }
68:
69:         @Override
70:         protected void configureEditingSupport(TableViewerColumn viewerColumn, TableViewer tableViewer) {
71:                 final Optional<EditingSupport> editingSupport = getConfig().createEditingSupport(tableViewer);
72:•                if (editingSupport.isPresent()) {
73:                         viewerColumn.setEditingSupport(editingSupport.get());
74:                 }
75:         }
76:
77: }