List of usage examples for org.eclipse.jface.viewers TableViewer setContentProvider
@Override public void setContentProvider(IContentProvider provider)
AbstractTableViewer
. From source file:org.eclipse.nebula.widgets.pagination.snippets.table.ModelSortPageableTableAndTotalChangedExample.java
License:Open Source License
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); GridLayout layout = new GridLayout(2, false); shell.setLayout(layout);//from w ww .j a v a 2s. c om Label totalLabel = new Label(shell, SWT.NONE); totalLabel.setText("Total:"); final Combo combo = new Combo(shell, SWT.READ_ONLY); combo.setItems(TOTAL_ITEMS); combo.select(3); // 1) Create pageable table with 10 items per page // This SWT Component create internally a SWT Table+JFace TreeViewer int pageSize = 10; final PageableTable pageableTable = new PageableTable(shell, SWT.BORDER, SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL, pageSize); GridData gridData = new GridData(GridData.FILL_BOTH); gridData.horizontalSpan = 2; pageableTable.setLayoutData(gridData); // 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); // 4) Set the page loader used to load a page (sublist of String) // according the page index selected, the page size etc. List<Person> items = createList(combo); final PageResultLoaderList<Person> pageLoader = new PageResultLoaderList<Person>(items); pageableTable.setPageLoader(pageLoader); // 5) Set current page to 0 to refresh the table pageableTable.setCurrentPage(0); combo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { List<Person> items = createList(combo); pageLoader.setItems(items); pageableTable.refreshPage(true); } }); shell.setSize(400, 250); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); }
From source file:org.eclipse.nebula.widgets.pagination.snippets.table.ModelSortPageableTableExample.java
License:Open Source License
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); GridLayout layout = new GridLayout(1, false); shell.setLayout(layout);/* w ww . j a v a2s . co m*/ 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(); }
From source file:org.eclipse.nebula.widgets.pagination.snippets.table.ModelSortPageableTableWorkInProcessExample.java
License:Open Source License
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); GridLayout layout = new GridLayout(1, false); shell.setLayout(layout);//from www . j a v a2s. c o m 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; final PageableTable pageableTable = new PageableTable(shell, SWT.BORDER, SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL, pageSize) { @Override protected Composite createCompositeBottom(Composite parent) { Composite bottom = new LoadingComposite(parent); bottom.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); return bottom; } }; final LoadingComposite loadingComposite = (LoadingComposite) pageableTable.getCompositeBottom(); pageableTable.setLayoutData(new GridData(GridData.FILL_BOTH)); pageableTable.setPageLoaderHandler(new IPageLoaderHandler<PageableController>() { long time = 0; public void onBeforePageLoad(PageableController controller) { time = System.currentTimeMillis(); String text = "Loading..."; System.err.println(text); loadingComposite.setText(text); } public boolean onAfterPageLoad(PageableController controller, Throwable e) { String text = "Loaded with " + (System.currentTimeMillis() - time) + "(ms)"; System.err.println(text); loadingComposite.setText(text); return true; } }); // 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) { @Override public PageResult<Person> loadPage(PageableController pageable) { if (pageableTable.isVisible()) { try { Thread.sleep(1000); } catch (InterruptedException e) { e.printStackTrace(); } } return super.loadPage(pageable); } }); pageableTable.setCurrentPage(0); shell.setSize(400, 300); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); }
From source file:org.eclipse.nebula.widgets.pagination.snippets.table.renderers.AllRenderersPaginationTableAtHandExample.java
License:Open Source License
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); GridLayout layout = new GridLayout(2, false); shell.setLayout(layout);/* w w w. j ava 2s .c o m*/ final List<Person> items = createList(); Composite left = new Composite(shell, SWT.NONE); left.setLayoutData(new GridData(GridData.FILL_BOTH)); left.setLayout(new GridLayout()); // Left panel Table table = new Table(left, SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL); table.setLayoutData(new GridData(GridData.FILL_BOTH)); // 2) Initialize the table viewer + SWT Table TableViewer viewer = new TableViewer(table); viewer.setContentProvider(ArrayContentProvider.getInstance()); viewer.setLabelProvider(new LabelProvider()); table.setHeaderVisible(true); table.setLinesVisible(true); // 3) Create Table columns with sort of paginated list. int pageSize = 10; final PageableController controller = new PageableController(pageSize); final IPageLoader<PageResult<Person>> pageLoader = new PageResultLoaderList<Person>(items); controller.addPageChangedListener(PageLoaderStrategyHelper.createLoadPageAndReplaceItemsListener(controller, viewer, pageLoader, PageResultContentProvider.getInstance(), null)); createColumns(viewer, controller); // Right Panel Composite right = new Composite(shell, SWT.NONE); right.setLayoutData(new GridData(GridData.FILL_BOTH)); right.setLayout(new GridLayout()); NavigationPageComboRenderer pageComboDecorator = new NavigationPageComboRenderer(right, SWT.NONE, controller); pageComboDecorator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); NavigationPageScaleRenderer pageScaleDecorator = new NavigationPageScaleRenderer(right, SWT.NONE, controller); pageScaleDecorator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); ResultAndNavigationPageLinksRenderer resultAndPageLinksDecorator = new ResultAndNavigationPageLinksRenderer( right, SWT.NONE, controller); resultAndPageLinksDecorator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); PageSizeComboRenderer pageSizeComboDecorator = new PageSizeComboRenderer(right, SWT.NONE, controller, new Integer[] { 5, 10, 50, 100, 200 }); pageSizeComboDecorator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); ResultAndNavigationPageGraphicsRenderer resultAndPageButtonsDecorator = new ResultAndNavigationPageGraphicsRenderer( right, SWT.NONE, controller); resultAndPageButtonsDecorator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); ResultAndNavigationPageGraphicsRenderer black = new ResultAndNavigationPageGraphicsRenderer(right, SWT.NONE, controller, BlackNavigationPageGraphicsConfigurator.getInstance()); black.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); ResultAndNavigationPageGraphicsRenderer green = new ResultAndNavigationPageGraphicsRenderer(right, SWT.NONE, controller, GreenNavigationPageGraphicsConfigurator.getInstance()); green.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); // Locale Composite localeComposite = new Composite(right, SWT.NONE); localeComposite.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); localeComposite.setLayout(new GridLayout(2, false)); Label localeLabel = new Label(localeComposite, SWT.NONE); localeLabel.setText("Locale:"); localeLabel.setLayoutData(new GridData()); final Combo localeCombo = new Combo(localeComposite, SWT.READ_ONLY); localeCombo.setItems(new String[] { "en", "fr" }); localeCombo.select(Locale.getDefault().equals(Locale.FRANCE) ? 1 : 0); localeCombo.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); localeCombo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { String locale = localeCombo.getText(); if ("fr".equals(locale)) { controller.setLocale(Locale.FRENCH); } else { controller.setLocale(Locale.ENGLISH); } } }); // 3) Set current page to 0 to refresh the table controller.setCurrentPage(0); shell.setSize(800, 250); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); }
From source file:org.eclipse.nebula.widgets.pagination.snippets.table.renderers.ComboPageableTableExample.java
License:Open Source License
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); GridLayout layout = new GridLayout(1, false); shell.setLayout(layout);/* w ww .j av a2s . c o m*/ 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(); }
From source file:org.eclipse.nebula.widgets.pagination.snippets.table.renderers.GraphicsPageableTableAndTotalChangedExample.java
License:Open Source License
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); GridLayout layout = new GridLayout(1, false); shell.setLayout(layout);/*from w w w. j ava2s .c o m*/ Label totalLabel = new Label(shell, SWT.NONE); totalLabel.setText("Total:"); final Combo combo = new Combo(shell, SWT.READ_ONLY); combo.setItems(TOTAL_ITEMS); combo.select(3); // 1) Create pageable table with 10 items per page // This SWT Component create internally a SWT Table+JFace TreeViewer int pageSize = 10; final PageableTable pageableTable = new PageableTable(shell, 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 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. List<String> items = createList(combo); final PageResultLoaderList<String> pageLoader = new PageResultLoaderList<String>(items); pageableTable.setPageLoader(pageLoader); // 4) Set current page to 0 to display the first page pageableTable.setCurrentPage(0); combo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { List<String> items = createList(combo); pageLoader.setItems(items); pageableTable.refreshPage(true); } }); final Combo styleCombo = new Combo(shell, SWT.READ_ONLY); styleCombo.setItems(new String[] { "Blue", "Green", "Black" }); styleCombo.select(0); styleCombo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (styleCombo.getText().equals("Blue")) { ((ResultAndNavigationPageGraphicsRenderer) pageableTable.getCompositeTop()).getNavigationPage() .setConfigurator(BlueNavigationPageGraphicsConfigurator.getInstance()); } else if (styleCombo.getText().equals("Green")) { ((ResultAndNavigationPageGraphicsRenderer) pageableTable.getCompositeTop()) .setConfigurator(GreenNavigationPageGraphicsConfigurator.getInstance()); } else { ((ResultAndNavigationPageGraphicsRenderer) pageableTable.getCompositeTop()) .setConfigurator(BlackNavigationPageGraphicsConfigurator.getInstance()); } } }); shell.setSize(450, 300); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); }
From source file:org.eclipse.nebula.widgets.pagination.snippets.table.renderers.GraphicsPageableTableExample.java
License:Open Source License
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); GridLayout layout = new GridLayout(1, false); shell.setLayout(layout);//ww w.j a va 2 s .com 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; final PageableTable pageableTable = new PageableTable(shell, 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 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); final Combo styleCombo = new Combo(shell, SWT.READ_ONLY); styleCombo.setItems(new String[] { "Blue", "Green", "Black" }); styleCombo.select(0); styleCombo.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent e) { if (styleCombo.getText().equals("Blue")) { ((ResultAndNavigationPageGraphicsRenderer) pageableTable.getCompositeTop()).getNavigationPage() .setConfigurator(BlueNavigationPageGraphicsConfigurator.getInstance()); } else if (styleCombo.getText().equals("Green")) { ((ResultAndNavigationPageGraphicsRenderer) pageableTable.getCompositeTop()) .setConfigurator(GreenNavigationPageGraphicsConfigurator.getInstance()); } else { ((ResultAndNavigationPageGraphicsRenderer) pageableTable.getCompositeTop()) .setConfigurator(BlackNavigationPageGraphicsConfigurator.getInstance()); } } }); shell.setSize(450, 300); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); }
From source file:org.eclipse.nebula.widgets.pagination.snippets.table.renderers.OneRendererPaginationTableAtHandExample.java
License:Open Source License
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); GridLayout layout = new GridLayout(1, false); shell.setLayout(layout);/*ww w. j a v a2 s . c o m*/ final List<Person> items = createList(); Composite parent = new Composite(shell, SWT.NONE); parent.setLayoutData(new GridData(GridData.FILL_BOTH)); parent.setLayout(new GridLayout()); // Left panel Table table = new Table(parent, SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL); table.setLayoutData(new GridData(GridData.FILL_BOTH)); // 2) Initialize the table viewer + SWT Table TableViewer viewer = new TableViewer(table); viewer.setContentProvider(ArrayContentProvider.getInstance()); viewer.setLabelProvider(new LabelProvider()); table.setHeaderVisible(true); table.setLinesVisible(true); // 3) Create Table columns with sort of paginated list. int pageSize = 10; final PageableController controller = new PageableController(pageSize); final IPageLoader<PageResult<Person>> pageLoader = new PageResultLoaderList<Person>(items); controller.addPageChangedListener(PageLoaderStrategyHelper.createLoadPageAndReplaceItemsListener(controller, viewer, pageLoader, PageResultContentProvider.getInstance(), null)); // Create navigation page links ResultAndNavigationPageLinksRenderer resultAndPageLinksDecorator = new ResultAndNavigationPageLinksRenderer( parent, SWT.NONE, controller); resultAndPageLinksDecorator.setLayoutData(new GridData(GridData.FILL_HORIZONTAL)); createColumns(viewer, controller); // 3) Set current page to 0 to refresh the table controller.setCurrentPage(0); shell.setSize(350, 250); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); }
From source file:org.eclipse.nebula.widgets.pagination.snippets.table.renderers.OneRendererPaginationTableWithPageableTableExample.java
License:Open Source License
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); GridLayout layout = new GridLayout(1, false); shell.setLayout(layout);//from w w w . j a v a2 s. co m final List<Person> items = createList(); int pageSize = 10; final PageableTable pageableTable = new PageableTable(shell, SWT.BORDER, SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL, pageSize, PageResultContentProvider.getInstance(), null, ResultAndNavigationPageLinksRendererFactory.getFactory()); pageableTable.setLayoutData(new GridData(GridData.FILL_BOTH)); pageableTable.setPageLoader(new PageResultLoaderList<Person>(items)); // 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); PageableController controller = pageableTable.getController(); createColumns(viewer, controller); // 3) Set current page to 0 to refresh the table controller.setCurrentPage(0); shell.setSize(350, 250); shell.open(); while (!shell.isDisposed()) { if (!display.readAndDispatch()) display.sleep(); } display.dispose(); }
From source file:org.eclipse.nebula.widgets.pagination.snippets.table.renderers.ScalePageableTableExample.java
License:Open Source License
public static void main(String[] args) { Display display = new Display(); Shell shell = new Shell(display); GridLayout layout = new GridLayout(1, false); shell.setLayout(layout);/*from w w w . ja v a 2 s .c o m*/ 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(); }