List of usage examples for org.eclipse.jface.viewers CheckboxTableViewer setChecked
@Override public boolean setChecked(Object element, boolean state)
From source file:org.eclipse.rcptt.tesla.internal.ui.player.viewers.Viewers.java
License:Open Source License
public static boolean checkTableItem(final boolean newState, final SWTUIElement parent, final String part) { if (parent != null && unwrapWidget(parent) instanceof Table) { // Try to obtain tree viewer final CheckboxTableViewer viewer = TeslaSWTAccess.getCheckboxTableViewer((Table) unwrapWidget(parent)); if (viewer != null) { IContentProvider provider = viewer.getContentProvider(); IBaseLabelProvider labelProvider = viewer.getLabelProvider(); Object input = viewer.getInput(); if (provider instanceof IStructuredContentProvider) { IStructuredContentProvider treeProvider = (IStructuredContentProvider) provider; IBaseLabelProvider labels = labelProvider; Object current = null; Object[] children = treeProvider.getElements(input); boolean found = false; ITableLabelProvider tlp = null; if (labels instanceof ITableLabelProvider) { tlp = (ITableLabelProvider) labels; }// w w w . j a v a 2 s . c om String searchPath = part; int idx = findIndex(searchPath); if (idx > -1) { searchPath = stripIndex(searchPath); } if (labels instanceof CellLabelProvider) { Table table = viewer.getTable(); return checkInStandardTable(newState, parent, part, table); } int currentIdx = 0; for (Object object : children) { if (tlp != null && viewer.getTable().getColumnCount() > 0) { for (int i = 0; i < viewer.getTable().getColumnCount(); i++) { String text = tlp.getColumnText(object, i); if (viewerMatchs(searchPath, text)) { if (idx == currentIdx) { current = object; found = true; break; } currentIdx++; } } } else if (tlp == null && viewer.getTable().getColumnCount() > 0) { for (int i = 0; i < viewer.getTable().getColumnCount(); i++) { CellLabelProvider cellLabelProvider = viewer.getLabelProvider(i); if (cellLabelProvider instanceof ILabelProvider) { String text = ((ILabelProvider) cellLabelProvider).getText(object); if (viewerMatchs(searchPath, text)) { if (idx == currentIdx) { current = object; found = true; break; } currentIdx++; } } } } else { if (labels instanceof ILabelProvider) { String text = ((ILabelProvider) labels).getText(object); if (viewerMatchs(searchPath, text)) { if (idx == currentIdx) { current = object; found = true; break; } currentIdx++; } } } if (found) { break; } } if (found && current != null) { final Object cur = current; final SWTUIPlayer player = parent.getPlayer(); player.exec("checkTableItem for table with viewer", new Runnable() { public void run() { viewer.setChecked(cur, newState); Widget item = viewer.testFindItem(cur); player.getEvents().sendEvent(viewer.getTable(), item, SWT.Selection, SWT.CHECK); // TeslaSWTAccess.fireCheckStateChanged(viewer, // newState, cur); } }); return true; } } } } /* * This case work only with non dynamic tables. */ if (parent != null && unwrapWidget(parent) instanceof Table && part != null) { return checkInStandardTable(newState, parent, part, (Table) unwrapWidget(parent)); } return false; }
From source file:org.eclipse.wst.server.ui.internal.audio.AudioPreferencePage.java
License:Open Source License
protected void setCheckState(CheckboxTableViewer viewer) { AudioCore core = AudioCore.getInstance(); Map<String, String> categories = core.getCategories(); // first, find all the categories and sort List<String> cats = new ArrayList<String>(); Iterator iterator = categories.keySet().iterator(); while (iterator.hasNext()) cats.add((String) iterator.next()); // list them, ignoring empty ones iterator = categories.keySet().iterator(); while (iterator.hasNext()) { String id = (String) iterator.next(); List l = AudioTableContentProvider.getSoundsByCategory(id); if (!l.isEmpty()) { if (core.isCategoryEnabled(id)) viewer.setChecked(id, true); int size = l.size(); for (int i = 0; i < size; i++) { Sound s = (Sound) l.get(i); if (core.isSoundEnabled(s.getId())) viewer.setChecked(s, true); }// www .ja va 2 s. c o m } } // finally, list the "misc" sounds List l = AudioTableContentProvider.getSoundsByCategory(null); if (!l.isEmpty()) { int size = l.size(); for (int i = 0; i < size; i++) { Sound s = (Sound) l.get(i); if (core.isSoundEnabled(s.getId())) viewer.setChecked(s, true); } } }
From source file:org.jboss.tools.arquillian.ui.internal.utils.ArquillianUIUtil.java
License:Open Source License
public static void initializeViewer(CheckboxTableViewer viewer, List<Container> containers) { List<String> selectedProfiles = ArquillianUtility .getProfilesFromPreferences(ArquillianConstants.SELECTED_ARQUILLIAN_PROFILES); List<String> activatedProfiles = ArquillianUtility .getProfilesFromPreferences(ArquillianConstants.ACTIVATED_ARQUILLIAN_PROFILES); for (Container container : containers) { container.setActivate(activatedProfiles.contains(container.getId())); viewer.setChecked(container, selectedProfiles.contains(container.getId())); }/*from w w w . jav a 2s . co m*/ viewer.refresh(); }
From source file:org.jboss.tools.runtime.ui.internal.preferences.RuntimePreferencePage.java
License:Open Source License
private TableViewer createDetectorViewer(Composite parent) { final CheckboxTableViewer tableViewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER | SWT.V_SCROLL | SWT.SINGLE); Table table = tableViewer.getTable(); GridData gd = new GridData(GridData.FILL_BOTH); gd.heightHint = 150;/*from w ww . j av a2 s . c om*/ table.setLayoutData(gd); table.setHeaderVisible(true); table.setLinesVisible(true); String[] columnNames = new String[] { Messages.RuntimePreferencePage_Type, Messages.RuntimePreferencePage_Link }; for (int i = 0; i < columnNames.length; i++) { TableColumn tc = new TableColumn(table, SWT.LEFT); tc.setText(columnNames[i]); } ColumnLayoutData[] layouts = { new ColumnWeightData(300, 300), new ColumnWeightData(100, 50) }; TableLayout layout = new TableLayout(); for (int i = 0; i < layouts.length; i++) { layout.addColumnData(layouts[i]); } table.setLayout(layout); tableViewer.setLabelProvider(new RuntimeDetectorLabelProvider()); tableViewer.setContentProvider(new RuntimeDetectorContentProvider(runtimeDetectors)); tableViewer.setInput(runtimeDetectors); for (IRuntimeDetector detector : runtimeDetectors) { tableViewer.setChecked(detector, detector.isEnabled()); } tableViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { IRuntimeDetector detector = (IRuntimeDetector) event.getElement(); if (detector.isValid()) { detector.setEnabled(!detector.isEnabled()); } else { MessageDialog.openWarning(getShell(), Messages.RuntimePreferencePage_Information, NLS.bind(Messages.RuntimePreferencePage_Detector_is_invalid, detector.getName())); tableViewer.setChecked(detector, false); } } }); for (int i = 0; i < runtimeDetectors.size(); i++) { TableItem item = table.getItem(i); Object data = item.getData(); if (data instanceof IRuntimeDetector) { IRuntimeDetector detector = (IRuntimeDetector) data; final String preferenceId = detector.getPreferenceId(); final String prefName = detector.getName(); if (preferenceId != null && preferenceId.trim().length() > 0) { Link link = new Link(table, SWT.NONE); link.setText(Messages.RuntimePreferencePage_A_Link_a); link.setEnabled(detector.isValid()); TableEditor editor = new TableEditor(table); editor.grabHorizontal = editor.grabVertical = true; editor.setEditor(link, item, 1); link.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { boolean switchPage = true; if (isDirty) switchPage = MessageDialog.open(MessageDialog.QUESTION, getShell(), NLS.bind(Messages.RuntimePreferencePage_Open_preferences, prefName), NLS.bind(Messages.RuntimePreferencePage_You_have_unsaved_changes, prefName), SWT.NONE); if (switchPage) { if (isDirty) { performOk(); RuntimeWorkbenchUtils.refreshPreferencePageUIThread(getShell(), preferenceId); } else { PreferencesUtil.createPreferenceDialogOn(getShell(), preferenceId, null, null); } } } }); } } } return tableViewer; }
From source file:org.jboss.tools.runtime.ui.preferences.RuntimePreferencePage.java
License:Open Source License
private TableViewer createDetectorViewer(Composite parent) { final CheckboxTableViewer tableViewer = CheckboxTableViewer.newCheckList(parent, SWT.BORDER | SWT.V_SCROLL | SWT.SINGLE); Table table = tableViewer.getTable(); GridData gd = new GridData(GridData.FILL_BOTH); gd.heightHint = 150;//from w w w .ja v a 2 s . co m table.setLayoutData(gd); table.setHeaderVisible(true); table.setLinesVisible(true); String[] columnNames = new String[] { "Type", "Link" }; int[] columnWidths = new int[] { 300, 50 }; for (int i = 0; i < columnNames.length; i++) { TableColumn tc = new TableColumn(table, SWT.LEFT); tc.setText(columnNames[i]); tc.setWidth(columnWidths[i]); } tableViewer.setLabelProvider(new RuntimeDetectorLabelProvider()); tableViewer.setContentProvider(new RuntimeDetectorContentProvider(runtimeDetectors)); tableViewer.setInput(runtimeDetectors); for (IRuntimeDetector detector : runtimeDetectors) { tableViewer.setChecked(detector, detector.isEnabled()); } tableViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { IRuntimeDetector detector = (IRuntimeDetector) event.getElement(); if (detector.isValid()) { detector.setEnabled(!detector.isEnabled()); } else { MessageDialog.openWarning(getShell(), "Information", "The '" + detector.getName() + "' detector is invalid."); tableViewer.setChecked(detector, false); } } }); for (int i = 0; i < runtimeDetectors.size(); i++) { TableItem item = table.getItem(i); Object data = item.getData(); if (data instanceof IRuntimeDetector) { IRuntimeDetector detector = (IRuntimeDetector) data; final String preferenceId = detector.getPreferenceId(); final String prefName = detector.getName(); if (preferenceId != null && preferenceId.trim().length() > 0) { Link link = new Link(table, SWT.NONE); link.setText(" <a>Link</a>"); link.setEnabled(detector.isValid()); TableEditor editor = new TableEditor(table); editor.grabHorizontal = editor.grabVertical = true; editor.setEditor(link, item, 1); link.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { boolean switchPage = true; if (isDirty) switchPage = MessageDialog.open(MessageDialog.QUESTION, getShell(), NLS.bind("Open {0} preferences?", prefName), NLS.bind( "You have unsaved changes that needs to be saved to show {0}\npreferences. Do you want to save these changes and open {0} preferences?", prefName), SWT.NONE); if (switchPage) { if (isDirty) { performOk(); RuntimeWorkbenchUtils.refreshPreferencePageUIThread(getShell(), preferenceId); } else { PreferencesUtil.createPreferenceDialogOn(getShell(), preferenceId, null, null); } } } }); } } } return tableViewer; }
From source file:org.jboss.tools.seam.ui.dialog.SeamFacetVersionChangeDialog.java
License:Open Source License
private void check(final CheckboxTableViewer removed, IStructuredContentProvider rContentProvider) { Object[] elements = rContentProvider.getElements(null); for (int i = 0; i < elements.length; i++) { if (elements[i] instanceof File) { File file = (File) elements[i]; removed.setChecked(elements[i], getChecked(file)); }/*from ww w. ja v a2 s .c om*/ } }
From source file:org.key_project.util.eclipse.swt.SWTUtil.java
License:Open Source License
/** * Invokes {@link CheckboxTableViewer#setChecked(Object, boolean)} thread save. * @param viewer The {@link AbstractTableViewer} to invoke method on. * @param element The element to modify its checked state. * @param state The new checked state to set. *//* w w w .ja v a 2s .co m*/ public static void setChecked(final CheckboxTableViewer viewer, final Object element, final boolean state) { if (viewer != null && !viewer.getControl().isDisposed()) { viewer.getControl().getDisplay().syncExec(new Runnable() { @Override public void run() { viewer.setChecked(element, state); } }); } }
From source file:org.marketcetera.photon.internal.strategy.engine.ui.DeployStrategyComposite.java
/** * Constructor. Creates the UI widgets and binds them to the provided model. * //from w w w .ja v a2s .c o m * @param parent * parent composite in which to create the widgets * @param dataBindingContext * the data binding context to use for model-UI bindings * @param strategy * the strategy model object * @param availableEngines * the engines available for selection * @param selectedEngine * the selected engine model * @param scriptSelectionButtons * controls the creation of script selection buttons */ public DeployStrategyComposite(Composite parent, DataBindingContext dataBindingContext, final Strategy strategy, StrategyEngine[] availableEngines, final IObservableValue selectedEngine, ScriptSelectionButton... scriptSelectionButtons) { super(parent); mDataBindingContext = dataBindingContext; mStrategy = strategy; GridLayoutFactory.swtDefaults().spacing(10, 5).numColumns(3).applyTo(this); Messages.STRATEGY_DEPLOYMENT_COMPOSITE_SCRIPT.createLabel(this); final IObservableValue script = observe(StrategyEngineCorePackage.Literals.STRATEGY__SCRIPT_PATH); { Text text = new Text(this, SWT.BORDER); GridDataFactory.swtDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).applyTo(text); bindRequiredField(SWTObservables.observeText(text, SWT.Modify), script, Messages.STRATEGY_DEPLOYMENT_COMPOSITE_SCRIPT.getRawLabel()); script.addValueChangeListener(new IValueChangeListener() { @Override public void handleValueChange(ValueChangeEvent event) { scriptValueChanged(); } }); scriptValueChanged(); } { final Composite buttons = new Composite(this, SWT.NONE); for (ScriptSelectionButton scriptSelectionButton : scriptSelectionButtons) { final ScriptSelectionButton current = scriptSelectionButton; Button button = new Button(buttons, SWT.NONE); button.setText(scriptSelectionButton.getText()); button.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { final String selected = current.selectScript(getShell(), (String) script.getValue()); if (StringUtils.isNotBlank(selected)) { script.setValue(selected.trim()); } } }); } GridDataFactory.fillDefaults().applyTo(buttons); GridLayoutFactory.swtDefaults().numColumns(scriptSelectionButtons.length).generateLayout(buttons); } Messages.STRATEGY_DEPLOYMENT_COMPOSITE_LANGUAGE.createLabel(this); { Combo combo = new Combo(this, SWT.NONE); combo.setItems(Language.getValues()); GridDataFactory.swtDefaults().align(SWT.LEFT, SWT.CENTER).hint(100, SWT.DEFAULT).applyTo(combo); bindRequiredField(SWTObservables.observeText(combo), observe(StrategyEngineCorePackage.Literals.STRATEGY__LANGUAGE), Messages.STRATEGY_DEPLOYMENT_COMPOSITE_LANGUAGE.getRawLabel()); } new Label(this, SWT.NONE); Messages.STRATEGY_DEPLOYMENT_COMPOSITE_CLASS.createLabel(this); { Text classText = new Text(this, SWT.BORDER); GridDataFactory.swtDefaults().align(SWT.LEFT, SWT.CENTER).hint(180, SWT.DEFAULT).applyTo(classText); bindRequiredField(SWTObservables.observeText(classText, SWT.Modify), observe(StrategyEngineCorePackage.Literals.STRATEGY__CLASS_NAME), Messages.STRATEGY_DEPLOYMENT_COMPOSITE_CLASS.getRawLabel()); } new Label(this, SWT.NONE); Messages.STRATEGY_DEPLOYMENT_COMPOSITE_INSTANCE_NAME.createLabel(this); { Text instanceNameText = new Text(this, SWT.BORDER); GridDataFactory.swtDefaults().align(SWT.LEFT, SWT.CENTER).hint(180, SWT.DEFAULT) .applyTo(instanceNameText); bindRequiredField(SWTObservables.observeText(instanceNameText, SWT.Modify), observe(StrategyEngineCorePackage.Literals.STRATEGY__INSTANCE_NAME), Messages.DEPLOYED_STRATEGY_CONFIGURATION_COMPOSITE_INSTANCE_NAME.getRawLabel()); } new Label(this, SWT.NONE); { Group configurationGroup = new Group(this, SWT.NONE); GridDataFactory.swtDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).indent(5, SWT.DEFAULT) .span(3, 1).applyTo(configurationGroup); GridLayoutFactory.swtDefaults().applyTo(configurationGroup); configurationGroup.setText(Messages.STRATEGY_DEPLOYMENT_COMPOSITE_CONFIGURATION_GROUP__LABEL.getText()); { Button routeButton = new Button(configurationGroup, SWT.CHECK); routeButton.setText(Messages.STRATEGY_DEPLOYMENT_COMPOSITE_ROUTE.getRawLabel()); routeButton.setToolTipText(Messages.STRATEGY_DEPLOYMENT_COMPOSITE_ROUTE.getTooltip()); dataBindingContext.bindValue(SWTObservables.observeSelection(routeButton), observe(StrategyEngineCorePackage.Literals.STRATEGY__ROUTE_ORDERS_TO_SERVER)); } } { Label selectionEnginesLabel = new Label(this, SWT.NONE); GridDataFactory.swtDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(3, 1) .applyTo(selectionEnginesLabel); selectionEnginesLabel .setText(Messages.STRATEGY_DEPLOYMENT_COMPOSITE_ENGINE_SELECTION_TABLE__LABEL.getText()); } { final CheckboxTableViewer selectEnginesTableViewer = CheckboxTableViewer.newCheckList(this, SWT.BORDER); GridDataFactory.fillDefaults().grab(true, true).indent(6, SWT.DEFAULT).span(3, 1) .applyTo(selectEnginesTableViewer.getTable()); selectEnginesTableViewer.setContentProvider(new ArrayContentProvider()); selectEnginesTableViewer.setLabelProvider(new StrategyEnginesLabelProvider()); selectEnginesTableViewer.setInput(availableEngines); /* * Typically, checkbox tables allow multiple selection. In this * case, we are using the widget for a single selection so we need a * custom listener. It is also a WritableValue and IViewerObservable * for data binding and RequiredFieldSupport. */ class FirstAndOnly extends WritableValue implements IViewerObservable, ICheckStateListener { public FirstAndOnly() { super(selectedEngine.getValue(), StrategyEngine.class); } @Override public Viewer getViewer() { return selectEnginesTableViewer; } @Override public void checkStateChanged(CheckStateChangedEvent event) { // simulate single selection if (event.getChecked()) { for (Object object : selectEnginesTableViewer.getCheckedElements()) { if (object != event.getElement()) { selectEnginesTableViewer.setChecked(object, false); } else { setValue(object); } } } else { setValue(null); } } } // if an engine has been pre-selected, check it and disable the // table if (selectedEngine.getValue() != null) { selectEnginesTableViewer.getTable().setEnabled(false); selectEnginesTableViewer.setChecked(selectedEngine.getValue(), true); } FirstAndOnly firstAndOnly = new FirstAndOnly(); selectEnginesTableViewer.addCheckStateListener(firstAndOnly); getObservablesManager().addObservable(firstAndOnly); bindRequiredField(firstAndOnly, selectedEngine, Messages.STRATEGY_DEPLOYMENT_COMPOSITE_ENGINE__LABEL.getText()); } }
From source file:org.nuxeo.ide.sdk.ui.widgets.SDKTableViewerFactory.java
License:Open Source License
public static CheckboxTableViewer getTable(Composite parent) { final CheckboxTableViewer tv = CheckboxTableViewer.newCheckList(parent, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER); tv.setContentProvider(new SDKContentProvider()); TableViewerColumn column = new TableViewerColumn(tv, SWT.NONE); column.setLabelProvider(new ColumnLabelProvider() { @Override// w w w. jav a2s . c o m public String getText(Object element) { return ((SDKInfo) element).getName(); } @Override public Image getImage(Object element) { return JavaUI.getSharedImages().getImage(ISharedImages.IMG_OBJS_LIBRARY); } }); TableColumn col = column.getColumn(); col.setText("Name"); col.setWidth(100); col.setResizable(true); column = new TableViewerColumn(tv, SWT.NONE); column.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((SDKInfo) element).getVersion(); } }); col = column.getColumn(); col.setText("Version"); col.setWidth(100); col.setResizable(true); column = new TableViewerColumn(tv, SWT.NONE); column.setLabelProvider(new ColumnLabelProvider() { @Override public String getText(Object element) { return ((SDKInfo) element).getInstallDirectory().getAbsolutePath(); } }); col = column.getColumn(); col.setText("Install Location"); col.setWidth(350); col.setResizable(true); tv.getTable().setHeaderVisible(true); tv.getTable().setLinesVisible(true); tv.setInput(Boolean.TRUE); // dummy input tv.addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(CheckStateChangedEvent event) { if (event.getChecked()) { Object target = event.getElement(); for (Object alreadyChecked : tv.getCheckedElements()) { if (!target.equals(alreadyChecked)) { tv.setChecked(alreadyChecked, false); } } } } }); return tv; }
From source file:org.objectstyle.wolips.jdt.ui.WOFrameworkContainerPage.java
License:Open Source License
public void createControl(Composite parent) { Composite thisPage = new Composite(parent, SWT.NONE); thisPage.setLayoutData(new GridData(GridData.FILL_BOTH)); thisPage.setLayout(new GridLayout()); _frameworkTableViewer = CheckboxTableViewer.newCheckList(thisPage, SWT.MULTI | SWT.BORDER); TableColumn frameworkNameColumn = new TableColumn(_frameworkTableViewer.getTable(), SWT.NONE); frameworkNameColumn.setText("Name"); frameworkNameColumn.setWidth(200);/*ww w.j a v a 2 s.c o m*/ TableColumn rootNameColumn = new TableColumn(_frameworkTableViewer.getTable(), SWT.NONE); rootNameColumn.setText("Location"); rootNameColumn.setWidth(200); GridData tableLayoutData = new GridData(GridData.FILL_BOTH); tableLayoutData.heightHint = 200; _frameworkTableViewer.getTable().setHeaderVisible(true); _frameworkTableViewer.getTable().setLayoutData(tableLayoutData); _frameworkTableViewer.setSorter(new ViewerSorter()); // _frameworkTableViewer.addSelectionChangedListener(this); final CheckboxTableViewer finalFrameworkTableViewer = _frameworkTableViewer; _frameworkTableViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { IEclipseFramework checkedFramework = (IEclipseFramework) event.getElement(); if (!event.getChecked() && isFrameworkUsed(checkedFramework)) { finalFrameworkTableViewer.setChecked(checkedFramework, true); } } }); WOFrameworkContentProvider frameworkContentProvider = new WOFrameworkContentProvider(_frameworks); WOFrameworkLabelProvider labelProvider = new WOFrameworkLabelProvider(_usedFrameworks); _frameworkTableViewer.setContentProvider(frameworkContentProvider); _frameworkTableViewer.setLabelProvider(labelProvider); _frameworkTableViewer.setInput(frameworkContentProvider); _frameworkTableViewer.setGrayedElements(_usedFrameworks.toArray()); _frameworkTableViewer.setCheckedElements(_usedFrameworks.toArray()); setControl(thisPage); // frameworkChanged(); }