List of usage examples for org.eclipse.jface.viewers CheckboxTableViewer newCheckList
public static CheckboxTableViewer newCheckList(Composite parent, int style)
From source file:org.eclipse.ptp.rm.mpi.openmpi.ui.launch.AdvancedOpenMpiRMLaunchConfigurationDynamicTab.java
License:Open Source License
/** * @since 2.0/* www .j av a 2 s.co m*/ */ public void createControl(Composite parent, IResourceManager rm, IPQueue queue) throws CoreException { control = new Composite(parent, SWT.NONE); control.setLayout(new GridLayout()); final Group argumentsGroup = new Group(control, SWT.NONE); argumentsGroup.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); GridLayout layout = new GridLayout(); layout.numColumns = 2; argumentsGroup.setLayout(layout); argumentsGroup.setText(Messages.AdvancedOpenMpiRMLaunchConfigurationDynamicTab_Label_LaunchArguments); useArgsDefaultsButton = new Button(argumentsGroup, SWT.CHECK); useArgsDefaultsButton .setText(Messages.AdvancedOpenMpiRMLaunchConfigurationDynamicTab_Label_DefaultArguments); // useArgsDefaultsButton.setSelection(true); GridData gd = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1); useArgsDefaultsButton.setLayoutData(gd); useArgsDefaultsButton.addSelectionListener(getListener()); Label label = new Label(argumentsGroup, SWT.NONE); label.setLayoutData(new GridData()); label.setText(Messages.AdvancedOpenMpiRMLaunchConfigurationDynamicTab_Label_Arguments); argsText = new Text(argumentsGroup, SWT.BORDER); argsText.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); // argsText.setEnabled(false); final Group ompiParameteresGroup = new Group(control, SWT.NONE); ompiParameteresGroup.setText(Messages.AdvancedOpenMpiRMLaunchConfigurationDynamicTab_Label_MCAParameters); layout = new GridLayout(); layout.numColumns = 2; ompiParameteresGroup.setLayout(layout); ompiParameteresGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); useParamsDefaultsButton = new Button(ompiParameteresGroup, SWT.CHECK); useParamsDefaultsButton.addSelectionListener(getListener()); useParamsDefaultsButton .setText(Messages.AdvancedOpenMpiRMLaunchConfigurationDynamicTab_Label_DefaultMCAParameters); gd = new GridData(SWT.FILL, SWT.CENTER, true, false, 2, 1); useParamsDefaultsButton.setLayoutData(gd); // useParamsDefaultsButton.setSelection(true); paramsViewer = CheckboxTableViewer.newCheckList(ompiParameteresGroup, SWT.CHECK | SWT.FULL_SELECTION); paramsViewer.setContentProvider(new IStructuredContentProvider() { public void dispose() { // Empty implementation. } public Object[] getElements(Object inputElement) { if (inputElement != null && inputElement instanceof OmpiInfo) { OmpiInfo info = (OmpiInfo) inputElement; return info.getParameters(); } return null; } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { // Empty implementation. } }); paramsViewer.setSorter(new ViewerSorter() { @Override public int compare(Viewer viewer, Object j1, Object j2) { return ((Parameter) j1).getName().compareTo(((Parameter) j2).getName()); } }); paramsViewer.addCheckStateListener(getLocalListener()); paramsViewer.setAllChecked(false); // Enable cursor keys in table TableViewerFocusCellManager focusCellManager = new TableViewerFocusCellManager(paramsViewer, new FocusCellOwnerDrawHighlighter(paramsViewer)); ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy(paramsViewer) { @Override 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.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC; } }; TableViewerEditor.create(paramsViewer, focusCellManager, actSupport, ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION); paramsTable = paramsViewer.getTable(); gd = new GridData(SWT.FILL, SWT.FILL, true, true); gd.heightHint = 100; paramsTable.setLayoutData(gd); paramsTable.setLinesVisible(true); paramsTable.setHeaderVisible(true); paramsTable.setEnabled(false); // Disable cell item selection paramsTable.addListener(SWT.EraseItem, new Listener() { /* * (non-Javadoc) * * @see * org.eclipse.swt.widgets.Listener#handleEvent(org.eclipse.swt. * widgets.Event) */ public void handleEvent(Event event) { event.detail &= ~SWT.SELECTED; } }); addColumns(); if (info != null) { paramsViewer.setInput(info); } }
From source file:org.eclipse.reqcycle.predicates.ui.dialogs.CheckBoxInputDialog.java
License:Open Source License
@Override protected void createCustomDialogArea(Composite parent) { checkboxTableViewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI); Table tableOfCustomPredicates = checkboxTableViewer.getTable(); tableOfCustomPredicates.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); TableLayout tableLayout = new TableLayout(); tableLayout.addColumnData(new ColumnWeightData(3, 100, true)); tableOfCustomPredicates.setLayout(tableLayout); TableViewerColumn column = new TableViewerColumn(checkboxTableViewer, SWT.None); column.getColumn().setResizable(true); if (this.contentProvider == null) this.contentProvider = ArrayContentProvider.getInstance(); if (this.labelProvider == null) this.labelProvider = this.getDefaultLabelProvider(); this.checkboxTableViewer.setContentProvider(this.contentProvider); this.checkboxTableViewer.setLabelProvider(this.labelProvider); this.checkboxTableViewer.setInput(getInput()); if (initialSelection != null && !initialSelection.isEmpty()) { this.checkboxTableViewer.setCheckedElements(initialSelection.toArray()); }/* ww w .ja v a 2 s. co m*/ }
From source file:org.eclipse.reqcycle.ui.collectionspropseditor.internal.components.CollectionsPropsEditorComponent.java
License:Open Source License
private void initTableViewerForEEnum(Composite parent, EEnum eType) { tableViewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER | SWT.MULTI); Table table = tableViewer.getTable(); table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); tableViewer.setContentProvider(new IStructuredContentProvider() { @Override/* w w w . jav a2s . c om*/ public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } @Override public void dispose() { } @Override public Object[] getElements(Object inputElement) { return (Object[]) inputElement; } }); ((CheckboxTableViewer) tableViewer).addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(CheckStateChangedEvent event) { Object obj = event.getElement(); if (obj instanceof EEnumLiteral) { if (event.getChecked()) { enteredValues.add(((EEnumLiteral) obj).getInstance()); } else { enteredValues.remove(((EEnumLiteral) obj).getInstance()); } } } }); tableViewer.setInput(eType.getELiterals().toArray()); }
From source file:org.eclipse.reqcycle.ui.components.dialogs.TestDialog.java
License:Open Source License
/** * Create contents of the dialog./* w w w .j a v a 2 s . c o m*/ * * @param parent */ @Override protected Control createDialogArea(Composite parent) { Composite container = (Composite) super.createDialogArea(parent); container.setLayout(new GridLayout(1, false)); CheckboxTableViewer checkboxTableViewer = CheckboxTableViewer.newCheckList(container, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI); Table tableOfCustomPredicates = checkboxTableViewer.getTable(); tableOfCustomPredicates.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1)); TableLayout tableLayout = new TableLayout(); tableLayout.addColumnData(new ColumnWeightData(3, 100, true)); tableOfCustomPredicates.setLayout(tableLayout); TableViewerColumn column = new TableViewerColumn(checkboxTableViewer, SWT.None); column.getColumn().setResizable(true); return container; }
From source file:org.eclipse.sapphire.ui.forms.swt.CheckBoxListPropertyEditorPresentation.java
License:Open Source License
@Override protected void createContents(final Composite parent) { // Initialize final PropertyEditorPart part = part(); final Property property = part.property(); this.memberType = property.definition().getType(); final SortedSet<PropertyDef> allMemberProperties = this.memberType.properties(); if (allMemberProperties.size() == 1) { final PropertyDef prop = allMemberProperties.first(); if (prop instanceof ValueProperty) { this.memberProperty = (ValueProperty) prop; } else {// w w w. j a va 2s .co m throw new IllegalStateException(); } } else { throw new IllegalStateException(); } this.possibleValuesService = property.service(PossibleValuesService.class); this.possibleValuesServiceListener = new Listener() { @Override public void handle(final Event event) { CheckBoxListPropertyEditorPresentation.this.tableViewer.refresh(); } }; this.possibleValuesService.attach(this.possibleValuesServiceListener); // Create Controls final Composite mainComposite = createMainComposite(parent); mainComposite.setLayout(glspacing(glayout(2, 0, 0), 2)); final PropertyEditorAssistDecorator decorator = createDecorator(mainComposite); decorator.control().setLayoutData(gdvalign(gd(), SWT.TOP)); // Setting the whint in the following code is a hacky workaround for the problem // tracked by the following JFace bug: // // https://bugs.eclipse.org/bugs/show_bug.cgi?id=215997 // final Composite tableComposite = new Composite(mainComposite, SWT.NONE); tableComposite.setLayoutData(gdwhint(gdfill(), 1)); final TableColumnLayout tableColumnLayout = new TableColumnLayout(); tableComposite.setLayout(tableColumnLayout); this.tableViewer = CheckboxTableViewer.newCheckList(tableComposite, SWT.BORDER | SWT.FULL_SELECTION); this.table = this.tableViewer.getTable(); final TableViewerColumn viewerColumn = new TableViewerColumn(this.tableViewer, SWT.NONE); final TableColumn column = viewerColumn.getColumn(); column.setText(this.memberProperty.getLabel(false, CapitalizationType.TITLE_STYLE, false)); tableColumnLayout.setColumnData(column, new ColumnWeightData(1, 100, true)); decorator.addEditorControl(mainComposite); suppressDashedTableEntryBorder(this.table); // Bind to Model final ColumnSortComparator comparator = new ColumnSortComparator() { @Override protected String convertToString(final Object obj) { return ((Entry) obj).value; } }; final IStructuredContentProvider contentProvider = new IStructuredContentProvider() { private List<Entry> entries = new ArrayList<Entry>(); public Object[] getElements(final Object input) { if (this.entries != null) { for (Entry entry : this.entries) { entry.dispose(); } this.entries = null; } final Map<String, LinkedList<Element>> valueToElements = new HashMap<String, LinkedList<Element>>(); for (final Element element : property()) { final String value = readMemberProperty(element); LinkedList<Element> elements = valueToElements.get(value); if (elements == null) { elements = new LinkedList<Element>(); valueToElements.put(value, elements); } elements.add(element); } this.entries = new ArrayList<Entry>(); Set<String> possibleValues; try { possibleValues = CheckBoxListPropertyEditorPresentation.this.possibleValuesService.values(); } catch (Exception e) { Sapphire.service(LoggingService.class).log(e); possibleValues = SetFactory.empty(); } for (String value : possibleValues) { final Entry entry; final LinkedList<Element> elements = valueToElements.get(value); if (elements == null) { entry = new Entry(value, null); } else { final Element element = elements.remove(); if (elements.isEmpty()) { valueToElements.remove(value); } entry = new Entry(value, element); } this.entries.add(entry); } for (Map.Entry<String, LinkedList<Element>> entry : valueToElements.entrySet()) { final String value = entry.getKey(); for (Element element : entry.getValue()) { this.entries.add(new Entry(value, element)); } } return this.entries.toArray(); } public void dispose() { for (Entry entry : this.entries) { entry.dispose(); } this.entries = null; } public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) { } }; this.tableViewer.setContentProvider(contentProvider); final ColumnLabelProvider labelProvider = new ColumnLabelProvider() { @Override public String getText(final Object element) { return ((Entry) element).label(); } @Override public Image getImage(final Object element) { return ((Entry) element).image(); } @Override public Color getForeground(final Object element) { return ((Entry) element).foreground(); } }; viewerColumn.setLabelProvider(labelProvider); final ICheckStateProvider checkStateProvider = new ICheckStateProvider() { public boolean isChecked(final Object element) { return ((Entry) element).selected(); } public boolean isGrayed(final Object element) { return false; } }; this.tableViewer.setCheckStateProvider(checkStateProvider); if (part.getRenderingHint(PropertyEditorDef.HINT_SHOW_HEADER, true) == true) { this.table.setHeaderVisible(true); makeTableSortable(this.tableViewer, Collections.<TableColumn, Comparator<Object>>singletonMap(column, comparator), CheckBoxListPropertyEditorPresentation.this.possibleValuesService.ordered() ? null : column); } final ListSelectionService selectionService = part.service(ListSelectionService.class); this.tableViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(final SelectionChangedEvent event) { selectionService.select(getSelectedElements()); } }); final Listener selectionServiceListener = new FilteredListener<ListSelectionChangedEvent>() { @Override protected void handleTypedEvent(final ListSelectionChangedEvent event) { setSelectedElements(event.after()); } }; selectionService.attach(selectionServiceListener); addOnDisposeOperation(new Runnable() { public void run() { selectionService.detach(selectionServiceListener); if (CheckBoxListPropertyEditorPresentation.this.possibleValuesService != null) { CheckBoxListPropertyEditorPresentation.this.possibleValuesService .detach(CheckBoxListPropertyEditorPresentation.this.possibleValuesServiceListener); } } }); this.tableViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(final CheckStateChangedEvent event) { final Entry entry = (Entry) event.getElement(); entry.flip(); selectionService.select(getSelectedElements()); } }); this.table.addMouseListener(new MouseAdapter() { public void mouseDoubleClick(final MouseEvent event) { Entry entry = null; for (TableItem item : CheckBoxListPropertyEditorPresentation.this.table.getItems()) { if (item.getBounds().contains(event.x, event.y)) { entry = (Entry) item.getData(); break; } } if (entry != null) { entry.flip(); selectionService.select(getSelectedElements()); } } }); // Finish Up this.tableViewer.setInput(new Object()); addControl(this.table); }
From source file:org.eclipse.sapphire.ui.renderers.swt.CheckBoxListPropertyEditorRenderer.java
License:Open Source License
@Override protected void createContents(final Composite parent) { // Initialize final PropertyEditorPart part = getPart(); final Property property = part.property(); this.memberType = property.definition().getType(); final SortedSet<PropertyDef> allMemberProperties = this.memberType.properties(); if (allMemberProperties.size() == 1) { final PropertyDef prop = allMemberProperties.first(); if (prop instanceof ValueProperty) { this.memberProperty = (ValueProperty) prop; } else {//from www . ja v a 2 s . c o m throw new IllegalStateException(); } } else { throw new IllegalStateException(); } this.possibleValuesService = property.service(PossibleValuesService.class); this.possibleValuesServiceListener = new Listener() { @Override public void handle(final Event event) { CheckBoxListPropertyEditorRenderer.this.tableViewer.refresh(); } }; this.possibleValuesService.attach(this.possibleValuesServiceListener); // Create Controls final Composite mainComposite = createMainComposite(parent); mainComposite.setLayout(glspacing(glayout(2, 0, 0), 2)); final PropertyEditorAssistDecorator decorator = createDecorator(mainComposite); decorator.control().setLayoutData(gdvalign(gd(), SWT.TOP)); // Setting the whint in the following code is a hacky workaround for the problem // tracked by the following JFace bug: // // https://bugs.eclipse.org/bugs/show_bug.cgi?id=215997 // final Composite tableComposite = new Composite(mainComposite, SWT.NONE); tableComposite.setLayoutData(gdwhint(gdfill(), 1)); final TableColumnLayout tableColumnLayout = new TableColumnLayout(); tableComposite.setLayout(tableColumnLayout); this.tableViewer = CheckboxTableViewer.newCheckList(tableComposite, SWT.BORDER | SWT.FULL_SELECTION); this.table = this.tableViewer.getTable(); final TableViewerColumn viewerColumn = new TableViewerColumn(this.tableViewer, SWT.NONE); final TableColumn column = viewerColumn.getColumn(); column.setText(this.memberProperty.getLabel(false, CapitalizationType.TITLE_STYLE, false)); tableColumnLayout.setColumnData(column, new ColumnWeightData(1, 100, true)); decorator.addEditorControl(mainComposite); suppressDashedTableEntryBorder(this.table); // Bind to Model final ColumnSortComparator comparator = new ColumnSortComparator() { @Override protected String convertToString(final Object obj) { return ((Entry) obj).value; } }; final IStructuredContentProvider contentProvider = new IStructuredContentProvider() { private List<Entry> entries = new ArrayList<Entry>(); public Object[] getElements(final Object input) { if (this.entries != null) { for (Entry entry : this.entries) { entry.dispose(); } this.entries = null; } final Map<String, LinkedList<Element>> valueToElements = new HashMap<String, LinkedList<Element>>(); for (Element element : getList()) { final String value = readMemberProperty(element); LinkedList<Element> elements = valueToElements.get(value); if (elements == null) { elements = new LinkedList<Element>(); valueToElements.put(value, elements); } elements.add(element); } this.entries = new ArrayList<Entry>(); Set<String> possibleValues; try { possibleValues = CheckBoxListPropertyEditorRenderer.this.possibleValuesService.values(); } catch (Exception e) { SapphireUiFrameworkPlugin.log(e); possibleValues = SetFactory.empty(); } for (String value : possibleValues) { final Entry entry; final LinkedList<Element> elements = valueToElements.get(value); if (elements == null) { entry = new Entry(value, null); } else { final Element element = elements.remove(); if (elements.isEmpty()) { valueToElements.remove(value); } entry = new Entry(value, element); } this.entries.add(entry); } for (Map.Entry<String, LinkedList<Element>> entry : valueToElements.entrySet()) { final String value = entry.getKey(); for (Element element : entry.getValue()) { this.entries.add(new Entry(value, element)); } } return this.entries.toArray(); } public void dispose() { for (Entry entry : this.entries) { entry.dispose(); } this.entries = null; } public void inputChanged(final Viewer viewer, final Object oldInput, final Object newInput) { } }; this.tableViewer.setContentProvider(contentProvider); final ColumnLabelProvider labelProvider = new ColumnLabelProvider() { @Override public String getText(final Object element) { return ((Entry) element).label(); } @Override public Image getImage(final Object element) { return ((Entry) element).image(); } @Override public Color getForeground(final Object element) { return ((Entry) element).foreground(); } }; viewerColumn.setLabelProvider(labelProvider); final ICheckStateProvider checkStateProvider = new ICheckStateProvider() { public boolean isChecked(final Object element) { return ((Entry) element).selected(); } public boolean isGrayed(final Object element) { return false; } }; this.tableViewer.setCheckStateProvider(checkStateProvider); if (part.getRenderingHint(PropertyEditorDef.HINT_SHOW_HEADER, true) == true) { this.table.setHeaderVisible(true); makeTableSortable(this.tableViewer, Collections.<TableColumn, Comparator<Object>>singletonMap(column, comparator), CheckBoxListPropertyEditorRenderer.this.possibleValuesService.ordered() ? null : column); } final ListSelectionService selectionService = part.service(ListSelectionService.class); this.tableViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(final SelectionChangedEvent event) { selectionService.select(getSelectedElements()); } }); final Listener selectionServiceListener = new Listener() { @Override public void handle(final Event event) { setSelectedElements(((ListSelectionChangedEvent) event).after()); } }; selectionService.attach(selectionServiceListener); addOnDisposeOperation(new Runnable() { public void run() { selectionService.detach(selectionServiceListener); if (CheckBoxListPropertyEditorRenderer.this.possibleValuesService != null) { CheckBoxListPropertyEditorRenderer.this.possibleValuesService .detach(CheckBoxListPropertyEditorRenderer.this.possibleValuesServiceListener); } } }); this.tableViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(final CheckStateChangedEvent event) { final Entry entry = (Entry) event.getElement(); entry.flip(); selectionService.select(getSelectedElements()); } }); this.table.addMouseListener(new MouseAdapter() { public void mouseDoubleClick(final MouseEvent event) { Entry entry = null; for (TableItem item : CheckBoxListPropertyEditorRenderer.this.table.getItems()) { if (item.getBounds().contains(event.x, event.y)) { entry = (Entry) item.getData(); break; } } if (entry != null) { entry.flip(); selectionService.select(getSelectedElements()); } } }); // Finish Up this.tableViewer.setInput(new Object()); addControl(this.table); }
From source file:org.eclipse.scada.ui.chart.selector.ChartConfigurationInputSelector.java
License:Open Source License
public ChartConfigurationInputSelector(final Composite parent, final Chart chart, final boolean showHeader) { this.viewer = CheckboxTableViewer.newCheckList(parent, SWT.FULL_SELECTION); this.viewer.getControl().addDisposeListener(new DisposeListener() { @Override// w w w . j a va 2s.c o m public void widgetDisposed(final DisposeEvent e) { handleDispose(); } }); this.inputs = EMFObservables.observeList(chart, ChartPackage.Literals.CHART__INPUTS); if (showHeader) { final TableLayout layout = new TableLayout(); final TableViewerColumn col = new TableViewerColumn(this.viewer, SWT.NONE); col.getColumn().setText(Messages.ChartConfigurationInputSelector_Channels_Label); this.viewer.getTable().setHeaderVisible(true); layout.addColumnData(new ColumnWeightData(100)); this.viewer.getTable().setLayout(layout); } ViewerSupport.bind(this.viewer, this.inputs, EMFProperties.value(ChartPackage.Literals.DATA_SERIES__LABEL)); final IObservableSet elements = ((ObservableListContentProvider) this.viewer.getContentProvider()) .getKnownElements(); final IObservableMap[] visibile = Properties.observeEach(elements, new IValueProperty[] { EMFProperties.value(ChartPackage.Literals.DATA_SERIES__VISIBLE) }); this.checked = ViewersObservables.observeCheckedElements(this.viewer, null); // initial set for (final DataSeries series : chart.getInputs()) { if (series.isVisible()) { this.checked.add(series); } } this.checked.addSetChangeListener(new ISetChangeListener() { @Override public void handleSetChange(final SetChangeEvent event) { for (final Object o : event.diff.getAdditions()) { ((DataSeries) o).setVisible(true); } for (final Object o : event.diff.getRemovals()) { ((DataSeries) o).setVisible(false); } } }); visibile[0].addMapChangeListener(new IMapChangeListener() { @Override public void handleMapChange(final MapChangeEvent event) { for (final Object o : event.diff.getChangedKeys()) { if ((Boolean) event.diff.getNewValue(o)) { ChartConfigurationInputSelector.this.checked.add(o); } else { ChartConfigurationInputSelector.this.checked.remove(o); } } } }); }
From source file:org.eclipse.scada.ui.chart.selector.ChartInputSelector.java
License:Open Source License
public ChartInputSelector(final Composite parent, final ChartViewer chart, final boolean showHeader) { this.viewer = CheckboxTableViewer.newCheckList(parent, SWT.FULL_SELECTION); this.viewer.getControl().addDisposeListener(new DisposeListener() { @Override/*w w w . j av a 2 s . c o m*/ public void widgetDisposed(final DisposeEvent e) { handleDispose(); } }); this.inputs = chart.getItems(); if (showHeader) { final TableLayout layout = new TableLayout(); final TableViewerColumn col = new TableViewerColumn(this.viewer, SWT.NONE); col.getColumn().setText(Messages.ChartInputSelector_Channels_Label); this.viewer.getTable().setHeaderVisible(true); layout.addColumnData(new ColumnWeightData(100)); this.viewer.getTable().setLayout(layout); } this.contentProvider = new ObservableListContentProvider(); this.viewer.setContentProvider(this.contentProvider); this.viewer.setLabelProvider(new ObservableMapLabelProviderExtension( Properties.observeEach(this.contentProvider.getKnownElements(), new IValueProperty[] { BeanProperties.value(ChartInput.PROP_LABEL), BeanProperties.value(ChartInput.PROP_PREVIEW) }))); this.viewer.setInput(this.inputs); this.visibleElements = BeanProperties.value(ChartInput.class, ChartInput.PROP_VISIBLE) .observeDetail(this.contentProvider.getKnownElements()); this.checked = ViewersObservables.observeCheckedElements(this.viewer, null); for (final Object key : this.visibleElements.keySet()) { checkEntry(key); } this.visibleElements.addMapChangeListener(new IMapChangeListener() { @Override public void handleMapChange(final MapChangeEvent event) { for (final Object key : event.diff.getAddedKeys()) { checkEntry(key); } for (final Object key : event.diff.getChangedKeys()) { checkEntry(key); } } }); this.checked.addSetChangeListener(new ISetChangeListener() { @Override public void handleSetChange(final SetChangeEvent event) { for (final Object o : event.diff.getRemovals()) { ((ChartInput) o).setVisible(false); } for (final Object o : event.diff.getAdditions()) { ((ChartInput) o).setVisible(true); } } }); }
From source file:org.eclipse.sirius.common.ui.tools.api.wizard.CheckboxTreeAndListGroup.java
License:Open Source License
/** * Create this group's list viewer.//from w w w . j a v a 2s . c o m * * @param parent * the parent * @param width * int * @param height * int */ protected void createListViewer(final Composite parent, final int width, final int height) { listViewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER); final GridData data = new GridData(GridData.FILL_BOTH); data.widthHint = width; data.heightHint = height; listViewer.getTable().setLayoutData(data); listViewer.getTable().setFont(parent.getFont()); listViewer.setContentProvider(listContentProvider); listViewer.setLabelProvider(listLabelProvider); listViewer.addCheckStateListener(this); }
From source file:org.eclipse.sirius.ui.business.internal.viewpoint.ViewpointSelectionDialog.java
License:Open Source License
/** * {@inheritDoc}//w w w . ja va 2s .co m */ @Override protected Control createDialogArea(Composite parent) { Composite composite = (Composite) super.createDialogArea(parent); composite.setLayout(new GridLayout(1, false)); table = CheckboxTableViewer.newCheckList(composite, SWT.BORDER | SWT.FULL_SELECTION); ColumnViewerToolTipSupport.enableFor(table, ToolTip.NO_RECREATE); table.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); table.setContentProvider(new TableContentProvider()); table.setLabelProvider(new TableLabelProvider()); table.addCheckStateListener(new TableCheckStateListener()); table.setInput(input); for (Item item : input) { item.computeState(); } return composite; }