类org.eclipse.jface.viewers.ArrayContentProvider源码实例Demo

下面列出了怎么用org.eclipse.jface.viewers.ArrayContentProvider的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: eclipse-extras   文件: DynamicWorkingSetPage.java
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( "" ) );
}
 
源代码2 项目: APICloud-Studio   文件: SvnPropertiesView.java
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;
}
 
源代码3 项目: nebula   文件: PageSizeComboRenderer.java
@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);

}
 
源代码4 项目: nebula   文件: TableComboViewerTests.java
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;

}
 
源代码5 项目: jenerate   文件: FieldDialogImpl.java
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());
}
 
源代码7 项目: google-cloud-eclipse   文件: MiniSelector.java
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;
}
 
源代码9 项目: APICloud-Studio   文件: SvnRevPropertiesView.java
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;
}
 
源代码10 项目: typescript.java   文件: TSLintWizardPage.java
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);
}
 
源代码11 项目: typescript.java   文件: TSLintWizardPage.java
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);
}
 
源代码12 项目: tracecompass   文件: ChartMakerDialog.java
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);
}
 
源代码13 项目: statecharts   文件: OrderElementControl.java
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);
}
 
源代码14 项目: statecharts   文件: StatechartPropertySection.java
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;
}
 
源代码16 项目: APICloud-Studio   文件: CListTable.java
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();
}
 
源代码17 项目: eclipse-extras   文件: CleanupPreferencePage.java
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 );
}
 
源代码18 项目: MergeProcessor   文件: Dashboard.java
/**
 * @return the DataBindingContext
 */
private DataBindingContext initDataBindings() {
	DataBindingContext bindingContext = new DataBindingContext();
	final TableViewer tableViewer = view.getTableViewer();
	tableViewer.setContentProvider(new ArrayContentProvider());
	tableViewer.setInput(mergeUnits);

	return bindingContext;
}
 
源代码19 项目: MergeProcessor   文件: WorkspaceMergeDialog.java
/**
 * 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;
}
 
源代码20 项目: gwt-eclipse-plugin   文件: GWTCompileDialog.java
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);
}
 
源代码21 项目: nebula   文件: JFaceViewerIntegrationExample.java
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());
}
 
源代码22 项目: nebula   文件: PaginationExampleTab.java
@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;
}
 
源代码23 项目: nebula   文件: LazyPageTableExample.java
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;
}
 
源代码24 项目: nebula   文件: StringPageableTableExample.java
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();
}
 
源代码25 项目: nebula   文件: ScalePageableTableExample.java
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();
}
 
源代码26 项目: nebula   文件: ComboPageableTableExample.java
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();
}
 
源代码27 项目: nebula   文件: ModelSortPageableTableExample.java
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();
	}
 
源代码28 项目: nebula   文件: CustomizationDataSelectionDialog.java
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$
}
 
源代码29 项目: nebula   文件: EnumStringSingleSelectionDialog.java
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();
    }

  }
}
 
 同包方法