下面列出了怎么用org.eclipse.jface.viewers.ArrayContentProvider的API类实例代码及写法,或者点击链接到github查看源代码。
private void createControls( Composite parent ) {
composite = new Composite( parent, SWT.NONE );
Label nameLabel = new Label( composite, SWT.NONE );
nameLabel.setText( "&Name" );
nameText = new Text( composite, SWT.BORDER );
Label patternLabel = new Label( composite, SWT.NONE );
patternLabel.setText( "&Pattern" );
patternText = new Text( composite, SWT.BORDER );
installPatternContentAssist();
previewLabel = new Label( composite, SWT.NONE );
previewLabel.setText( "Preview" );
previewViewer = new TableViewer( composite, SWT.SINGLE | SWT.FULL_SELECTION | SWT.BORDER );
previewViewer.getControl().setBackground( getWidgetBackgroundColor() );
previewViewer.getControl().addListener( SWT.FocusOut, new PreviewFocusOutListener() );
previewLabelProvider = new PreviewLabelProvider( getShell().getDisplay() );
previewViewer.setLabelProvider( previewLabelProvider );
previewViewer.setContentProvider( ArrayContentProvider.getInstance() );
previewViewer.setInput( projectsProvider.getProjects() );
previewViewer.setComparator( new PreviewComparator( "" ) );
}
private TableViewer createTable(Composite parent) {
Table table = new Table(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.MULTI);
table.setHeaderVisible(true);
table.setLinesVisible(true);
GridData gridData = new GridData(GridData.FILL_BOTH);
table.setLayoutData(gridData);
TableLayout layout = new TableLayout();
table.setLayout(layout);
tableViewer = new TableViewer(table);
createColumns(table, layout);
tableViewer.setContentProvider(new ArrayContentProvider());
tableViewer.setLabelProvider(new PropertiesLabelProvider());
return tableViewer;
}
@Override
protected void createUI(Composite parent) {
GridLayout layout = new GridLayout(2, false);
layout.marginWidth = 0;
layout.marginHeight = 0;
this.setLayout(layout);
itemsPerPageLabel = new Label(parent, SWT.NONE);
itemsPerPageLabel.setText(Resources.getText(
Resources.PaginationRenderer_itemsPerPage, getLocale()));
itemsPerPageLabel.setLayoutData(new GridData());
comboViewer = new ComboViewer(parent, SWT.READ_ONLY);
comboViewer.setContentProvider(ArrayContentProvider.getInstance());
comboViewer.setLabelProvider(InternalLabelProvider.getInstance());
comboViewer.getCombo().setLayoutData(
new GridData(GridData.FILL_HORIZONTAL));
comboViewer.getCombo().addSelectionListener(this);
}
private TableComboViewer createTableComboViewer(final Composite parent, final int noOfItems) {
final TableComboViewer result = new TableComboViewer(parent, SWT.NONE);
result.getTableCombo().setLayoutData(new GridData(SWT.FILL, SWT.DEFAULT, true, false));
result.setContentProvider(ArrayContentProvider.getInstance());
result.setLabelProvider(new TestLabelProvider());
// create columns
final String[] columns = new String[] { "Name", "Description" };
result.getTableCombo().defineColumns(columns);
// set input data
final TestItem[] testItems = new TestItem[noOfItems];
for (int i = 0; i < noOfItems; i++) {
testItems[i] = new TestItem("Item " + i, "Description " + i);
}
result.setInput(testItems);
return result;
}
private Composite createFieldComposite(final Composite composite) {
Composite fieldComposite = new Composite(composite, SWT.NONE);
GridLayout layout = new GridLayout();
fieldComposite.setLayout(layout);
fieldViewer = CheckboxTableViewer.newCheckList(fieldComposite, SWT.MULTI | SWT.TOP | SWT.BORDER);
GridData data = new GridData(GridData.FILL_BOTH);
data.grabExcessHorizontalSpace = true;
fieldViewer.getTable().setLayoutData(data);
fieldViewer.setLabelProvider(new JavaElementLabelProvider());
fieldViewer.setContentProvider(new ArrayContentProvider());
fieldViewer.setInput(allFields);
selectAllNonTransientFields();
return fieldComposite;
}
@Override
protected void createRuntimeField(Composite composite) {
Label runtimeLabel = new Label(composite, SWT.LEAD);
runtimeLabel.setText(Messages.getString("app.engine.standard.project.runtimetype")); //$NON-NLS-1$
runtimeField = new ComboViewer(composite, SWT.READ_ONLY);
runtimeField.setLabelProvider(new LabelProvider() {
@Override
public String getText(Object element) {
return ((AppEngineRuntime) element).getLabel();
}
});
runtimeField.setContentProvider(ArrayContentProvider.getInstance());
runtimeField.setInput(AppEngineRuntime.STANDARD_RUNTIMES);
runtimeField.setSelection(new StructuredSelection(DEFAULT_RUNTIME), true);
runtimeField.addPostSelectionChangedListener(event -> revalidate());
}
private void create(Composite parent) {
displayExecutor = DisplayExecutor.create(parent.getDisplay());
comboViewer = new ComboViewer(parent, SWT.READ_ONLY | SWT.DROP_DOWN);
comboViewer.setComparator(new ViewerComparator());
comboViewer.setLabelProvider(new LabelProvider() {
@Override
public String getText(Object element) {
if (element instanceof GcpProject) {
GcpProject project = (GcpProject) element;
return project.getName() + " (" + project.getId() + ")";
}
return super.getText(element);
}
});
comboViewer.setContentProvider(ArrayContentProvider.getInstance());
comboViewer.setInput(EMPTY_PROJECTS);
parent.addDisposeListener(new DisposeListener() {
@Override
public void widgetDisposed(DisposeEvent event) {
cancelFetch();
}
});
fetch();
}
protected TableViewer createLocationViewer(Composite parent) {
TableViewer locationViewer = new TableViewer(parent);
locationViewer.setContentProvider(new ArrayContentProvider());
locationViewer.setLabelProvider(createLocationLabelProvider());
TableLayout layout = new TableLayout();
locationViewer.getTable().setLayout(layout);
locationViewer.getTable().setHeaderVisible(true);
Pair<String, ColumnLayoutData>[] locationColumnDescriptions = getLocationColumnDescriptions();
IntStream.range(0, locationColumnDescriptions.length).forEach(index -> {
layout.addColumnData(locationColumnDescriptions[index].getValue());
createColumn(locationViewer.getTable(), locationColumnDescriptions[index], index);
});
return locationViewer;
}
private TableViewer createTable(Composite parent) {
Table table = new Table(parent, SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION | SWT.MULTI);
table.setHeaderVisible(true);
table.setLinesVisible(true);
GridData gridData = new GridData(GridData.FILL_BOTH);
table.setLayoutData(gridData);
TableLayout layout = new TableLayout();
table.setLayout(layout);
tableViewer = new TableViewer(table);
createColumns(table, layout);
tableViewer.setContentProvider(new ArrayContentProvider());
tableViewer.setLabelProvider(new PropertiesLabelProvider());
return tableViewer;
}
private void createEmbeddedTslintField(Composite parent) {
useEmbeddedTslintRuntimeButton = new Button(parent, SWT.RADIO);
useEmbeddedTslintRuntimeButton.setText(TypeScriptUIMessages.TSLintWizardPage_useEmbeddedTslintRuntime_label);
useEmbeddedTslintRuntimeButton.addListener(SWT.Selection, this);
useEmbeddedTslintRuntimeButton.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
updateTslintRuntimeMode();
}
});
embeddedTslintRuntime = new Combo(parent, SWT.READ_ONLY);
embeddedTslintRuntime.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
ComboViewer viewer = new ComboViewer(embeddedTslintRuntime);
viewer.setContentProvider(ArrayContentProvider.getInstance());
viewer.setLabelProvider(new TypeScriptRepositoryLabelProvider(true, false));
List<ITypeScriptRepository> repositories = Arrays
.stream(TypeScriptCorePlugin.getTypeScriptRepositoryManager().getRepositories())
.filter(r -> r.getTslintFile() != null).collect(Collectors.toList());
viewer.setInput(repositories);
}
private void createEmbeddedTslintPluginField(Composite parent) {
useEmbeddedTslintPluginButton = new Button(parent, SWT.RADIO);
useEmbeddedTslintPluginButton.setText(TypeScriptUIMessages.TSLintWizardPage_useEmbeddedTslintPlugin_label);
useEmbeddedTslintPluginButton.addListener(SWT.Selection, this);
useEmbeddedTslintPluginButton.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
updateTslintPluginMode();
}
});
embeddedTslintPlugin = new Combo(parent, SWT.READ_ONLY);
embeddedTslintPlugin.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
ComboViewer viewer = new ComboViewer(embeddedTslintPlugin);
viewer.setContentProvider(ArrayContentProvider.getInstance());
viewer.setLabelProvider(new TypeScriptRepositoryLabelProvider(false, true));
List<ITypeScriptRepository> repositories = Arrays
.stream(TypeScriptCorePlugin.getTypeScriptRepositoryManager().getRepositories())
.filter(r -> r.getTslintLanguageServiceName() != null).collect(Collectors.toList());
viewer.setInput(repositories);
}
private void createTypeTable() {
GridData typeGridData = new GridData();
typeGridData.verticalSpan = 3;
typeGridData.horizontalAlignment = SWT.FILL;
typeGridData.verticalAlignment = SWT.FILL;
typeGridData.grabExcessHorizontalSpace = false;
typeGridData.grabExcessVerticalSpace = true;
TableViewerColumn typeColumn = new TableViewerColumn(fTypeTable, SWT.NONE);
typeColumn.getColumn().setWidth(50);
typeColumn.setLabelProvider(new TypeLabelProvider());
List<IChartTypeDefinition> types = new ArrayList<>();
types.add(new BarChartTypeDefinition());
types.add(new ScatterChartTypeDefinition());
fTypeTable.getTable().setParent(fComposite);
fTypeTable.getTable().setLayoutData(typeGridData);
fTypeTable.setContentProvider(ArrayContentProvider.getInstance());
fTypeTable.addSelectionChangedListener(new TypeSelectionListener());
fTypeTable.setInput(types);
}
private void init() {
this.setLayout(new GridLayout(2, false));
viewer = new TableViewer(this, SWT.SINGLE | SWT.BORDER);
viewer.setContentProvider(new ArrayContentProvider());
viewer.setLabelProvider(new AdapterFactoryLabelProvider(new SGraphItemProviderAdapterFactory()));
Composite buttonComposite = getToolkit().createComposite(this);
buttonComposite.setLayout(new FillLayout(SWT.VERTICAL));
btnUp = getToolkit().createButton(buttonComposite, "up", SWT.PUSH);
btnDown = getToolkit().createButton(buttonComposite, "down", SWT.PUSH);
viewer.addSelectionChangedListener(enableButtonListener);
viewer.addSelectionChangedListener(editPartSelectionListener);
btnUp.addSelectionListener(upButtonListener);
btnDown.addSelectionListener(downButtonListener);
GridDataFactory.fillDefaults().applyTo(viewer.getControl());
GridDataFactory.fillDefaults().applyTo(buttonComposite);
GridDataFactory.fillDefaults().grab(true, false).applyTo(viewer.getControl());
GridDataFactory.fillDefaults().grab(true, false).applyTo(this);
}
protected void createDomainCombo(Composite leftColumn) {
Label label = getToolkit().createLabel(leftColumn, "Statechart domain");
GridDataFactory.fillDefaults().span(2, 1).align(SWT.FILL, SWT.CENTER).applyTo(label);
domainCombo = new ComboViewer(leftColumn);
GridDataFactory.fillDefaults().span(1, 1).align(SWT.FILL, SWT.CENTER).applyTo(domainCombo.getCombo());
Label spacer = getToolkit().createLabel(leftColumn, "");
GridDataFactory.fillDefaults().applyTo(spacer);
domainCombo.setContentProvider(new ArrayContentProvider());
domainCombo.setLabelProvider(new LabelProvider() {
@Override
public String getText(Object element) {
return ((IDomain) element).getName();
}
});
List<IDomain> domains = DomainRegistry.getDomains();
for (IDomain domainDescriptor : domains) {
domainCombo.add(domainDescriptor);
}
if (domains.size() <= 1) {
domainCombo.getControl().setEnabled(false);
}
}
@Override
protected Control createDialogArea(Composite parent) {
Composite grid = new Composite(parent, SWT.NONE);
GridData gridData = new GridData(GridData.FILL_BOTH);
grid.setLayoutData(gridData);
GridLayout gridLayout = new GridLayout(1, false);
gridLayout.marginHeight = 8;
gridLayout.marginWidth = 8;
grid.setLayout(gridLayout);
Label descriptionLabel = new Label(grid, SWT.NONE);
descriptionLabel.setText("Select JAR file(s) from the build path:");
jarsViewer = new TableViewer(grid);
GridData jarsListGridData = new GridData(GridData.FILL_BOTH);
jarsViewer.getTable().setLayoutData(jarsListGridData);
jarsViewer.setContentProvider(new ArrayContentProvider());
jarsViewer.setLabelProvider(new JarsLabelProvider());
jarsViewer.setSorter(jarsSorter);
return grid;
}
private void createTable(Composite parent)
{
tableViewer = new TableViewer(parent, SWT.MULTI | SWT.BORDER | SWT.FULL_SELECTION);
tableViewer.getControl().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
tableViewer.setContentProvider(ArrayContentProvider.getInstance());
tableViewer.setLabelProvider(new LabelProvider());
tableViewer.setComparator(new ViewerComparator());
tableViewer.setInput(items);
tableViewer.addSelectionChangedListener(new ISelectionChangedListener()
{
public void selectionChanged(SelectionChangedEvent event)
{
updateStates();
}
});
updateStates();
}
private void createPageControls( Composite parent ) {
cleanupButton = new Button( parent, SWT.CHECK );
cleanupButton.setText( "Remove on-the-fly generated launch configurations when no longer needed" );
cleanupButton.addListener( SWT.Selection, this::cleanupButtonSelected );
cleanupTypesLabel = new Label( parent, SWT.NONE );
cleanupTypesLabel.setText( "Select the launch configuration types to clean up" );
cleanupTypesViewer = CheckboxTableViewer.newCheckList( parent, SWT.BORDER );
cleanupTypesViewer.setLabelProvider( DebugUITools.newDebugModelPresentation() );
cleanupTypesViewer.setContentProvider( ArrayContentProvider.getInstance() );
cleanupTypesViewer.setComparator( new WorkbenchViewerComparator() );
cleanupTypesViewer.addFilter( new LaunchConfigTypeFilter() );
cleanupTypesViewer.setInput( launchManager.getLaunchConfigurationTypes() );
selectAllButton = new Button( parent, SWT.PUSH );
selectAllButton.addListener( SWT.Selection, event -> cleanupTypesViewer.setAllChecked( true ) );
selectAllButton.setText( "&Select All" );
deselectAllButton = new Button( parent, SWT.PUSH );
deselectAllButton.setText( "&Deselect All" );
deselectAllButton.addListener( SWT.Selection, event -> cleanupTypesViewer.setAllChecked( false ) );
notelabel = new Label( parent, SWT.WRAP );
String text
= "Note: Launch configurations are considered as on-the-fly generated if "
+ "they were created outside the Run Configurations dialog without further "
+ "manual changes. For example with Run As > JUnit Test";
notelabel.setText( text );
}
/**
* @return the DataBindingContext
*/
private DataBindingContext initDataBindings() {
DataBindingContext bindingContext = new DataBindingContext();
final TableViewer tableViewer = view.getTableViewer();
tableViewer.setContentProvider(new ArrayContentProvider());
tableViewer.setInput(mergeUnits);
return bindingContext;
}
/**
* Create the table viewer for showing warnings.
*
* @param parent the parent composite of the table viewer
* @return the table viewer
*/
private static ListViewer createWarningsTableViewer(final Composite parent) {
final Composite composite = new Composite(parent, SWT.NONE);
composite.setLayout(new FillLayout());
GridDataFactory.fillDefaults().span(2, 1).grab(true, true).exclude(true).applyTo(composite);
final ListViewer tableViewer = new ListViewer(composite);
tableViewer.setContentProvider(ArrayContentProvider.getInstance());
tableViewer.setLabelProvider(new LabelProvider());
return tableViewer;
}
private void createLogLevelControl(Composite parent) {
SWTFactory.createLabel(parent, "Log level:", 1);
logLevelComboViewer = new ComboViewer(parent, SWT.READ_ONLY);
logLevelComboViewer.setContentProvider(new ArrayContentProvider());
logLevelComboViewer.setLabelProvider(new DefaultComboLabelProvider());
logLevelComboViewer.setInput(GWTLaunchAttributes.LOG_LEVELS);
}
public GenderEditingSupport(ColumnViewer viewer) {
super(viewer);
cellEditor = new ComboBoxViewerCellEditor((Composite) getViewer().getControl(), SWT.READ_ONLY);
cellEditor.setLabelProvider(new LabelProvider());
cellEditor.setContentProvider(new ArrayContentProvider());
cellEditor.setInput(Person.Gender.values());
}
@Override
public Control createControl(Composite parent) {
Composite body = new Composite(parent, SWT.NONE);
GridLayout layout = new GridLayout(2, false);
body.setLayout(layout);
// 1) Create pageable table with 10 items per page
// This SWT Component create internally a SWT Table+JFace TreeViewer
int pageSize = 10;
pageableTable = new PageableTable(
body,
SWT.BORDER,
SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL,
pageSize,
PageResultContentProvider.getInstance(),
ResultAndNavigationPageGraphicsRendererFactory.getBlueFactory(),
null);
pageableTable.setLayoutData(new GridData(GridData.FILL_BOTH));
// 2) Initialize the table viewer + SWT Table
TableViewer viewer = pageableTable.getViewer();
viewer.setContentProvider(ArrayContentProvider.getInstance());
viewer.setLabelProvider(new LabelProvider());
Table table = viewer.getTable();
table.setHeaderVisible(true);
table.setLinesVisible(true);
// 3) Create Table columns with sort of paginated list.
createColumns(viewer);
// 3) Set current page to 0 to refresh the table
pageableTable.setPageLoader(NebulaWidgetServices.getInstance());
pageableTable.setCurrentPage(0);
return body;
}
private static TableViewer createTableWithStandardMean(Composite parent) {
final Table table = new Table(parent, SWT.BORDER | SWT.MULTI
| SWT.H_SCROLL | SWT.V_SCROLL);
table.setHeaderVisible(true);
table.setLinesVisible(true);
table.setLayoutData(new GridData(GridData.FILL_BOTH));
final TableViewer viewer = new TableViewer(table);
viewer.setContentProvider(ArrayContentProvider.getInstance());
viewer.setLabelProvider(new LabelProvider());
createColumns(viewer);
return viewer;
}
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
GridLayout layout = new GridLayout(1, false);
shell.setLayout(layout);
final List<String> items = createList();
// 1) Create pageable table with 10 items per page
// This SWT Component create internally a SWT Table+JFace TreeViewer
int pageSize = 10;
PageableTable paginationTable = new PageableTable(shell, SWT.BORDER,
SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL, pageSize);
paginationTable.setLayoutData(new GridData(GridData.FILL_BOTH));
// 2) Initialize the table viewer
TableViewer viewer = paginationTable.getViewer();
viewer.setContentProvider(ArrayContentProvider.getInstance());
viewer.setLabelProvider(new LabelProvider());
// 3) Set the page loader used to load a page (sublist of String)
// according the page index selected, the page size etc.
paginationTable.setPageLoader(new PageResultLoaderList<String>(items));
// 4) Set current page to 0 to display the first page
paginationTable.setCurrentPage(0);
shell.setSize(350, 250);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
GridLayout layout = new GridLayout(1, false);
shell.setLayout(layout);
final List<String> items = createList();
// 1) Create pageable table with 10 items per page
// This SWT Component create internally a SWT Table+JFace TreeViewer
int pageSize = 10;
PageableTable pageableTable = new PageableTable(shell, SWT.BORDER,
SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL, pageSize,
PageResultContentProvider.getInstance(),
NavigationPageScaleRendererFactory.getFactory(), null);
pageableTable.setLayoutData(new GridData(GridData.FILL_BOTH));
// 2) Initialize the table viewer
TableViewer viewer = pageableTable.getViewer();
viewer.setContentProvider(ArrayContentProvider.getInstance());
viewer.setLabelProvider(new LabelProvider());
// 3) Set the page loader used to load a page (sublist of String)
// according the page index selected, the page size etc.
pageableTable.setPageLoader(new PageResultLoaderList<String>(items));
// 4) Set current page to 0 to display the first page
pageableTable.setCurrentPage(0);
shell.setSize(350, 250);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
GridLayout layout = new GridLayout(1, false);
shell.setLayout(layout);
final List<String> items = createList();
// 1) Create pageable table with 10 items per page
// This SWT Component create internally a SWT Table+JFace TreeViewer
int pageSize = 10;
PageableTable pageableTable = new PageableTable(shell, SWT.BORDER,
SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL, pageSize,
PageResultContentProvider.getInstance(),
NavigationPageComboRendererFactory.getFactory(), null);
pageableTable.setLayoutData(new GridData(GridData.FILL_BOTH));
// 2) Initialize the table viewer
TableViewer viewer = pageableTable.getViewer();
viewer.setContentProvider(ArrayContentProvider.getInstance());
viewer.setLabelProvider(new LabelProvider());
// 3) Set the page loader used to load a page (sublist of String)
// according the page index selected, the page size etc.
pageableTable.setPageLoader(new PageResultLoaderList<String>(items));
// 4) Set current page to 0 to display the first page
pageableTable.setCurrentPage(0);
shell.setSize(350, 250);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
GridLayout layout = new GridLayout(1, false);
shell.setLayout(layout);
final List<Person> items = createList();
// 1) Create pageable table with 10 items per page
// This SWT Component create internally a SWT Table+JFace TreeViewer
int pageSize = 10;
PageableTable pageableTable = new PageableTable(shell, SWT.BORDER,
SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL, pageSize);
pageableTable.setLayoutData(new GridData(GridData.FILL_BOTH));
// 2) Initialize the table viewer + SWT Table
TableViewer viewer = pageableTable.getViewer();
viewer.setContentProvider(ArrayContentProvider.getInstance());
viewer.setLabelProvider(new LabelProvider());
Table table = viewer.getTable();
table.setHeaderVisible(true);
table.setLinesVisible(true);
// 3) Create Table columns with sort of paginated list.
createColumns(viewer);
// 3) Set current page to 0 to refresh the table
pageableTable.setPageLoader(new PageResultLoaderList<Person>(items));
pageableTable.setCurrentPage(0);
shell.setSize(400, 250);
shell.open();
while (!shell.isDisposed()) {
if (!display.readAndDispatch())
display.sleep();
}
display.dispose();
}
public CustomizationDataSelectionDialog(Shell parent, XViewer xViewer, List<CustomizeData> custDatas) {
super(parent);
this.xViewer = xViewer;
setContentProvider(new ArrayContentProvider());
setLabelProvider(new CustomizeDataLabelProvider(xViewer));
setInput(custDatas);
setShellStyle(getShellStyle() | SWT.RESIZE);
setTitle(XViewerText.get("CustomizationDataSelectionDialog.title")); //$NON-NLS-1$
setMessage(XViewerText.get("CustomizationDataSelectionDialog.message")); //$NON-NLS-1$
}
public EnumStringSingleSelectionDialog(String title, String message, Collection<String> options, String currSelected) {
super(Display.getCurrent().getActiveShell());
this.setTitle(title);
this.setMessage(message);
this.setContentProvider(new ArrayContentProvider());
setLabelProvider(new StringLabelProvider());
setInput(options);
if (currSelected != null) {
setInitialSelections(new Object[] {currSelected});
}
}
/**
* {@inheritDoc}
*/
@Override
public void run(IAction action) {
IProject[] projects = CheckstyleUIPlugin.getWorkspace().getRoot().getProjects();
List<IProject> filteredProjects = new ArrayList<>();
for (int i = 0; i < projects.length; i++) {
filteredProjects.add(projects[i]);
}
filteredProjects.removeAll(mSelectedProjects);
ListDialog dialog = new ListDialog(mPart.getSite().getShell());
dialog.setInput(filteredProjects);
dialog.setContentProvider(new ArrayContentProvider());
dialog.setLabelProvider(new WorkbenchLabelProvider());
dialog.setMessage(Messages.ConfigureProjectFromBluePrintAction_msgSelectBlueprintProject);
dialog.setTitle(Messages.ConfigureProjectFromBluePrintAction_titleSelectBlueprintProject);
if (Window.OK == dialog.open()) {
Object[] result = dialog.getResult();
if (result.length > 0) {
BulkConfigureJob job = new BulkConfigureJob((IProject) result[0], mSelectedProjects);
job.schedule();
}
}
}