List of usage examples for org.eclipse.jface.viewers CheckboxTableViewer CheckboxTableViewer
public CheckboxTableViewer(Table table)
From source file:de.topicmapslab.onotoa.wordlisteditor.editor.WordListEditor.java
License:Open Source License
/** * Creates the table viewer and columns. * /*from w ww . j av a 2 s . com*/ * @param table * the table which will be used by the wrapper */ private void initTable(final Table table) { TableColumnLayout layout = (TableColumnLayout) table.getParent().getLayout(); table.setLinesVisible(true); table.setHeaderVisible(true); table.setMenu(new Menu(table)); table.addKeyListener(new KeyAdapter() { /** * {@inheritDoc} */ @Override public void keyPressed(KeyEvent e) { if ((e.keyCode == (int) 'c') && ((e.stateMask & SWT.CTRL) != 0)) { Clipboard clipboard = new Clipboard(e.widget.getDisplay()); StringBuilder builder = new StringBuilder(); String lineSeparator = System.getProperty("line.separator"); IStructuredSelection sel = (IStructuredSelection) viewer.getSelection(); Iterator<?> it = sel.iterator(); while (it.hasNext()) { Word w = (Word) it.next(); builder.append("\""); builder.append(w.getWord()); builder.append("\""); builder.append(";"); builder.append(w.getType().getName()); if (it.hasNext()) { builder.append(lineSeparator); } } clipboard.setContents(new Object[] { builder.toString() }, new Transfer[] { TextTransfer.getInstance() }); clipboard.dispose(); } } }); viewer = new CheckboxTableViewer(table); viewer.setContentProvider(ArrayContentProvider.getInstance()); viewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { removeButton.setEnabled(viewer.getCheckedElements().length != 0); } }); ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy(viewer) { protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) { return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION || (event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED && event.keyCode == SWT.CR) || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC; } }; TableViewerEditor.create(viewer, null, actSupport, ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION); // word column TableViewerColumn tvc = new TableViewerColumn(viewer, SWT.NONE); layout.setColumnData(tvc.getColumn(), new ColumnWeightData(1)); tvc.getColumn().setText("Word"); tvc.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { cell.setText(((Word) cell.getElement()).getWord()); } }); tvc.setEditingSupport(new EditingSupport(viewer) { @Override protected void setValue(Object element, Object value) { WordListContainer wlc = (WordListContainer) viewer.getInput(); Word w = (Word) element; if (w.getWord().equals(value)) return; if (wlc.containsWord((String) value)) { MessageDialog.openInformation(table.getShell(), "Word already entered", "The word <" + value + "> was already entered"); return; } AbstractCommand cmd = null; cmd = new ModifyWordCommand(w, (String) value); commandStack.execute(cmd); viewer.refresh(element); } @Override protected Object getValue(Object element) { Word w = (Word) element; return w.getWord(); } @Override protected CellEditor getCellEditor(Object element) { return new TextCellEditor(table); } @Override protected boolean canEdit(Object element) { return true; } }); // create column sorter new AbstractColumnViewerSorter(viewer, tvc) { @Override public String getText(Object element) { return ((Word) element).getWord(); } }; // type column tvc = new TableViewerColumn(viewer, SWT.NONE); tvc.getColumn().setText("Type"); layout.setColumnData(tvc.getColumn(), new ColumnWeightData(1)); tvc.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { String name = ((Word) cell.getElement()).getType().getName(); cell.setText(name); cell.setImage(ImageProvider.getImageOfKindOfTopic(KindOfTopicType.getByName(name))); } }); tvc.setEditingSupport(new EditingSupport(viewer) { final String[] ITEMS = { KindOfTopicType.TOPIC_TYPE.getName(), KindOfTopicType.OCCURRENCE_TYPE.getName(), KindOfTopicType.NAME_TYPE.getName(), KindOfTopicType.ROLE_TYPE.getName(), KindOfTopicType.ASSOCIATION_TYPE.getName(), KindOfTopicType.NO_TYPE.getName() }; @Override protected void setValue(Object element, Object value) { int val = (Integer) value; // jump from scope to no type index if (val == 5) val = 6; KindOfTopicType type = KindOfTopicType.get(val); WordListContainer wlc = (WordListContainer) viewer.getInput(); Word w = (Word) element; AbstractCommand cmd = null; if (wlc.contains(w)) { cmd = new ModifyWordTypeCommand((Word) element, type); commandStack.execute(cmd); viewer.refresh(element); } else { cmd = new AddWordCommand(wlc, w.getWord(), type); commandStack.execute(cmd); viewer.refresh(); } } @Override protected Object getValue(Object element) { int val = ((Word) element).getType().getValue(); // switching from scope to no type if (val == 6) val = 5; return val; } @Override protected CellEditor getCellEditor(Object element) { ComboBoxCellEditor comboBoxCellEditor = new ComboBoxCellEditor(table, ITEMS, SWT.READ_ONLY); return comboBoxCellEditor; } @Override protected boolean canEdit(Object element) { return true; } }); // create column sorter new AbstractColumnViewerSorter(viewer, tvc) { @Override public String getText(Object element) { if (((WordListContainer) viewer.getInput()).contains(element)) return ((Word) element).getType().getName(); // hack so hopefully the new element is always the last else return "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzZ"; } }; tvc = new TableViewerColumn(viewer, SWT.NONE); layout.setColumnData(tvc.getColumn(), new ColumnWeightData(2)); tvc.getColumn().setText("Comment"); tvc.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { String tmp = ((Word) cell.getElement()).getComment(); if (tmp == null) tmp = ""; cell.setText(tmp); } }); tvc.setEditingSupport(new EditingSupport(viewer) { @Override protected void setValue(Object element, Object value) { AbstractCommand cmd = null; cmd = new ModifyWordCommentCommand((Word) element, (String) value); commandStack.execute(cmd); viewer.refresh(element); } @Override protected Object getValue(Object element) { String tmp = ((Word) element).getComment(); if (tmp == null) return ""; return tmp; } @Override protected CellEditor getCellEditor(Object element) { return new TextCellEditor(table); } @Override protected boolean canEdit(Object element) { return true; } }); }
From source file:de.walware.ecommons.ui.dialogs.AbstractCheckboxSelectionDialog.java
License:Open Source License
protected Composite createCheckboxComposite(final Composite parent, final String message) { final Composite composite = new Composite(parent, SWT.NONE); composite.setLayout(LayoutUtil.createCompositeGrid(3)); if (message != null) { final Label label = new Label(composite, SWT.NONE); label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false, 3, 1)); label.setText(message);// w w w . j a va 2 s. c om } { final Table table = new Table(composite, SWT.BORDER | SWT.SINGLE | SWT.CHECK); final GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true, 3, 1); gd.heightHint = 250; gd.widthHint = 300; table.setLayoutData(gd); fViewer = new CheckboxTableViewer(table); fViewer.addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(final CheckStateChangedEvent event) { updateCheckedStatus(); } }); configureViewer(fViewer); } { final Button button = new Button(composite, SWT.PUSH); final GridData gd = new GridData(SWT.FILL, SWT.CENTER, false, false); gd.widthHint = LayoutUtil.hintWidth(button); button.setLayoutData(gd); button.setText("Select All"); button.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent e) { getCheckBoxTableViewer().setAllChecked(true); updateCheckedStatus(); } }); } { final Button button = new Button(composite, SWT.PUSH); final GridData gd = new GridData(SWT.FILL, SWT.CENTER, false, false); gd.widthHint = LayoutUtil.hintWidth(button); button.setLayoutData(gd); button.setText("Deselect All"); button.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent e) { getCheckBoxTableViewer().setAllChecked(false); updateCheckedStatus(); } }); } return composite; }
From source file:de.walware.eutils.autonature.internal.AutoNaturePreferencePage.java
License:Open Source License
@Override protected Control createContents(final Composite parent) { final Composite composite = new Composite(parent, SWT.NONE); {/*w ww . jav a 2 s . com*/ final GridLayout gd = new GridLayout(); gd.marginWidth = 0; gd.marginHeight = 0; gd.numColumns = 1; composite.setLayout(gd); } { this.enableButton = new Button(composite, SWT.CHECK); this.enableButton.setText("Enable automatic project &configuration for:"); this.enableButton.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1)); } { final Composite tableComposite = new Composite(composite, SWT.NONE); this.entryViewer = new CheckboxTableViewer( new Table(tableComposite, SWT.CHECK | SWT.BORDER | SWT.FULL_SELECTION)); final Table table = this.entryViewer.getTable(); final GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1); Dialog.applyDialogFont(tableComposite); gd.heightHint = table.getHeaderHeight() + table.getItemHeight() * 10; tableComposite.setLayoutData(gd); final TableColumnLayout tableLayout = new TableColumnLayout(); tableComposite.setLayout(tableLayout); this.entryViewer.setContentProvider(new ArrayContentProvider()); this.entryViewer.setComparator(new AutoConfigComparator()); this.entryViewer.getTable().setHeaderVisible(true); { final TableViewerColumn column = new TableViewerColumn(this.entryViewer, SWT.LEFT); tableLayout.setColumnData(column.getColumn(), new ColumnWeightData(5, true)); column.getColumn().setText("Content Type"); column.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final AutoConfig config = (AutoConfig) cell.getElement(); cell.setText(config.getLabel()); } }); } { final TableViewerColumn column = new TableViewerColumn(this.entryViewer, SWT.LEFT); tableLayout.setColumnData(column.getColumn(), new ColumnWeightData(5, true)); column.getColumn().setText("Project Configuration"); column.setLabelProvider(new CellLabelProvider() { @Override public void update(final ViewerCell cell) { final AutoConfig config = (AutoConfig) cell.getElement(); final List<Task> tasks = config.getTasks(); if (tasks.size() == 1) { cell.setText(tasks.get(0).getLabel()); } else { final StringBuilder sb = new StringBuilder(); sb.append(tasks.get(0).getLabel()); for (int i = 1; i < tasks.size(); i++) { sb.append(", "); sb.append(tasks.get(i).getLabel()); } cell.setText(sb.toString()); } } }); } } Dialog.applyDialogFont(composite); loadConfigs(); loadPrefs(); return composite; }
From source file:de.walware.statet.r.internal.ui.pkgmanager.PkgTab.java
License:Open Source License
private Composite createFilter(final Composite parent) { final Group composite = new Group(parent, SWT.NONE); composite.setLayout(LayoutUtil.createGroupGrid(1)); composite.setText("Filter"); {/*from w ww. j ava 2 s . com*/ final SearchText text = new SearchText(composite); fFilterText = text; final GridData gd = new GridData(SWT.FILL, SWT.CENTER, true, false); gd.widthHint = LayoutUtil.hintWidth(text.getTextControl(), 20); text.setToolTipText("Name"); text.setLayoutData(gd); } { // Label label = new Label(composite, SWT.NONE); // label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); // label.setText("State:"); LayoutUtil.addSmallFiller(composite, false); { final Button button = new Button(composite, SWT.CHECK); fFilterInstButton = button; button.setText("Installed"); button.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); } // { Button button = new Button(composite, SWT.CHECK); // fPkgFilterInstUptButton = button; // button.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); // button.setText("With Update"); // } { final Button button = new Button(composite, SWT.CHECK); fFilterNotInstButton = button; button.setText("Not Installed"); button.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); } } { final Label label = new Label(composite, SWT.NONE); label.setText("Priorities:"); label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); final CheckboxTableViewer viewer = new CheckboxTableViewer( new Table(composite, SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION | SWT.NO_SCROLL)); fFilterPriorityTable = viewer; viewer.setContentProvider(new ArrayContentProvider()); viewer.setLabelProvider(new LabelProvider()); final GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false); gd.heightHint = LayoutUtil.hintHeight(viewer.getTable(), IRPkgSet.Ext.DEFAULT_PRIORITIES.size(), false); viewer.getControl().setLayoutData(gd); } { final Label label = new Label(composite, SWT.NONE); label.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false)); label.setText("Task Views:"); final Composite views = new Composite(composite, SWT.NONE); final GridData gd = new GridData(SWT.FILL, SWT.FILL, true, true); views.setLayoutData(gd); fFilterViewsStack = new StackLayout(); views.setLayout(fFilterViewsStack); final Link link = new Link(views, SWT.MULTI); fFilterViewsMessage = link; link.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(final SelectionEvent e) { showPkg(e.text); } }); link.setText(""); final CheckboxTableComposite table = new CheckboxTableComposite(views, SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION); fFilterRViewsTable = table.viewer; table.viewer.setContentProvider(new ArrayContentProvider()); ColumnViewerToolTipSupport.enableFor(table.viewer, ToolTip.NO_RECREATE); final TableViewerColumn column = table.addColumn("", SWT.LEFT, new ColumnWeightData(100, false)); column.setLabelProvider(new RViewLabelProvider()); gd.widthHint = LayoutUtil.hintWidth(table.table, 20); fFilterViewsStack.topControl = table; } return composite; }
From source file:e4.handler.E4TemplatePreferencePage.java
License:Open Source License
@Override protected Control createContents(Composite ancestor) { Composite parent = new Composite(ancestor, SWT.NONE); GridLayout layout = new GridLayout(); layout.numColumns = 2;// w ww. j a va2s . co m layout.marginHeight = 0; layout.marginWidth = 0; parent.setLayout(layout); Composite innerParent = new Composite(parent, SWT.NONE); GridLayout innerLayout = new GridLayout(); innerLayout.numColumns = 2; innerLayout.marginHeight = 0; innerLayout.marginWidth = 0; innerParent.setLayout(innerLayout); GridData gd = new GridData(GridData.FILL_BOTH); gd.horizontalSpan = 2; innerParent.setLayoutData(gd); Composite tableComposite = new Composite(innerParent, SWT.NONE); GridData data = new GridData(GridData.FILL_BOTH); data.widthHint = 360; data.heightHint = convertHeightInCharsToPixels(10); tableComposite.setLayoutData(data); ColumnLayout columnLayout = new ColumnLayout(); tableComposite.setLayout(columnLayout); Table table = new Table(tableComposite, SWT.CHECK | SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL); table.setHeaderVisible(true); table.setLinesVisible(true); GC gc = new GC(getShell()); gc.setFont(JFaceResources.getDialogFont()); TableColumn column1 = new TableColumn(table, SWT.NONE); column1.setText(TemplatesMessages.TemplatePreferencePage_column_name); int minWidth = computeMinimumColumnWidth(gc, TemplatesMessages.TemplatePreferencePage_column_name); columnLayout.addColumnData(new ColumnWeightData(2, minWidth, true)); TableColumn column2 = new TableColumn(table, SWT.NONE); column2.setText(TemplatesMessages.TemplatePreferencePage_column_context); minWidth = computeMinimumContextColumnWidth(gc); columnLayout.addColumnData(new ColumnWeightData(1, minWidth, true)); TableColumn column3 = new TableColumn(table, SWT.NONE); column3.setText(TemplatesMessages.TemplatePreferencePage_column_description); minWidth = computeMinimumColumnWidth(gc, TemplatesMessages.TemplatePreferencePage_column_description); columnLayout.addColumnData(new ColumnWeightData(3, minWidth, true)); TableColumn column4 = new TableColumn(table, SWT.NONE); column4.setAlignment(SWT.CENTER); column4.setText(TemplatesMessages.TemplatePreferencePage_column_autoinsert); minWidth = computeMinimumColumnWidth(gc, TemplatesMessages.TemplatePreferencePage_column_autoinsert); minWidth = Math.max(minWidth, computeMinimumColumnWidth(gc, TemplatesMessages.TemplatePreferencePage_on)); columnLayout.addColumnData(new ColumnPixelData(minWidth, false, false)); gc.dispose(); fTableViewer = new CheckboxTableViewer(table); fTableViewer.setLabelProvider(new TemplateLabelProvider()); fTableViewer.setContentProvider(new TemplateContentProvider()); fTableViewer.setComparator(new ViewerComparator() { @Override public int compare(Viewer viewer, Object object1, Object object2) { if ((object1 instanceof TemplatePersistenceData) && (object2 instanceof TemplatePersistenceData)) { Template left = ((TemplatePersistenceData) object1).getTemplate(); Template right = ((TemplatePersistenceData) object2).getTemplate(); int result = Collator.getInstance().compare(left.getName(), right.getName()); if (result != 0) return result; return Collator.getInstance().compare(left.getDescription(), right.getDescription()); } return super.compare(viewer, object1, object2); } @Override public boolean isSorterProperty(Object element, String property) { return true; } }); fTableViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent e) { edit(); } }); fTableViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent e) { selectionChanged1(); } }); fTableViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { TemplatePersistenceData d = (TemplatePersistenceData) event.getElement(); d.setEnabled(event.getChecked()); } }); BidiUtils.applyTextDirection(fTableViewer.getControl(), BidiUtils.BTD_DEFAULT); Composite buttons = new Composite(innerParent, SWT.NONE); buttons.setLayoutData(new GridData(GridData.VERTICAL_ALIGN_BEGINNING)); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; buttons.setLayout(layout); fAddButton = new Button(buttons, SWT.PUSH); fAddButton.setText(TemplatesMessages.TemplatePreferencePage_new); fAddButton.setLayoutData(getButtonGridData(fAddButton)); fAddButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { add(); } }); fEditButton = new Button(buttons, SWT.PUSH); fEditButton.setText(TemplatesMessages.TemplatePreferencePage_edit); fEditButton.setLayoutData(getButtonGridData(fEditButton)); fEditButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { edit(); } }); fRemoveButton = new Button(buttons, SWT.PUSH); fRemoveButton.setText(TemplatesMessages.TemplatePreferencePage_remove); fRemoveButton.setLayoutData(getButtonGridData(fRemoveButton)); fRemoveButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { remove(); } }); createSeparator(buttons); fRestoreButton = new Button(buttons, SWT.PUSH); fRestoreButton.setText(TemplatesMessages.TemplatePreferencePage_restore); fRestoreButton.setLayoutData(getButtonGridData(fRestoreButton)); fRestoreButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { restoreDeleted(); } }); fRevertButton = new Button(buttons, SWT.PUSH); fRevertButton.setText(TemplatesMessages.TemplatePreferencePage_revert); fRevertButton.setLayoutData(getButtonGridData(fRevertButton)); fRevertButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { revert(); } }); createSeparator(buttons); fImportButton = new Button(buttons, SWT.PUSH); fImportButton.setText(TemplatesMessages.TemplatePreferencePage_import); fImportButton.setLayoutData(getButtonGridData(fImportButton)); fImportButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { import_(); } }); fExportButton = new Button(buttons, SWT.PUSH); fExportButton.setText(TemplatesMessages.TemplatePreferencePage_export); fExportButton.setLayoutData(getButtonGridData(fExportButton)); fExportButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { export(); } }); fPatternViewer = doCreateViewer(parent); if (isShowFormatterSetting()) { fFormatButton = new Button(parent, SWT.CHECK); fFormatButton.setText(TemplatesMessages.TemplatePreferencePage_use_code_formatter); GridData gd1 = new GridData(); gd1.horizontalSpan = 2; fFormatButton.setLayoutData(gd1); fFormatButton.setSelection(getPreferenceStore().getBoolean(getFormatterPreferenceKey())); } fTableViewer.setInput(fTemplateStore); fTableViewer.setAllChecked(false); fTableViewer.setCheckedElements(getEnabledTemplates()); updateButtons(); Dialog.applyDialogFont(parent); innerParent.layout(); return parent; }
From source file:edu.illinois.parallelism.openmp.refactoring.padscalarvariables.PadScalarVariablesUserInputWizardPage.java
License:Open Source License
private void createTableViewer() { tableViewer = new CheckboxTableViewer(table); tableViewer.setUseHashlookup(true);/*from w ww.j av a 2 s .co m*/ tableViewer.setColumnProperties(columnNames); tableContentProvider = new PadScalarVariableContentProvider(); tableViewer.setContentProvider(tableContentProvider); tableViewer.setLabelProvider(new PadScalarVariableLabelProvider()); tableViewer.addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(CheckStateChangedEvent event) { VariableToPadTuple tuple = (VariableToPadTuple) event.getElement(); tuple.setShouldPad(event.getChecked()); updateNavigation(); } }); tableViewer.setCellEditors(setUpCellEditors()); tableViewer.setCellModifier(new BytesToPadCellModifier()); }
From source file:edu.ohio_state.khatchad.refactoring.ui.ConvertToEnumTypePage.java
License:Open Source License
private void createMemberTable(final Composite parent) { Composite composite = new Composite(parent, SWT.NONE); composite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); GridLayout layout = new GridLayout(1, false); layout.marginWidth = 0;/*from w ww . j a v a2 s .c o m*/ layout.marginHeight = 0; composite.setLayout(layout); final Table table = new Table(composite, SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION | SWT.CHECK); table.setLinesVisible(true); GridData gridData = new GridData(GridData.FILL_HORIZONTAL); table.setLayoutData(gridData); final GridData gd = new GridData(GridData.FILL_BOTH); gd.heightHint = SWTUtil.getTableHeightHint(table, 6); composite.setLayoutData(gd); fTableViewer = new CheckboxTableViewer(table); fTableViewer.setUseHashlookup(true); fTableViewer.setContentProvider(new ArrayContentProvider()); fTableViewer.setLabelProvider(fLabelProvider); fTableViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(final CheckStateChangedEvent event) { updateWizardPage(null, true); } }); setTableInput(); }
From source file:era.foss.typeeditor.spectype.AttributeDefinitionDetailViewer.java
License:Open Source License
/** * Show UI elements for DatatypeDefintionEnumeration *//* w ww .j a v a 2 s . c o m*/ private void createDetailsEnumeration() { final AttributeDefinitionEnumeration attributeDefinitionEnum = (AttributeDefinitionEnumeration) master .getValue(); // create label for multiValued property Label label = new Label(detailComposite, SWT.NONE); label.setText(Ui.getUiName(ErfPackage.Literals.ATTRIBUTE_DEFINITION_ENUMERATION__MULTI_VALUED)); label.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false)); // create checkbox for multiValued property EAttribute[] isMultiValued = { ErfPackage.Literals.ATTRIBUTE_DEFINITION_ENUMERATION__MULTI_VALUED }; BindingCheckBox multiValuedCheckbox = new BindingCheckBox(detailComposite, SWT.NONE); multiValuedCheckbox.setLayoutData(new GridData(SWT.LEFT, SWT.DEFAULT, true, false)); multiValuedCheckbox.bind(editingDomain, isMultiValued, master); // create checkbox for enabling default value Button defaultValueCheckbox = createDefaultValueCheckbox(attributeDefinitionEnum, ErfPackage.Literals.ATTRIBUTE_DEFINITION_ENUMERATION__DEFAULT_VALUE); // create table for selecting default EnumValue elements Table defaultValueTable = new Table(detailComposite, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION | SWT.CHECK); defaultValueTable.setLinesVisible(true); defaultValueTable.setHeaderVisible(true); final CheckboxTableViewer defaultValueTableViewer = new CheckboxTableViewer(defaultValueTable); defaultValueTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1)); final ObservableListContentProvider cp = new ObservableListContentProvider(); defaultValueTableViewer.setContentProvider(cp); TableViewerColumn column = new TableViewerColumn(defaultValueTableViewer, SWT.NONE); column.getColumn().setResizable(false); column.getColumn().setMoveable(false); column.getColumn().setText(Ui.getUiName(ErfPackage.Literals.ATTRIBUTE_VALUE_ENUMERATION__VALUES)); column.getColumn().pack(); // set label provider IValueProperty elementProperty = EMFEditProperties.value(editingDomain, FeaturePath.fromList(new EStructuralFeature[] { ErfPackage.Literals.IDENTIFIABLE__LONG_NAME })); IObservableMap attributeMap = elementProperty.observeDetail(cp.getKnownElements()); column.setLabelProvider(new ObservableMapCellLabelProvider(attributeMap)); // Add provider for the check stare of the table viewer // A value is checked if it is referred by the Default value of the AttributeDefintionEnumeration defaultValueTableViewer.setCheckStateProvider(new ICheckStateProvider() { @Override public boolean isGrayed(Object element) { return false; } @Override public boolean isChecked(Object element) { AttributeValueEnumeration enumDefaultValue = attributeDefinitionEnum.getDefaultValue(); return enumDefaultValue != null && enumDefaultValue.getValues().contains(element); } }); // If a EnumValue is selected add it to the list of Default values for the AttributeDefintionEnumeration // Otherwise remove it from the list of default values defaultValueTableViewer.addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(CheckStateChangedEvent event) { // we don't need to check if the default value object is null as // in this case table viewer is disabled assert (attributeDefinitionEnum.getDefaultValue() != null); EnumValue enumValue = ((EnumValue) event.getElement()); Command command = null; if (event.getChecked() == true) { command = AddCommand.create(editingDomain, attributeDefinitionEnum.getDefaultValue(), ErfPackage.Literals.ATTRIBUTE_VALUE_ENUMERATION__VALUES, enumValue); } else { command = RemoveCommand.create(editingDomain, attributeDefinitionEnum.getDefaultValue(), ErfPackage.Literals.ATTRIBUTE_VALUE_ENUMERATION__VALUES, enumValue); } editingDomain.getCommandStack().execute(command); } }); // observe values of DatatypeDefinition selected for the AttributeDefintionEnumeration IEMFListProperty enumerationProperty = EMFProperties.list( FeaturePath.fromList(new EStructuralFeature[] { ErfPackage.Literals.ATTRIBUTE_DEFINITION__TYPE, ErfPackage.Literals.DATATYPE_DEFINITION_ENUMERATION__SPECIFIED_VALUES })); IObservableList dataTypeEnumValueObserver = enumerationProperty.observe(attributeDefinitionEnum); defaultValueTableViewer.setInput(dataTypeEnumValueObserver); // only enable table viewer in case a default value exists dataBindingContext.bindValue(SWTObservables.observeEnabled(defaultValueTable), SWTObservables.observeSelection(defaultValueCheckbox)); }
From source file:es.cv.gvcase.fefem.common.widgets.FilteredLoadResourceDialog.java
License:Open Source License
@Override protected Control createDialogArea(Composite parent) { // If the EditingDomain is available then the dialog shows current loaded resources if (this.domain != null) { Group resContainer = new Group(parent, SWT.BORDER); resContainer.setText(Messages.FilteredLoadResourceDialog_LoadedResources); FillLayout rescontainerLayout = new FillLayout(); rescontainerLayout.type = SWT.VERTICAL; rescontainerLayout.marginHeight = 5; rescontainerLayout.marginWidth = 5; rescontainerLayout.spacing = 5;/* w w w . j av a2 s .co m*/ resContainer.setLayout(rescontainerLayout); resContainer.setLayoutData(new GridData(GridData.FILL_BOTH)); Table table = new Table(resContainer, SWT.BORDER | SWT.FULL_SELECTION | SWT.SINGLE); String[] columnNames = { Messages.FilteredLoadResourceDialog_ResourceLocation }; TableViewer tableViewer = new TableViewer(table); tableViewer.setContentProvider(new ArrayContentProvider()); tableViewer.setInput(this.domain.getResourceSet().getResources()); tableViewer.setColumnProperties(columnNames); tableViewer.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { cell.setText(((Resource) cell.getElement()).getURI().toString()); } }); TableColumn tc0 = new TableColumn(table, SWT.LEFT); tc0.setText(columnNames[0]); tc0.setWidth(150); table.setHeaderVisible(true); table.setLinesVisible(true); } Group container = new Group(parent, SWT.BORDER); container.setText(Messages.FilteredLoadResourceDialog_ResourcePatterns); FillLayout containerLayout = new FillLayout(); containerLayout.type = SWT.VERTICAL; containerLayout.marginHeight = 5; containerLayout.marginWidth = 5; containerLayout.spacing = 5; container.setLayout(containerLayout); container.setLayoutData(new GridData(GridData.FILL_BOTH)); Table table = new Table(container, SWT.CHECK | SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI); String[] columnNames = { Messages.FilteredLoadResourceDialog_ResourcePattern, Messages.FilteredLoadResourceDialog_ResourcePatternDescription }; TableColumn tc0 = new TableColumn(table, SWT.LEFT); tc0.setText(columnNames[0]); tc0.setWidth(100); TableColumn tc1 = new TableColumn(table, SWT.LEFT); tc1.setText(columnNames[1]); tc1.setWidth(140); CheckboxTableViewer tableViewer = new CheckboxTableViewer(table); tableViewer.setContentProvider(new ArrayContentProvider()); tableViewer.setInput(resourcePatterns); tableViewer.setColumnProperties(columnNames); tableViewer.setLabelProvider(new CellLabelProvider() { @Override public void update(ViewerCell cell) { if (cell.getColumnIndex() == 0) cell.setText(((ResourceFilePattern) cell.getElement()).getPattern()); else if (cell.getColumnIndex() == 1) cell.setText(((ResourceFilePattern) cell.getElement()).getDescription()); } }); tableViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent e) { ResourceFilePattern r = (ResourceFilePattern) e.getElement(); if (!filter.isRegisteredExtensionPattern(r.getPattern())) { filter.registerExtensionPattern(r.getPattern()); } else filter.unregisterExtensionPattern(r.getPattern()); } }); tableViewer.setAllChecked(true); table.setHeaderVisible(true); table.setLinesVisible(true); return super.createDialogArea(parent); }
From source file:eu.celar.ui.views.AuthTokenView.java
License:Open Source License
@Override public void createPartControl(final Composite parent) { this.tokenTable = new Table(parent, SWT.CHECK | SWT.MULTI | SWT.FULL_SELECTION); this.tokenTable.setHeaderVisible(true); this.tokenTable.setLinesVisible(true); AuthenticationTokenManager manager = AuthenticationTokenManager.getManager(); this.tokenList = new CheckboxTableViewer(this.tokenTable); this.tokenList.setLabelProvider(new AuthenticationTokenLabelProvider()); this.tokenList.setContentProvider(new AuthenticationTokenContentProvider()); TableColumnListener columnListener = new TableColumnListener(this.tokenList); TableColumn idColumn = new TableColumn(this.tokenTable, SWT.LEFT); idColumn.setText(Messages.getString("AuthTokenView.id_column_label")); //$NON-NLS-1$ idColumn.setWidth(300);/*from w ww . j a v a2 s . co m*/ idColumn.setAlignment(SWT.LEFT); idColumn.addSelectionListener(columnListener); TableColumn typeColumn = new TableColumn(this.tokenTable, SWT.CENTER); typeColumn.setText(Messages.getString("AuthTokenView.type_column_label")); //$NON-NLS-1$ typeColumn.setWidth(150); typeColumn.setAlignment(SWT.CENTER); typeColumn.addSelectionListener(columnListener); TableColumn stateColumn = new TableColumn(this.tokenTable, SWT.CENTER); stateColumn.setText(Messages.getString("AuthTokenView.state_column_label")); //$NON-NLS-1$ stateColumn.setWidth(100); stateColumn.setAlignment(SWT.CENTER); stateColumn.addSelectionListener(columnListener); TableColumn lifetimeColumn = new TableColumn(this.tokenTable, SWT.CENTER); lifetimeColumn.setText(Messages.getString("AuthTokenView.lifetime_column_label")); //$NON-NLS-1$ lifetimeColumn.setWidth(150); lifetimeColumn.setAlignment(SWT.CENTER); lifetimeColumn.addSelectionListener(columnListener); // Initially we sort the tokens by ID, ascending this.tokenTable.setSortColumn(idColumn); this.tokenTable.setSortDirection(SWT.UP); this.tokenList.setComparator(new TableColumnComparator(idColumn)); this.tokenList.setInput(manager); IAuthenticationToken defaultToken = manager.getDefaultToken(); if (defaultToken != null) { this.tokenList.setCheckedElements(new Object[] { defaultToken }); } this.tokenList.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(final SelectionChangedEvent event) { updateActions(); } }); this.tokenList.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(final CheckStateChangedEvent event) { Object element = event.getElement(); if (element instanceof IAuthenticationToken) { IAuthenticationToken token = (IAuthenticationToken) element; AuthenticationTokenManager innerManager = AuthenticationTokenManager.getManager(); if (!event.getChecked()) { innerManager.setDefaultToken(null); } innerManager.setDefaultToken(token); } } }); this.tokenList.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(final DoubleClickEvent e) { showSelectedTokenInfo(); } }); this.tokenTable.addKeyListener(new KeyAdapter() { @Override public void keyPressed(final KeyEvent event) { if (event.character == SWT.DEL && event.stateMask == 0) { removeSelectedTokens(); } } }); manager.addListener(this); createActions(); createToolbar(); createContextMenu(); // Set as selection provider so that properties get updated getSite().setSelectionProvider(this.tokenList); }