List of usage examples for org.eclipse.jface.viewers CheckboxTableViewer newCheckList
public static CheckboxTableViewer newCheckList(Composite parent, int style)
From source file:org.eclipse.ui.ide.markers.compatibility.internal.FiltersConfigurationDialog.java
License:Open Source License
/** * Create the area for selecting the filters and enabling/disabling them. * /*w w w.j av a 2s . c om*/ * @param top */ private void createFilterSelectionArea(Composite top) { Composite filtersComposite = new Composite(top, SWT.NONE); filtersComposite.setLayout(new GridLayout(2, false)); filtersComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Label title = new Label(filtersComposite, SWT.NONE); title.setText(MarkerMessages.filtersDialog_entriesTitle); GridData titleData = new GridData(); titleData.horizontalSpan = 2; title.setLayoutData(titleData); filtersList = CheckboxTableViewer.newCheckList(filtersComposite, SWT.BORDER); filtersList.setContentProvider(new IStructuredContentProvider() { /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.IContentProvider#dispose() */ public void dispose() { // Do nothing } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object) */ public Object[] getElements(Object inputElement) { return filterGroups.toArray(); } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, * java.lang.Object, java.lang.Object) */ public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { // Do nothing } }); filtersList.setLabelProvider(new LabelProvider() { /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object) */ public String getText(Object element) { return ((MarkerFieldFilterGroup) element).getName(); } }); if (selectedFilterGroup != null) filtersList.setSelection(new StructuredSelection(selectedFilterGroup)); filtersList.addSelectionChangedListener(new ISelectionChangedListener() { /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent) */ public void selectionChanged(SelectionChangedEvent event) { setSelectedFilter( (MarkerFieldFilterGroup) ((IStructuredSelection) event.getSelection()).getFirstElement()); } }); filtersList.setInput(this); Iterator filterIterator = filterGroups.iterator(); while (filterIterator.hasNext()) { MarkerFieldFilterGroup group = (MarkerFieldFilterGroup) filterIterator.next(); filtersList.setChecked(group, group.isEnabled()); } GridData listData = new GridData(SWT.FILL, SWT.FILL, true, true); listData.widthHint = convertHorizontalDLUsToPixels(100); filtersList.getControl().setLayoutData(listData); Composite buttons = new Composite(filtersComposite, SWT.NONE); GridLayout buttonLayout = new GridLayout(); buttonLayout.marginWidth = 0; buttons.setLayout(buttonLayout); GridData buttonsData = new GridData(); buttonsData.verticalAlignment = GridData.BEGINNING; buttons.setLayoutData(buttonsData); Button addNew = new Button(buttons, SWT.PUSH); addNew.setText(MarkerMessages.MarkerFilter_addFilterName); addNew.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { InputDialog newDialog = new InputDialog(getShell(), MarkerMessages.MarkerFilterDialog_title, MarkerMessages.MarkerFilterDialog_message, MarkerMessages.MarkerFilter_newFilterName, new IInputValidator() { /* * (non-Javadoc) * * @see org.eclipse.jface.dialogs.IInputValidator#isValid(java.lang.String) */ public String isValid(String newText) { if (newText.length() == 0) return MarkerMessages.MarkerFilterDialog_emptyMessage; Iterator filterIterator = filterGroups.iterator(); while (filterIterator.hasNext()) { if (((MarkerFieldFilterGroup) filterIterator.next()).getName().equals(newText)) return NLS.bind(MarkerMessages.filtersDialog_conflictingName, newText); } return null; } }); if (Window.OK == newDialog.open()) { String newName = newDialog.getValue(); if (newName != null) { createNewFilter(newName); } } } }); setButtonLayoutData(addNew); removeButton = new Button(buttons, SWT.PUSH); removeButton.setText(MarkerMessages.MarkerFilter_deleteSelectedName); removeButton.addSelectionListener(new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { removeFilters(filtersList.getSelection()); } }); setButtonLayoutData(removeButton); Button andButton = new Button(filtersComposite, SWT.RADIO); GridData data = new GridData(GridData.FILL_HORIZONTAL, SWT.NONE, true, false); data.horizontalSpan = 2; andButton.setLayoutData(data); andButton.setText(MarkerMessages.AND_Title); andButton.setSelection(andFilters); andButton.addSelectionListener(new SelectionAdapter() { /* * (non-Javadoc) * * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent) */ public void widgetSelected(SelectionEvent e) { andFilters = true; } }); Button orButton = new Button(filtersComposite, SWT.RADIO); data = new GridData(GridData.FILL_HORIZONTAL, SWT.NONE, true, false); data.horizontalSpan = 2; orButton.setLayoutData(data); orButton.setText(MarkerMessages.OR_Title); orButton.setSelection(!andFilters); orButton.addSelectionListener(new SelectionAdapter() { /* * (non-Javadoc) * * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent) */ public void widgetSelected(SelectionEvent e) { andFilters = false; } }); }
From source file:org.eclipse.ui.ide.markers.compatibility.internal.QuickFixPage.java
License:Open Source License
/** * Create the table that shows the markers. * //from w ww .ja v a 2 s .co m * @param control */ private void createMarkerTable(Composite control) { markersTable = CheckboxTableViewer.newCheckList(control, SWT.BORDER | SWT.V_SCROLL | SWT.SINGLE); createTableColumns(); markersTable.setContentProvider(new IStructuredContentProvider() { /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.IContentProvider#dispose() */ public void dispose() { } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object) */ public Object[] getElements(Object inputElement) { IMarkerResolution selected = getSelectedResolution(); if (selected == null) { return new Object[0]; } if (resolutions.containsKey(selected)) { return ((Collection) resolutions.get(selected)).toArray(); } return MarkerSupportInternalUtilities.EMPTY_MARKER_ARRAY; } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, * java.lang.Object, java.lang.Object) */ public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } }); markersTable.setLabelProvider(new ITableLabelProvider() { /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnImage(java.lang.Object, * int) */ public Image getColumnImage(Object element, int columnIndex) { if (columnIndex == 0) return Util.getImage(((IMarker) element).getAttribute(IMarker.SEVERITY, -1)); return null; } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, * int) */ public String getColumnText(Object element, int columnIndex) { if (columnIndex == 0) return Util.getResourceName((IMarker) element); int line = ((IMarker) element).getAttribute(IMarker.LINE_NUMBER, -1); if (line < 0) { return MarkerMessages.Unknown; } return NLS.bind(MarkerMessages.label_lineNumber, Integer.toString(line)); } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener) */ public void addListener(ILabelProviderListener listener) { // do nothing } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose() */ public void dispose() { // do nothing } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, * java.lang.String) */ public boolean isLabelProperty(Object element, String property) { return false; } /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener) */ public void removeListener(ILabelProviderListener listener) { // do nothing } }); markersTable.addCheckStateListener(new ICheckStateListener() { /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.ICheckStateListener#checkStateChanged(org.eclipse.jface.viewers.CheckStateChangedEvent) */ public void checkStateChanged(CheckStateChangedEvent event) { if (event.getChecked() == true) { setPageComplete(true); } else { setPageComplete(markersTable.getCheckedElements().length > 0); } } }); markersTable.addSelectionChangedListener(new ISelectionChangedListener() { /* * (non-Javadoc) * * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent) */ public void selectionChanged(SelectionChangedEvent event) { if (event.getSelection().isEmpty()) return; IMarker marker = (IMarker) ((IStructuredSelection) event.getSelection()).getFirstElement(); ExtendedMarkersView.openMarkerInEditor(marker, site.getPage()); } }); markersTable.setInput(this); }
From source file:org.eclipse.ui.internal.activities.ws.EnablementDialog.java
License:Open Source License
protected Control createDialogArea(Composite parent) { Composite composite = (Composite) super.createDialogArea(parent); Font dialogFont = parent.getFont(); composite.setFont(dialogFont);//w ww . j a va 2 s. c o m Label text = new Label(composite, SWT.NONE); text.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); text.setFont(dialogFont); IActivityManager manager = PlatformUI.getWorkbench().getActivitySupport().getActivityManager(); if (activityIds.size() == 1) { String activityId = (String) activityIds.iterator().next(); activitiesToEnable.add(activityId); selectedActivity = activityId; IActivity activity = manager.getActivity(activityId); String activityText; try { activityText = activity.getName(); } catch (NotDefinedException e) { activityText = activity.getId(); } text.setText(MessageFormat.format(RESOURCE_BUNDLE.getString("requiresSingle"), //$NON-NLS-1$ new Object[] { activityText })); text = new Label(composite, SWT.NONE); text.setText(strings.getProperty(WorkbenchTriggerPointAdvisor.PROCEED_SINGLE, RESOURCE_BUNDLE.getString(WorkbenchTriggerPointAdvisor.PROCEED_SINGLE))); text.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); text.setFont(dialogFont); } else { text.setText(RESOURCE_BUNDLE.getString("requiresMulti")); //$NON-NLS-1$ Set activityIdsCopy = new HashSet(activityIds); CheckboxTableViewer viewer = CheckboxTableViewer.newCheckList(composite, SWT.CHECK | SWT.BORDER | SWT.SINGLE); viewer.setContentProvider(new ActivityContentProvider()); viewer.setLabelProvider(new ActivityLabelProvider(manager)); viewer.setInput(activityIdsCopy); viewer.setCheckedElements(activityIdsCopy.toArray()); viewer.addCheckStateListener(new ICheckStateListener() { /* (non-Javadoc) * @see org.eclipse.jface.viewers.ICheckStateListener#checkStateChanged(org.eclipse.jface.viewers.CheckStateChangedEvent) */ public void checkStateChanged(CheckStateChangedEvent event) { if (event.getChecked()) { activitiesToEnable.add(event.getElement()); } else { activitiesToEnable.remove(event.getElement()); } getButton(Window.OK).setEnabled(!activitiesToEnable.isEmpty()); } }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { /* (non-Javadoc) * @see org.eclipse.jface.viewers.ISelectionChangedListener#selectionChanged(org.eclipse.jface.viewers.SelectionChangedEvent) */ public void selectionChanged(SelectionChangedEvent event) { selectedActivity = (String) ((IStructuredSelection) event.getSelection()).getFirstElement(); setDetails(); } }); activitiesToEnable.addAll(activityIdsCopy); viewer.getControl().setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); viewer.getControl().setFont(dialogFont); text = new Label(composite, SWT.NONE); text.setText(strings.getProperty(WorkbenchTriggerPointAdvisor.PROCEED_MULTI, RESOURCE_BUNDLE.getString(WorkbenchTriggerPointAdvisor.PROCEED_MULTI))); text.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); text.setFont(dialogFont); } Label seperator = new Label(composite, SWT.SEPARATOR | SWT.HORIZONTAL); seperator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); dontAskButton = new Button(composite, SWT.CHECK); dontAskButton.setSelection(false); dontAskButton.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); dontAskButton.setText(strings.getProperty(WorkbenchTriggerPointAdvisor.DONT_ASK, RESOURCE_BUNDLE.getString(WorkbenchTriggerPointAdvisor.DONT_ASK))); dontAskButton.setFont(dialogFont); detailsComposite = new Composite(composite, SWT.NONE); GridLayout layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; detailsComposite.setLayout(layout); detailsLabel = new Label(detailsComposite, SWT.NONE); detailsLabel.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); detailsLabel.setFont(dialogFont); detailsText = new Text(detailsComposite, SWT.WRAP | SWT.V_SCROLL | SWT.BORDER | SWT.READ_ONLY); detailsText.setLayoutData(new GridData(GridData.FILL_BOTH)); detailsText.setFont(dialogFont); setDetails(); GridData data = new GridData(GridData.FILL_BOTH); detailsComposite.setLayoutData(data); setDetailHints(); return composite; }
From source file:org.eclipse.ui.internal.dialogs.cpd.CustomizePerspectiveDialog.java
License:Open Source License
private Composite createShortCutsPage(Composite parent) { GridData data;// www . jav a2 s. c o m Composite menusComposite = new Composite(parent, SWT.NONE); GridLayout layout = new GridLayout(); menusComposite.setLayout(layout); // Select... label Label label = new Label(menusComposite, SWT.WRAP); label.setText(NLS.bind(WorkbenchMessages.Shortcuts_selectShortcutsLabel, perspective.getDesc().getLabel())); data = new GridData(SWT.FILL, SWT.CENTER, true, false); label.setLayoutData(data); Label sep = new Label(menusComposite, SWT.HORIZONTAL | SWT.SEPARATOR); sep.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); SashForm sashComposite = new SashForm(menusComposite, SWT.HORIZONTAL); data = new GridData(SWT.FILL, SWT.FILL, true, true); sashComposite.setLayoutData(data); // Menus List Composite menusGroup = new Composite(sashComposite, SWT.NONE); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; menusGroup.setLayout(layout); menusGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); label = new Label(menusGroup, SWT.WRAP); label.setText(WorkbenchMessages.Shortcuts_availableMenus); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); Combo menusCombo = new Combo(menusGroup, SWT.READ_ONLY); menusCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); ComboViewer menusViewer = new ComboViewer(menusCombo); menusViewer.setContentProvider(TreeManager.getTreeContentProvider()); menusViewer.setLabelProvider(TreeManager.getLabelProvider()); // Categories Tree label = new Label(menusGroup, SWT.WRAP); label.setText(WorkbenchMessages.Shortcuts_availableCategories); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); final CheckboxTreeViewer menuCategoriesViewer = new CheckboxTreeViewer(menusGroup); menuCategoriesViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); menuCategoriesViewer.setLabelProvider(TreeManager.getLabelProvider()); menuCategoriesViewer.setContentProvider(TreeManager.getTreeContentProvider()); menuCategoriesViewer.setComparator(new WorkbenchViewerComparator()); menuCategoriesViewer.setCheckStateProvider(new CategoryCheckProvider()); menuCategoriesViewer.addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(CheckStateChangedEvent event) { Category category = (Category) event.getElement(); category.setItemsState(event.getChecked()); updateCategoryAndParents(menuCategoriesViewer, category); } }); treeManager.addListener(new CheckListener() { @Override public void checkChanged(TreeItem changedItem) { if (changedItem instanceof Category) { menuCategoriesViewer.update(changedItem, null); } else if (changedItem instanceof ShortcutItem) { ShortcutItem item = (ShortcutItem) changedItem; if (item.getCategory() != null) { item.getCategory().update(); updateCategoryAndParents(menuCategoriesViewer, item.getCategory()); } } } }); // Menu items list Composite menuItemsGroup = new Composite(sashComposite, SWT.NONE); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; menuItemsGroup.setLayout(layout); menuItemsGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); label = new Label(menuItemsGroup, SWT.WRAP); label.setText(WorkbenchMessages.Shortcuts_allShortcuts); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); final CheckboxTableViewer menuItemsViewer = CheckboxTableViewer.newCheckList(menuItemsGroup, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); Table menuTable = menuItemsViewer.getTable(); menuTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); menuItemsViewer.setLabelProvider(new ShortcutLabelProvider()); menuItemsViewer.setCheckStateProvider(TreeManager.getCheckStateProvider()); menuItemsViewer.addCheckStateListener(treeManager.getViewerCheckStateListener()); treeManager.getCheckListener(menuItemsViewer); menuItemsViewer.setContentProvider(new TreeManager.TreeItemContentProvider() { @Override public Object[] getChildren(Object parentElement) { if (parentElement instanceof Category) { return ((Category) parentElement).getContributionItems().toArray(); } return super.getChildren(parentElement); } }); menuItemsViewer.setComparator(new WorkbenchViewerComparator()); // update menuCategoriesViewer, and menuItemsViewer on a change to // menusViewer menusViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { Category category = (Category) ((IStructuredSelection) event.getSelection()).getFirstElement(); menuCategoriesViewer.setInput(category); menuItemsViewer.setInput(category); if (category.getChildrenCount() != 0) { setSelectionOn(menuCategoriesViewer, category.getChildren().get(0)); } } }); // update menuItemsViewer on a change to menuCategoriesViewer menuCategoriesViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { Category category = (Category) ((IStructuredSelection) event.getSelection()).getFirstElement(); menuItemsViewer.setInput(category); } }); menuTable.setHeaderVisible(true); int[] columnWidths = new int[shortcutMenuColumnWidths.length]; for (int i = 0; i < shortcutMenuColumnWidths.length; i++) { columnWidths[i] = convertHorizontalDLUsToPixels(shortcutMenuColumnWidths[i]); } for (int i = 0; i < shortcutMenuColumnHeaders.length; i++) { TableColumn tc = new TableColumn(menuTable, SWT.NONE, i); tc.setResizable(true); tc.setText(shortcutMenuColumnHeaders[i]); tc.setWidth(columnWidths[i]); } sashComposite.setWeights(new int[] { 30, 70 }); menusViewer.setInput(shortcuts); if (shortcuts.getChildrenCount() > 0) { setSelectionOn(menusViewer, shortcuts.getChildren().get(0)); } return menusComposite; }
From source file:org.eclipse.ui.internal.dialogs.cpd.CustomizePerspectiveDialog.java
License:Open Source License
private Composite createActionSetAvailabilityPage(Composite parent) { GridData data;/*w w w . ja v a 2s .c om*/ Composite actionSetsComposite = new Composite(parent, SWT.NONE); GridLayout layout = new GridLayout(); actionSetsComposite.setLayout(layout); // Select... label Label label = new Label(actionSetsComposite, SWT.WRAP); label.setText(NLS.bind(WorkbenchMessages.ActionSetSelection_selectActionSetsLabel, perspective.getDesc().getLabel())); data = new GridData(SWT.FILL, SWT.CENTER, true, false); label.setLayoutData(data); Label sep = new Label(actionSetsComposite, SWT.HORIZONTAL | SWT.SEPARATOR); sep.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); SashForm sashComposite = new SashForm(actionSetsComposite, SWT.HORIZONTAL); data = new GridData(SWT.FILL, SWT.FILL, true, true); sashComposite.setLayoutData(data); // Action Set List Composite Composite actionSetGroup = new Composite(sashComposite, SWT.NONE); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; actionSetGroup.setLayout(layout); actionSetGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); label = new Label(actionSetGroup, SWT.WRAP); label.setText(WorkbenchMessages.ActionSetSelection_availableActionSets); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); final CheckboxTableViewer actionSetsViewer = CheckboxTableViewer.newCheckList(actionSetGroup, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); actionSetAvailabilityTable = actionSetsViewer; actionSetsViewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); actionSetsViewer.setContentProvider(new ArrayContentProvider()); actionSetsViewer.setComparator(new WorkbenchViewerComparator()); actionSetsViewer.setCheckStateProvider(new ICheckStateProvider() { @Override public boolean isChecked(Object element) { return ((ActionSet) element).isActive(); } @Override public boolean isGrayed(Object element) { return false; } }); actionSetsViewer.setInput(actionSets.toArray()); Table table = actionSetsViewer.getTable(); new TableToolTip(table); final ActionSet[] selectedActionSet = { null }; // Filter to show only branches necessary for the selected action set. final ViewerFilter setFilter = new ViewerFilter() { @Override public boolean select(Viewer viewer, Object parentElement, Object element) { if (selectedActionSet[0] == null) { return false; } return includeInSetStructure((DisplayItem) element, selectedActionSet[0]); } }; // Updates the check state of action sets actionSetsViewer.addCheckStateListener(new ICheckStateListener() { @Override public void checkStateChanged(CheckStateChangedEvent event) { final ActionSet actionSet = (ActionSet) event.getElement(); if (event.getChecked()) { actionSet.setActive(true); for (DisplayItem item : actionSet.contributionItems) { item.setCheckState(true); } } else { actionSet.setActive(false); } } }); // Menu and toolbar composite Composite actionGroup = new Composite(sashComposite, SWT.NONE); layout = new GridLayout(); layout.numColumns = 2; layout.makeColumnsEqualWidth = true; layout.marginHeight = 0; layout.marginWidth = 0; layout.horizontalSpacing = 0; actionGroup.setLayout(layout); actionGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Composite menubarGroup = new Composite(actionGroup, SWT.NONE); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; menubarGroup.setLayout(layout); menubarGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); label = new Label(menubarGroup, SWT.WRAP); label.setText(WorkbenchMessages.ActionSetSelection_menubarActions); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); actionSetMenuViewer = new TreeViewer(menubarGroup); actionSetMenuViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); actionSetMenuViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); actionSetMenuViewer.setUseHashlookup(true); actionSetMenuViewer.setContentProvider(TreeManager.getTreeContentProvider()); actionSetMenuViewer.setLabelProvider(new GrayOutUnavailableLabelProvider(null)); actionSetMenuViewer.addFilter(setFilter); actionSetMenuViewer.setInput(menuItems); Tree tree = actionSetMenuViewer.getTree(); new ItemDetailToolTip(this, actionSetMenuViewer, tree, false, true, setFilter); Composite toolbarGroup = new Composite(actionGroup, SWT.NONE); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; toolbarGroup.setLayout(layout); toolbarGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); label = new Label(toolbarGroup, SWT.WRAP); label.setText(WorkbenchMessages.ActionSetSelection_toolbarActions); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); actionSetToolbarViewer = new TreeViewer(toolbarGroup); actionSetToolbarViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); actionSetToolbarViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); actionSetToolbarViewer.setContentProvider(TreeManager.getTreeContentProvider()); actionSetToolbarViewer.setLabelProvider(new GrayOutUnavailableLabelProvider(null)); actionSetToolbarViewer.addFilter(setFilter); actionSetToolbarViewer.setInput(toolBarItems); tree = actionSetToolbarViewer.getTree(); new ItemDetailToolTip(this, actionSetToolbarViewer, tree, false, true, setFilter); // Updates the menu item and toolbar items tree viewers when the // selection changes actionSetsViewer.addSelectionChangedListener(new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { selectedActionSet[0] = (ActionSet) ((IStructuredSelection) event.getSelection()).getFirstElement(); actionSetMenuViewer.setInput(menuItems); actionSetToolbarViewer.setInput(toolBarItems); } }); sashComposite.setWeights(new int[] { 30, 70 }); return actionSetsComposite; }
From source file:org.eclipse.ui.internal.dialogs.CustomizePerspectiveDialog.java
License:Open Source License
private Composite createShortCutsPage(Composite parent) { GridData data;//from www . j a va2 s . c om Composite menusComposite = new Composite(parent, SWT.NONE); GridLayout layout = new GridLayout(); menusComposite.setLayout(layout); // Select... label Label label = new Label(menusComposite, SWT.WRAP); label.setText(NLS.bind(WorkbenchMessages.Shortcuts_selectShortcutsLabel, perspective.getDesc().getLabel())); data = new GridData(SWT.FILL, SWT.CENTER, true, false); label.setLayoutData(data); Label sep = new Label(menusComposite, SWT.HORIZONTAL | SWT.SEPARATOR); sep.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); SashForm sashComposite = new SashForm(menusComposite, SWT.HORIZONTAL); data = new GridData(SWT.FILL, SWT.FILL, true, true); sashComposite.setLayoutData(data); // Menus List Composite menusGroup = new Composite(sashComposite, SWT.NONE); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; menusGroup.setLayout(layout); menusGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); label = new Label(menusGroup, SWT.WRAP); label.setText(WorkbenchMessages.Shortcuts_availableMenus); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); Combo menusCombo = new Combo(menusGroup, SWT.READ_ONLY); menusCombo.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); ComboViewer menusViewer = new ComboViewer(menusCombo); menusViewer.setContentProvider(TreeManager.getTreeContentProvider()); menusViewer.setLabelProvider(TreeManager.getLabelProvider()); // Categories Tree label = new Label(menusGroup, SWT.WRAP); label.setText(WorkbenchMessages.Shortcuts_availableCategories); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); final CheckboxTreeViewer menuCategoriesViewer = new CheckboxTreeViewer(menusGroup); menuCategoriesViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); menuCategoriesViewer.setLabelProvider(TreeManager.getLabelProvider()); menuCategoriesViewer.setContentProvider(TreeManager.getTreeContentProvider()); menuCategoriesViewer.setComparator(new WorkbenchViewerComparator()); menuCategoriesViewer.setCheckStateProvider(new CategoryCheckProvider()); menuCategoriesViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { Category category = (Category) event.getElement(); category.setItemsState(event.getChecked()); updateCategoryAndParents(menuCategoriesViewer, category); } }); treeManager.addListener(new CheckListener() { public void checkChanged(TreeItem changedItem) { if (changedItem instanceof Category) { menuCategoriesViewer.update(changedItem, null); } else if (changedItem instanceof ShortcutItem) { ShortcutItem item = (ShortcutItem) changedItem; if (item.getCategory() != null) { item.getCategory().update(); updateCategoryAndParents(menuCategoriesViewer, item.getCategory()); } } } }); // Menu items list Composite menuItemsGroup = new Composite(sashComposite, SWT.NONE); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; menuItemsGroup.setLayout(layout); menuItemsGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); label = new Label(menuItemsGroup, SWT.WRAP); label.setText(WorkbenchMessages.Shortcuts_allShortcuts); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); final CheckboxTableViewer menuItemsViewer = CheckboxTableViewer.newCheckList(menuItemsGroup, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); Table menuTable = menuItemsViewer.getTable(); menuTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); menuItemsViewer.setLabelProvider(new ShortcutLabelProvider()); menuItemsViewer.setCheckStateProvider(TreeManager.getCheckStateProvider()); menuItemsViewer.addCheckStateListener(treeManager.getViewerCheckStateListener()); treeManager.getCheckListener(menuItemsViewer); menuItemsViewer.setContentProvider(new TreeManager.TreeItemContentProvider() { public Object[] getChildren(Object parentElement) { if (parentElement instanceof Category) return ((Category) parentElement).getContributionItems().toArray(); return super.getChildren(parentElement); } }); menuItemsViewer.setComparator(new WorkbenchViewerComparator()); // update menuCategoriesViewer, and menuItemsViewer on a change to // menusViewer menusViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { Category category = (Category) ((IStructuredSelection) event.getSelection()).getFirstElement(); menuCategoriesViewer.setInput(category); menuItemsViewer.setInput(category); if (category.getChildren().size() != 0) { setSelectionOn(menuCategoriesViewer, category.getChildren().get(0)); } } }); // update menuItemsViewer on a change to menuCategoriesViewer menuCategoriesViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { Category category = (Category) ((IStructuredSelection) event.getSelection()).getFirstElement(); menuItemsViewer.setInput(category); } }); menuTable.setHeaderVisible(true); int[] columnWidths = new int[shortcutMenuColumnWidths.length]; for (int i = 0; i < shortcutMenuColumnWidths.length; i++) { columnWidths[i] = convertHorizontalDLUsToPixels(shortcutMenuColumnWidths[i]); } for (int i = 0; i < shortcutMenuColumnHeaders.length; i++) { TableColumn tc = new TableColumn(menuTable, SWT.NONE, i); tc.setResizable(true); tc.setText(shortcutMenuColumnHeaders[i]); tc.setWidth(columnWidths[i]); } sashComposite.setWeights(new int[] { 30, 70 }); menusViewer.setInput(shortcuts); if (shortcuts.getChildren().size() > 0) { setSelectionOn(menusViewer, shortcuts.getChildren().get(0)); } return menusComposite; }
From source file:org.eclipse.ui.internal.dialogs.CustomizePerspectiveDialog.java
License:Open Source License
private Composite createActionSetAvailabilityPage(Composite parent) { GridData data;//from ww w.j a v a2s. c o m Composite actionSetsComposite = new Composite(parent, SWT.NONE); GridLayout layout = new GridLayout(); actionSetsComposite.setLayout(layout); // Select... label Label label = new Label(actionSetsComposite, SWT.WRAP); label.setText(NLS.bind(WorkbenchMessages.ActionSetSelection_selectActionSetsLabel, perspective.getDesc().getLabel())); data = new GridData(SWT.FILL, SWT.CENTER, true, false); label.setLayoutData(data); Label sep = new Label(actionSetsComposite, SWT.HORIZONTAL | SWT.SEPARATOR); sep.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); SashForm sashComposite = new SashForm(actionSetsComposite, SWT.HORIZONTAL); data = new GridData(SWT.FILL, SWT.FILL, true, true); sashComposite.setLayoutData(data); // Action Set List Composite Composite actionSetGroup = new Composite(sashComposite, SWT.NONE); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; actionSetGroup.setLayout(layout); actionSetGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); label = new Label(actionSetGroup, SWT.WRAP); label.setText(WorkbenchMessages.ActionSetSelection_availableActionSets); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); final CheckboxTableViewer actionSetsViewer = CheckboxTableViewer.newCheckList(actionSetGroup, SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL); actionSetAvailabilityTable = actionSetsViewer; actionSetsViewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); actionSetsViewer.setLabelProvider(new LabelProvider()); actionSetsViewer.setContentProvider(new ArrayContentProvider()); actionSetsViewer.setComparator(new WorkbenchViewerComparator()); actionSetsViewer.setCheckStateProvider(new ICheckStateProvider() { public boolean isChecked(Object element) { return ((ActionSet) element).isActive(); } public boolean isGrayed(Object element) { return false; } }); actionSetsViewer.setInput(actionSets.toArray()); Table table = actionSetsViewer.getTable(); new TableToolTip(table); final ActionSet[] selectedActionSet = { null }; // Filter to show only branches necessary for the selected action set. final ViewerFilter setFilter = new ViewerFilter() { public boolean select(Viewer viewer, Object parentElement, Object element) { if (selectedActionSet[0] == null) return false; return includeInSetStructure((DisplayItem) element, selectedActionSet[0]); } }; // Updates the check state of action sets actionSetsViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { final ActionSet actionSet = (ActionSet) event.getElement(); if (event.getChecked()) { actionSet.setActive(true); for (Iterator i = actionSet.contributionItems.iterator(); i.hasNext();) { DisplayItem item = (DisplayItem) i.next(); item.setCheckState(true); } } else { actionSet.setActive(false); } } }); // Menu and toolbar composite Composite actionGroup = new Composite(sashComposite, SWT.NONE); layout = new GridLayout(); layout.numColumns = 2; layout.makeColumnsEqualWidth = true; layout.marginHeight = 0; layout.marginWidth = 0; layout.horizontalSpacing = 0; actionGroup.setLayout(layout); actionGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); Composite menubarGroup = new Composite(actionGroup, SWT.NONE); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; menubarGroup.setLayout(layout); menubarGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); label = new Label(menubarGroup, SWT.WRAP); label.setText(WorkbenchMessages.ActionSetSelection_menubarActions); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); final TreeViewer actionSetMenuViewer = new TreeViewer(menubarGroup); actionSetMenuViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); actionSetMenuViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); actionSetMenuViewer.setUseHashlookup(true); actionSetMenuViewer.setContentProvider(TreeManager.getTreeContentProvider()); actionSetMenuViewer.setLabelProvider(TreeManager.getLabelProvider()); actionSetMenuViewer.addFilter(setFilter); actionSetMenuViewer.setInput(menuItems); Tree tree = actionSetMenuViewer.getTree(); new ItemDetailToolTip(actionSetMenuViewer, tree, false, true, setFilter); Composite toolbarGroup = new Composite(actionGroup, SWT.NONE); layout = new GridLayout(); layout.marginHeight = 0; layout.marginWidth = 0; toolbarGroup.setLayout(layout); toolbarGroup.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); label = new Label(toolbarGroup, SWT.WRAP); label.setText(WorkbenchMessages.ActionSetSelection_toolbarActions); label.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false)); final TreeViewer actionSetToolbarViewer = new TreeViewer(toolbarGroup); actionSetToolbarViewer.setAutoExpandLevel(AbstractTreeViewer.ALL_LEVELS); actionSetToolbarViewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true)); actionSetToolbarViewer.setContentProvider(TreeManager.getTreeContentProvider()); actionSetToolbarViewer.setLabelProvider(TreeManager.getLabelProvider()); actionSetToolbarViewer.addFilter(setFilter); actionSetToolbarViewer.setInput(toolBarItems); tree = actionSetToolbarViewer.getTree(); new ItemDetailToolTip(actionSetToolbarViewer, tree, false, true, setFilter); // Updates the menu item and toolbar items tree viewers when the // selection changes actionSetsViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { selectedActionSet[0] = (ActionSet) ((IStructuredSelection) event.getSelection()).getFirstElement(); actionSetMenuViewer.setInput(menuItems); actionSetToolbarViewer.setInput(toolBarItems); } }); sashComposite.setWeights(new int[] { 30, 70 }); return actionSetsComposite; }
From source file:org.eclipse.ui.internal.dialogs.DecoratorsPreferencePage.java
License:Open Source License
/** * Creates the widgets for the list of decorators. */// w w w . j a va 2 s. co m private void createDecoratorsArea(Composite mainComposite) { Font mainFont = mainComposite.getFont(); Composite decoratorsComposite = new Composite(mainComposite, SWT.NONE); decoratorsComposite.setLayoutData(new GridData(GridData.FILL_BOTH)); GridLayout decoratorsLayout = new GridLayout(); decoratorsLayout.marginWidth = 0; decoratorsLayout.marginHeight = 0; decoratorsComposite.setLayout(decoratorsLayout); decoratorsComposite.setFont(mainFont); Label decoratorsLabel = new Label(decoratorsComposite, SWT.NONE); decoratorsLabel.setText(WorkbenchMessages.DecoratorsPreferencePage_decoratorsLabel); decoratorsLabel.setFont(mainFont); // Checkbox table viewer of decorators checkboxViewer = CheckboxTableViewer.newCheckList(decoratorsComposite, SWT.SINGLE | SWT.TOP | SWT.BORDER); checkboxViewer.getTable().setLayoutData(new GridData(GridData.FILL_BOTH)); checkboxViewer.getTable().setFont(decoratorsComposite.getFont()); checkboxViewer.setLabelProvider(new LabelProvider() { public String getText(Object element) { return ((DecoratorDefinition) element).getName(); } }); checkboxViewer.getTable().setFont(mainFont); checkboxViewer.setContentProvider(new IStructuredContentProvider() { private final Comparator comparer = new Comparator() { private Collator collator = Collator.getInstance(); public int compare(Object arg0, Object arg1) { String s1 = ((DecoratorDefinition) arg0).getName(); String s2 = ((DecoratorDefinition) arg1).getName(); return collator.compare(s1, s2); } }; public void dispose() { //Nothing to do on dispose } public void inputChanged(Viewer viewer, Object oldInput, Object newInput) { } public Object[] getElements(Object inputElement) { //Make an entry for each decorator definition Object[] elements = (Object[]) inputElement; Object[] results = new Object[elements.length]; System.arraycopy(elements, 0, results, 0, elements.length); Collections.sort(Arrays.asList(results), comparer); return results; } }); checkboxViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { if (event.getSelection() instanceof IStructuredSelection) { IStructuredSelection sel = (IStructuredSelection) event.getSelection(); DecoratorDefinition definition = (DecoratorDefinition) sel.getFirstElement(); if (definition == null) { clearDescription(); } else { showDescription(definition); } } } }); checkboxViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { checkboxViewer.setSelection(new StructuredSelection(event.getElement())); } }); }
From source file:org.eclipse.ui.internal.dialogs.SimpleWorkingSetSelectionDialog.java
License:Open Source License
protected Control createDialogArea(Composite parent) { initializeDialogUnits(parent);/*from w w w.j a v a 2s . c o m*/ Composite composite = (Composite) super.createDialogArea(parent); Composite viewerComposite = new Composite(composite, SWT.NONE); GridLayout layout = new GridLayout(2, false); layout.marginHeight = layout.marginWidth = 0; layout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING); layout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING); viewerComposite.setLayout(layout); viewerComposite.setLayoutData(new GridData(GridData.FILL_BOTH)); viewer = CheckboxTableViewer.newCheckList(viewerComposite, SWT.BORDER); viewer.getControl().setLayoutData(new GridData(GridData.FILL_BOTH)); viewer.setLabelProvider(new WorkingSetLabelProvider()); viewer.setContentProvider(new ArrayContentProvider()); viewer.addFilter(new WorkingSetFilter(null)); IWorkingSet[] workingSets = PlatformUI.getWorkbench().getWorkingSetManager().getWorkingSets(); viewer.setInput(workingSets); viewer.setFilters(new ViewerFilter[] { new Filter() }); viewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { handleSelectionChanged(); } }); viewer.setCheckedElements(initialSelection); GridData viewerData = new GridData(GridData.FILL_BOTH); viewerData.widthHint = convertWidthInCharsToPixels(50); viewer.getControl().setLayoutData(viewerData); addModifyButtons(viewerComposite); addSelectionButtons(composite); availableWorkingSetsChanged(); Dialog.applyDialogFont(composite); viewerData.heightHint = viewer.getTable().getItemHeight() * Math.min(30, Math.max(10, workingSets.length)); return composite; }
From source file:org.eclipse.ui.internal.dialogs.WorkingSetSelectionDialog.java
License:Open Source License
/** * Overrides method from Dialog./*from ww w . j av a 2s . co m*/ * Create the dialog widgets. * * @see org.eclipse.jface.dialogs.Dialog#createDialogArea(Composite) */ protected Control createDialogArea(Composite parent) { initializeDialogUnits(parent); Composite composite = (Composite) super.createDialogArea(parent); createMessageArea(composite); SelectionListener listener = new SelectionAdapter() { public void widgetSelected(SelectionEvent e) { updateButtonAvailability(); } }; buttonWindowSet = new Button(composite, SWT.RADIO); buttonWindowSet.setText(WorkbenchMessages.WindowWorkingSets); buttonWindowSet.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); buttonWindowSet.addSelectionListener(listener); buttonNoSet = new Button(composite, SWT.RADIO); buttonNoSet.setText(WorkbenchMessages.NoWorkingSet); buttonNoSet.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); buttonNoSet.addSelectionListener(listener); buttonSelectedSets = new Button(composite, SWT.RADIO); buttonSelectedSets.setText(WorkbenchMessages.SelectedWorkingSets); buttonSelectedSets.addSelectionListener(listener); switch (getInitialRadioSelection()) { case 0: buttonWindowSet.setSelection(true); break; case 1: buttonNoSet.setSelection(true); break; case 2: buttonSelectedSets.setSelection(true); break; } buttonSelectedSets.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); Composite viewerComposite = new Composite(composite, SWT.NONE); GridLayout layout = new GridLayout(2, false); layout.marginHeight = layout.marginWidth = 0; layout.horizontalSpacing = convertHorizontalDLUsToPixels(IDialogConstants.HORIZONTAL_SPACING); layout.verticalSpacing = convertVerticalDLUsToPixels(IDialogConstants.VERTICAL_SPACING); viewerComposite.setLayout(layout); GridData data = new GridData(GridData.FILL_BOTH); data.heightHint = SIZING_SELECTION_WIDGET_HEIGHT; data.widthHint = SIZING_SELECTION_WIDGET_WIDTH + 300; // fudge? I like fudge. viewerComposite.setLayoutData(data); listViewer = CheckboxTableViewer.newCheckList(viewerComposite, SWT.BORDER | SWT.MULTI); data = new GridData(GridData.FILL_BOTH); data.heightHint = SIZING_SELECTION_WIDGET_HEIGHT; data.widthHint = SIZING_SELECTION_WIDGET_WIDTH; listViewer.getTable().setLayoutData(data); listViewer.setLabelProvider(labelProvider); listViewer.setContentProvider(contentProvider); listViewer.setComparator(new WorkbenchViewerComparator()); listViewer.addFilter(new WorkingSetFilter(getSupportedWorkingSetIds())); listViewer.addSelectionChangedListener(new ISelectionChangedListener() { public void selectionChanged(SelectionChangedEvent event) { handleSelectionChanged(); } }); listViewer.addDoubleClickListener(new IDoubleClickListener() { public void doubleClick(DoubleClickEvent event) { Object obj = ((IStructuredSelection) listViewer.getSelection()).getFirstElement(); listViewer.setCheckedElements(new Object[] { obj }); buttonWindowSet.setSelection(false); buttonNoSet.setSelection(false); buttonSelectedSets.setSelection(true); okPressed(); } }); listViewer.addCheckStateListener(new ICheckStateListener() { public void checkStateChanged(CheckStateChangedEvent event) { // implicitly select the third radio button buttonWindowSet.setSelection(false); buttonNoSet.setSelection(false); buttonSelectedSets.setSelection(true); } }); addModifyButtons(viewerComposite); addSelectionButtons(composite); listViewer.setInput(Arrays.asList(WorkbenchPlugin.getDefault().getWorkingSetManager().getWorkingSets())); List initialElementSelections = getInitialElementSelections(); if (multiSelect) { listViewer.setCheckedElements(initialElementSelections.toArray()); } else if (!initialElementSelections.isEmpty()) { IWorkingSet set = (IWorkingSet) initialElementSelections.get(0); if (set instanceof AggregateWorkingSet) { AggregateWorkingSet aggregate = (AggregateWorkingSet) set; listViewer.setCheckedElements(aggregate.getComponents()); } else { listViewer.setCheckedElements(initialElementSelections.toArray()); } } availableWorkingSetsChanged(); Dialog.applyDialogFont(composite); return composite; }