List of usage examples for org.apache.wicket.markup.repeater.data ListDataProvider ListDataProvider
public ListDataProvider(List<T> list)
From source file:com.aplombee.examples.AjaxLinkPage.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); IDataProvider<Integer> data = new ListDataProvider<Integer>(list); WebMarkupContainer numbers = new WebMarkupContainer("numbers"); //parent for quickview numbers.setOutputMarkupId(true); //needed for ajax final QuickView<Integer> number = new QuickView<Integer>("number", data, new ItemsNavigationStrategy()) { @Override//from w w w . j a va 2s. c om protected void populate(Item<Integer> item) { item.add(new Label("display", item.getModel())); } }; numbers.add(number); add(numbers); AjaxLink addLink = new AjaxLink("addLink") { @Override public void onClick(AjaxRequestTarget target) { int newObject = list.get(list.size() - 1) + 1; list.add(newObject); number.addNewItems(newObject); //just enough to create a new row at last } }; addLink.setOutputMarkupPlaceholderTag(true); add(addLink); AjaxLink addAtStartLink = new AjaxLink("addAtStartLink") { @Override public void onClick(AjaxRequestTarget target) { int newObject = list.get(0) - 1; list.add(0, newObject); number.addNewItemsAtStart(newObject); //just enough to create a new row at start } }; addAtStartLink.setOutputMarkupPlaceholderTag(true); add(addAtStartLink); }
From source file:com.aplombee.examples.AjaxLinkPageWithBoundaries.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); IDataProvider<Integer> data = new ListDataProvider<Integer>(list); WebMarkupContainer numbers = new WebMarkupContainer("numbers"); //parent for quickview Component start, end;/*from ww w .j a v a2 s .co m*/ numbers.add(start = new Label("start").setOutputMarkupPlaceholderTag(true)); numbers.add(end = new Label("end").setOutputMarkupPlaceholderTag(true)); numbers.setOutputMarkupId(true); //needed for ajax final QuickView<Integer> number = new QuickView<Integer>("number", data, new ItemsNavigationStrategy(), start, end) { @Override protected void populate(Item<Integer> item) { item.add(new Label("display", item.getModel())); } }; numbers.add(number); add(numbers); AjaxLink addLink = new AjaxLink("addLink") { @Override public void onClick(AjaxRequestTarget target) { int newObject = list.get(list.size() - 1) + 1; list.add(newObject); number.addNewItems(newObject); //just enough to create a new row at last } }; addLink.setOutputMarkupPlaceholderTag(true); add(addLink); AjaxLink addAtStartLink = new AjaxLink("addAtStartLink") { @Override public void onClick(AjaxRequestTarget target) { int newObject = list.get(0) - 1; list.add(0, newObject); number.addNewItemsAtStart(newObject); //just enough to create a new row at start } }; addAtStartLink.setOutputMarkupPlaceholderTag(true); add(addAtStartLink); }
From source file:com.aplombee.examples.AjaxPagingNavigatorPage.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); IDataProvider<Integer> data = new ListDataProvider<Integer>(list); final int itemsPerRequest = 4;//rows created per request //quickview by default has DefaultReuseStrategy which works fine in case of paging QuickView<Integer> quickView = new QuickView<Integer>("number", data, itemsPerRequest) { @Override//from w w w. ja va 2s .com protected void populate(Item<Integer> item) { item.add(new Label("display", item.getModel())); } }; quickView.setReuseStrategy(new DefaultQuickReuseStrategy()); WebMarkupContainer numbers = new WebMarkupContainer("numbers"); //don't forget adding quickview to parent with any ajax navigator numbers.add(quickView); numbers.setOutputMarkupId(true); //don't forget required when using ajax navigators add(numbers); AjaxPagingNavigator navigator = new AjaxPagingNavigator("navigator", quickView); add(navigator); }
From source file:com.aplombee.examples.PageScrollBar.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); IDataProvider<Integer> data = new ListDataProvider<Integer>(list); final int itemsPerRequest = 14;//rows created per request //read more about {@see ItemsNavigationStrategy} ,it is one of provided strategy that can be used in //cases where new items has to be added without re-rendering QuickView quickView = new QuickView<Integer>("number", data, new ItemsNavigationStrategy(), itemsPerRequest) { @Override//from w w w . j av a2s.c o m protected void populate(Item<Integer> item) { item.add(new Label("display", item.getModel())); } }; WebMarkupContainer numbers = new WebMarkupContainer("numbers"); //don't forget adding quickview to parent with any ajax navigator numbers.add(quickView); numbers.setOutputMarkupId(true); //don't forget required when using ajaxrownavigator add(new AjaxPageScrollEventBehavior() { @Override protected void onScroll(AjaxRequestTarget target) { addItemsForNextPage(quickView); } }); add(numbers); }
From source file:com.aplombee.examples.ParentScrollBar.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); IDataProvider<Integer> data = new ListDataProvider<Integer>(list); final int itemsPerRequest = 14;//rows created per request //read more about {@see ItemsNavigationStrategy} ,it is one of provided strategy that can be used in //cases where new items has to be added without re-rendering QuickView quickView = new QuickView<Integer>("number", data, new ItemsNavigationStrategy(), itemsPerRequest) { @Override// w w w . j a v a2 s.c o m protected void populate(Item<Integer> item) { item.add(new Label("display", item.getModel())); } }; WebMarkupContainer numbers = new WebMarkupContainer("numbers"); //don't forget adding quickview to parent with any ajax navigator numbers.add(quickView); numbers.setOutputMarkupId(true); //don't forget required when using ajaxrownavigator add(numbers); numbers.add(new AjaxComponentScrollEventBehavior() { @Override protected void onScroll(AjaxRequestTarget target) { addItemsForNextPage(quickView); } }); }
From source file:com.aplombee.examples.QuickGridViewWithAjaxLink.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); IDataProvider<Integer> data = new ListDataProvider<Integer>(list); WebMarkupContainer numbers = new WebMarkupContainer("numbers"); //parent for quickview numbers.setOutputMarkupId(true); //needed for ajax final QuickGridView<Integer> number = new QuickGridView<Integer>("number", data, new ItemsNavigationStrategy()) { @Override/* w w w . j a v a 2 s. co m*/ protected void populate(CellItem<Integer> item) { item.add(new Label("display", item.getModel())); } @Override protected void populateEmptyItem(CellItem<Integer> item) { item.add(new Label("display")); } }; number.setColumns(2); numbers.add(number); add(numbers); AjaxLink addLink = new AjaxLink("addLink") { @Override public void onClick(AjaxRequestTarget target) { int newObject = list.get(list.size() - 1) + 1; list.add(newObject); int newObject2 = list.get(list.size() - 1) + 1; list.add(newObject2); List<Integer> newOnes = new ArrayList<Integer>(); newOnes.add(newObject); newOnes.add(newObject2); number.addRows(newOnes.iterator());//just enough to add new rows and corresponding cells } }; addLink.setOutputMarkupPlaceholderTag(true); add(addLink); AjaxLink addAtStartLink = new AjaxLink("addAtStartLink") { @Override public void onClick(AjaxRequestTarget target) { int newObject = list.get(0) - 1; list.add(0, newObject); int newObject2 = newObject - 1; list.add(0, newObject2); List<Integer> newOnes = new ArrayList<Integer>(); newOnes.add(newObject2); newOnes.add(newObject); number.addRowsAtStart(newOnes.iterator());//just enough to add new rows and corresponding cells } }; addAtStartLink.setOutputMarkupPlaceholderTag(true); add(addAtStartLink); }
From source file:com.aplombee.examples.QuickGridViewWithAjaxLinkAndBoundaries.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); IDataProvider<Integer> data = new ListDataProvider<Integer>(list); WebMarkupContainer numbers = new WebMarkupContainer("numbers"); //parent for quickview numbers.setOutputMarkupId(true); //needed for ajax Component start, end;//from w ww. ja v a 2 s . com numbers.add(start = new Label("start").setOutputMarkupPlaceholderTag(true)); numbers.add(end = new Label("end").setOutputMarkupPlaceholderTag(true)); final QuickGridView<Integer> number = new QuickGridView<Integer>("number", data, new ItemsNavigationStrategy(), start, end) { @Override protected void populate(CellItem<Integer> item) { item.add(new Label("display", item.getModel())); } @Override protected void populateEmptyItem(CellItem<Integer> item) { item.add(new Label("display")); } }; number.setColumns(2); numbers.add(number); add(numbers); AjaxLink addLink = new AjaxLink("addLink") { @Override public void onClick(AjaxRequestTarget target) { int newObject = list.get(list.size() - 1) + 1; list.add(newObject); int newObject2 = list.get(list.size() - 1) + 1; list.add(newObject2); List<Integer> newOnes = new ArrayList<Integer>(); newOnes.add(newObject); newOnes.add(newObject2); number.addRows(newOnes.iterator());//just enough to add new rows and corresponding cells } }; addLink.setOutputMarkupPlaceholderTag(true); add(addLink); AjaxLink addAtStartLink = new AjaxLink("addAtStartLink") { @Override public void onClick(AjaxRequestTarget target) { int newObject = list.get(0) - 1; list.add(0, newObject); int newObject2 = newObject - 1; list.add(0, newObject2); List<Integer> newOnes = new ArrayList<Integer>(); newOnes.add(newObject2); newOnes.add(newObject); number.addRowsAtStart(newOnes.iterator());//just enough to add new rows and corresponding cells } }; addAtStartLink.setOutputMarkupPlaceholderTag(true); add(addAtStartLink); }
From source file:com.aplombee.examples.QuickGridViewWithAjaxPagingNavigator.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); IDataProvider<Integer> data = new ListDataProvider<Integer>(list); //quickview by default has DefaultReuseStrategy which works fine in case of paging gridView = new QuickGridView<Integer>("gv", data) { @Override/*w w w . ja va 2s .c o m*/ protected void populateEmptyItem(final CellItem<Integer> item) { item.add(new Label("label")); } @Override protected void populate(final CellItem<Integer> item) { item.add(new Label("label", item.getModel())); } }; gridView.setColumns(10); gridView.setRows(5); WebMarkupContainer parent = new WebMarkupContainer("parent"); parent.add(gridView); parent.setOutputMarkupPlaceholderTag(true); add(parent); AjaxPagingNavigator navigator = new AjaxPagingNavigator("nav", gridView); add(navigator); }
From source file:com.aplombee.examples.QuickGridViewWithItemsNavigatorPage.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); IDataProvider<Integer> data = new ListDataProvider<Integer>(list); gridView = new QuickGridView<Integer>("gv", data, new ItemsNavigationStrategy()) { @Override/*from w w w . j a v a 2 s .c o m*/ protected void populateEmptyItem(final CellItem<Integer> item) { item.add(new Label("label")); } @Override protected void populate(final CellItem<Integer> item) { item.add(new Label("label", item.getModel())); } }; gridView.setColumns(10); gridView.setRows(5); // gridView.setReuseStrategy(new ReuseAllStrategy()); WebMarkupContainer parent = new WebMarkupContainer("parent"); parent.add(gridView); parent.setOutputMarkupPlaceholderTag(true); add(parent); AjaxItemsNavigator navigator = new AjaxItemsNavigator("nav", gridView); add(navigator); }
From source file:com.aplombee.examples.QuickGridViewWithPageScrollBehavior.java
License:Apache License
@Override protected void onInitialize() { super.onInitialize(); IDataProvider<Integer> data = new ListDataProvider<Integer>(list); //read more about {@see ItemsNavigationStrategy} ,it is one of provided strategy that can be used in //cases where new items has to be added without re-rendering QuickView gridView = new QuickGridView<Integer>("gv", data, new ItemsNavigationStrategy()) { @Override/* www. j a v a2 s . c o m*/ protected void populateEmptyItem(final CellItem<Integer> item) { item.add(new Label("label")); } @Override protected void populate(final CellItem<Integer> item) { item.add(new Label("label", item.getModel())); } }; gridView.setColumns(10); gridView.setRows(5); WebMarkupContainer parent = new WebMarkupContainer("parent"); parent.add(gridView); parent.setOutputMarkupPlaceholderTag(true); add(parent); //pagescrollbehavior added to page add(new AjaxPageScrollEventBehavior() { @Override protected void onScroll(AjaxRequestTarget target) { addItemsForNextPage(gridView); } }); }