Example usage for org.apache.wicket.markup.html.list ListView ListView

List of usage examples for org.apache.wicket.markup.html.list ListView ListView

Introduction

In this page you can find the example usage for org.apache.wicket.markup.html.list ListView ListView.

Prototype

public ListView(final String id, final List<T> list) 

Source Link

Usage

From source file:de.tudarmstadt.ukp.dkpro.uby.vis.webapp.tryUby.ComparePanel.java

License:Apache License

public ComparePanel(String id, IModel<?> model) {
    super(id, model);

    final Map<String, String> res_map = new HashMap<String, String>();

    res_map.put("FN", "rgba(148,103,189,0.8)");
    res_map.put("OW_deu", "rgba(255,152,150,0.8)");
    res_map.put("OW_eng", "rgba(214,39,40,0.8)");
    res_map.put("OntoWktDE", "rgba(255,187,120,0.8)");
    res_map.put("OntoWktEN", "rgba(255,127,14,0.8)");
    res_map.put("VN", "rgba(188,189,34,0.8)");
    res_map.put("WikiDE", "rgba(174,199,232,0.8)");
    res_map.put("WikiEN", "rgba(31,119,180,0.8)");
    res_map.put("WktDE", "rgba(152,223,138,0.8)");
    res_map.put("WktEN", "rgba(44,160,44,0.8)");
    res_map.put("WN", "rgba(23,190,207,0.8)");

    compareSense = new ListView("compareSense", model) {

        @Override//from   w w w . ja va 2s .  com
        protected void populateItem(ListItem item) {

            Map<String, StringValue> detail = (Map<String, StringValue>) item.getModelObject();

            String res_id = (detail.get("senseId")).toString();

            String[] result_arr = res_id.split("_");

            String res_color = result_arr[0];

            if (res_id.contains("OW_eng") || res_id.contains("OW_deu")) {
                res_color = result_arr[0].concat("_").concat(result_arr[1]);
            }

            String border = " border : 1px solid " + res_map.get(res_color) + ";" + "border-left-width: 15px";

            item.add(new AttributeAppender("style", border));

            item.add(new Label("senseId", detail.get("senseId")));
            item.add(new Label("senseDefinition", detail.get("senseDefinition")));
            item.add(new Label("synsetDefinition", detail.get("synsetDefinition")));
            item.add(new Label("senseExample", detail.get("senseExample")));
        }

    };

    add(compareSense);
    setOutputMarkupId(true);
}

From source file:de.tudarmstadt.ukp.dkpro.uby.vis.webapp.tryUby.DetailPanel.java

License:Apache License

public DetailPanel(String id, IModel<?> model) {
    super(id, model);

    final Map<String, String> res_map = new HashMap<String, String>();

    res_map.put("FN", "rgba(148,103,189,0.8)");
    res_map.put("OW_deu", "rgba(255,152,150,0.8)");
    res_map.put("OW_eng", "rgba(214,39,40,0.8)");
    res_map.put("OntoWktDE", "rgba(255,187,120,0.8)");
    res_map.put("OntoWktEN", "rgba(255,127,14,0.8)");
    res_map.put("VN", "rgba(188,189,34,0.8)");
    res_map.put("WikiDE", "rgba(174,199,232,0.8)");
    res_map.put("WikiEN", "rgba(31,119,180,0.8)");
    res_map.put("WktDE", "rgba(152,223,138,0.8)");
    res_map.put("WktEN", "rgba(44,160,44,0.8)");
    res_map.put("WN", "rgba(23,190,207,0.8)");

    detailSenseList = new ListView("detailSense", model) {

        @Override//w w w  . j  a  v  a2 s  . co  m
        protected void populateItem(ListItem item) {

            Map<String, StringValue> detail = (Map<String, StringValue>) item.getModelObject();

            String res_id = (detail.get("senseId")).toString();

            String[] result_arr = res_id.split("_");

            String res_color = result_arr[0];

            if (res_id.contains("OW_eng") || res_id.contains("OW_deu")) {
                res_color = result_arr[0].concat("_").concat(result_arr[1]);
            }

            String border = " border : 1px solid " + res_map.get(res_color) + ";" + "border-left-width: 15px";

            item.add(new AttributeAppender("style", border));

            item.add(new Label("word", detail.get("word")));
            item.add(new Label("senseId", detail.get("senseId")));
            item.add(new Label("senseDefinition", detail.get("senseDefinition")));
            item.add(new Label("synsetDefinition", detail.get("synsetDefinition")));
            item.add(new Label("senseExample", detail.get("senseExample")));
        }

    };

    add(detailSenseList);
    setOutputMarkupId(true);
}

From source file:de.voolk.marbles.web.pages.base.panel.MenuPanel.java

License:Open Source License

@SuppressWarnings("serial")
public MenuPanel(String id) {
    super(id);/* ww  w .  j  a v  a  2s.  c o m*/
    add(new BookmarkablePageLink<String>("logoutPage", LogoutPage.class));
    BookmarkablePageLink<String> profilePage = new BookmarkablePageLink<String>("profilePage",
            ProfilePage.class);
    add(profilePage);
    profilePage.add(new Label("userName", getLogin()));
    ListModel<MenuItem> itemsModel = new ListModel<MenuItem>();
    itemsModel.setObject(items);
    add(new ListView<MenuItem>("items", itemsModel) {

        @Override
        protected void populateItem(ListItem<MenuItem> listItem) {
            MenuItem item = listItem.getModelObject();
            if (item.getPage() == getPage().getClass()) {
                listItem.add(new AttributeAppender("class", new Model<String>("current_page_item"), " "));
            }
            listItem.add(item.getLink());
        }
    });
}

From source file:de.voolk.marbles.web.pages.content.panel.BreadCrumbPanel.java

License:Open Source License

public BreadCrumbPanel(String id, List<IPage> path) {
    super(id);/*from  w  ww  . ja v  a  2 s  . c  o m*/
    ListModel<IPage> pagesModel = new ListModel<IPage>();
    pagesModel.setObject(path);
    add(new ListView<IPage>("pages", pagesModel) {

        @Override
        @SuppressWarnings("unchecked")
        protected void populateItem(ListItem<IPage> iPageListItem) {
            IPage page = iPageListItem.getModelObject();
            PageParameters parameters = new PageParameters();
            IModel name = new Model<String>(page.getName());

            parameters.put("id", page.getId());
            Link link = new BookmarkablePageLink("link", getDisplayPageClass(), parameters);
            link.add(new Label("name", name));
            String sep;
            if (page.isRoot()) {
                sep = "";
            } else {
                sep = ">";
            }
            Label separator = new Label("sep", sep);
            iPageListItem.add(link);
            iPageListItem.add(separator);
        }

    });
}

From source file:de.widone.web.panel.tasklist.TaskListPanel.java

License:Apache License

private Component createListView(final IModel<TaskList> taskList) {
    return new ListView<Task>(TASK_LIST, new PropertyModel<List<Task>>(taskList, "tasks")) {
        public void populateItem(final ListItem<Task> item) {
            TaskListPanel.this.populateItem(item, taskList);
        }/*from   w w  w. ja v  a2 s .  c o  m*/
    };
}

From source file:dk.frankbille.scoreboard.components.GameTeamPanel.java

License:Open Source License

public GameTeamPanel(String id, final IModel<GameTeam> model, final IModel<Player> selectedPlayerModel,
        final RatingCalculator rating) {
    super(id, model);

    final IModel<List<Player>> playersModel = new LoadableDetachableModel<List<Player>>() {
        private static final long serialVersionUID = 1L;

        @Override/*www.j a v  a2  s. c  o  m*/
        protected List<Player> load() {
            GameTeam gameTeam = model.getObject();
            Team team = gameTeam.getTeam();
            List<Player> players = new ArrayList<Player>(team.getPlayers());
            Collections.sort(players, new PlayerComparator());
            return players;
        }
    };

    WebMarkupContainer gameTeamPanel = new WebMarkupContainer("gameTeamPanel");
    add(gameTeamPanel);

    // Popover - Only show if RatingCalculator is available
    if (rating != null) {
        gameTeamPanel.add(new PopoverBehavior(new StringResourceModel("rating", null),
                new AbstractReadOnlyModel<CharSequence>() {
                    private static final long serialVersionUID = 1L;

                    @Override
                    public CharSequence getObject() {
                        StringBuilder b = new StringBuilder();

                        b.append("<small>");

                        GameTeam gameTeam = model.getObject();
                        List<Player> players = playersModel.getObject();

                        Localizer localizer = Application.get().getResourceSettings().getLocalizer();

                        // Player ratings
                        for (Player player : players) {
                            b.append(player.getName()).append(": ");

                            GamePlayerRatingInterface playerRating = rating
                                    .getGamePlayerRating(gameTeam.getGame().getId(), player.getId());
                            b.append(RATING_VALUE.format(playerRating.getRating()));

                            b.append(" <sup>");
                            b.append(RATING_CHANGE.format(playerRating.getChange()));
                            b.append("</sup><br>");
                        }

                        // Team rating
                        GameRatingInterface gameRatingChange = rating
                                .getGameRatingChange(gameTeam.getGame().getId());
                        b.append("<strong>");
                        b.append(localizer.getString("team", GameTeamPanel.this)).append(": ");
                        b.append(RATING_VALUE.format(gameRatingChange.getRating(gameTeam.getId())));
                        b.append(" ");
                        double change = gameRatingChange.getChange(gameTeam.getId());

                        int playerCount = players.size();
                        if (playerCount > 0) {
                            change /= playerCount;
                        }
                        b.append(" <sup>");
                        b.append(RATING_CHANGE.format(change));

                        b.append("</sup></strong></small>");

                        return b;
                    }
                }));
    }

    // Players
    gameTeamPanel.add(new ListView<Player>("players", playersModel) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<Player> item) {
            final Player player = item.getModelObject();

            PageParameters pp = new PageParameters();
            pp.set(0, player.getId());
            BookmarkablePageLink<Void> playerLink = new BookmarkablePageLink<Void>("playerLink",
                    PlayerPage.class, pp);
            item.add(playerLink);
            playerLink.add(new Label("name", new PropertyModel<String>(item.getModel(), "name")));

            item.add(new Label("plus", "+") {
                private static final long serialVersionUID = 1L;

                @Override
                public boolean isVisible() {
                    return item.getIndex() < getViewSize() - 1;
                }
            });
        }
    });
}

From source file:dk.frankbille.scoreboard.components.LeagueSelector.java

License:Open Source License

public LeagueSelector(String id, IModel<League> model) {
    super(id, model);

    setRenderBodyOnly(true);//w ww.  jav a 2s  .co  m

    final IModel<SortedMap<Boolean, Set<League>>> allLeaguesModel = new LoadableDetachableModel<SortedMap<Boolean, Set<League>>>() {
        @Override
        protected SortedMap<Boolean, Set<League>> load() {
            SortedMap<Boolean, Set<League>> groupedLeagues = new TreeMap<Boolean, Set<League>>(
                    Ordering.natural().reverse());

            List<League> allLeagues = scoreBoardService.getAllLeagues();
            for (League league : allLeagues) {
                Set<League> leaguesByState = groupedLeagues.get(league.isActive());
                if (leaguesByState == null) {
                    leaguesByState = new HashSet<League>();
                    groupedLeagues.put(league.isActive(), leaguesByState);
                }
                leaguesByState.add(league);
            }

            return groupedLeagues;
        }
    };

    IModel<List<Boolean>> leagueStatesModel = new LoadableDetachableModel<List<Boolean>>() {
        @Override
        protected List<Boolean> load() {
            return new ArrayList<Boolean>(allLeaguesModel.getObject().keySet());
        }
    };

    Select<League> select = new Select<League>("select", model) {

    };
    select.add(new Select2Enabler());
    select.add(AttributeAppender.replace("class", new AbstractReadOnlyModel<String>() {
        @Override
        public String getObject() {
            return LeagueSelector.this.getMarkupAttributes().getString("class", "");
        }
    }));
    add(select);

    select.add(new ListView<Boolean>("leagueGroups", leagueStatesModel) {

        @Override
        protected void populateItem(ListItem<Boolean> item) {
            item.add(AttributeAppender.replace("label",
                    new StringResourceModel("active.${modelObject}", new Model<Serializable>(item))));

            List<League> leagueList = Ordering.usingToString()
                    .sortedCopy(allLeaguesModel.getObject().get(item.getModelObject()));

            item.add(new SelectOptions<League>("leagues", leagueList, new IOptionRenderer<League>() {
                @Override
                public String getDisplayValue(League league) {
                    return league.getName();
                }

                @Override
                public IModel<League> getModel(League league) {
                    return new Model<League>(league);
                }
            }));
        }
    });
}

From source file:dk.frankbille.scoreboard.components.menu.MenuItemsPanel.java

License:Open Source License

public MenuItemsPanel(String id, IModel<List<MenuItem>> itemsModel,
        final IModel<MenuItemType> activeMenuItemModel) {
    super(id, itemsModel);

    add(new ListView<MenuItem>("menuItems", itemsModel) {
        private static final long serialVersionUID = 1L;

        @Override/*from w w w.  jav a 2s  .  c o  m*/
        protected void populateItem(final ListItem<MenuItem> listItem) {
            listItem.add(new AttributeAppender("class", new AbstractReadOnlyModel<String>() {
                private static final long serialVersionUID = 1L;

                @Override
                public String getObject() {
                    MenuItemType activeMenuType = activeMenuItemModel.getObject();
                    MenuItemType menuItemType = listItem.getModelObject().getMenuItemType();

                    return activeMenuType == menuItemType ? "active" : null;
                }
            }));

            final WebMarkupContainer link;

            final MenuItem menuItem = listItem.getModelObject();
            if (menuItem instanceof MenuItemPageLink) {
                final MenuItemPageLink menuItemLink = (MenuItemPageLink) menuItem;

                link = new BookmarkablePageLink<Void>("menuLink", menuItemLink.getPageClass(),
                        menuItemLink.getPageParameters());
                listItem.add(link);

                link.add(new Label("menuLabel", menuItemLink.getLabel()).setRenderBodyOnly(true));
                link.add(new WebMarkupContainer("downIcon").setVisible(false));

                listItem.add(new WebComponent("subMenu").setVisible(false));
            } else if (menuItem instanceof MenuItemContainer) {
                MenuItemContainer menuItemContainer = (MenuItemContainer) menuItem;

                listItem.add(AttributeModifier.append("class", "dropdown"));

                link = new WebMarkupContainer("menuLink");
                link.setOutputMarkupId(true);
                link.add(AttributeModifier.replace("href", "#"));
                link.add(AttributeModifier.replace("class", "dropdown-toggle"));
                link.add(AttributeModifier.replace("data-toggle", "dropdown"));
                link.add(AttributeModifier.replace("role", "button"));
                listItem.add(link);

                link.add(new Label("menuLabel", menuItemContainer.getLabel()).setRenderBodyOnly(true));
                link.add(new WebMarkupContainer("downIcon").setRenderBodyOnly(true));

                MenuItemsPanel subMenu = new MenuItemsPanel("subMenu",
                        new PropertyModel<List<MenuItem>>(menuItemContainer, "subMenuItems"),
                        new Model<MenuItemType>());
                subMenu.add(AttributeModifier.replace("class", "dropdown-menu"));
                subMenu.add(AttributeModifier.replace("role", "menu"));
                subMenu.add(AttributeModifier.replace("aria-labelledby", new AbstractReadOnlyModel<String>() {
                    private static final long serialVersionUID = 1L;

                    @Override
                    public String getObject() {
                        return link.getMarkupId();
                    }
                }));
                listItem.add(subMenu);
            } else {
                throw new IllegalStateException("Unknown menuItem type: " + menuItem);
            }

            // Icon
            WebComponent icon = new WebComponent("icon") {
                private static final long serialVersionUID = 1L;

                @Override
                public boolean isVisible() {
                    return menuItem.getIconName() != null;
                }
            };
            icon.add(AttributeModifier.replace("class", new AbstractReadOnlyModel<String>() {
                private static final long serialVersionUID = 1L;

                @Override
                public String getObject() {
                    return "icon-" + menuItem.getIconName();
                }
            }));
            link.add(icon);
        }
    });
}

From source file:dk.frankbille.scoreboard.components.NavigationPanel.java

License:Open Source License

public NavigationPanel(String id, final PaginationModel<T> paginationModel) {
    super(id);//from   ww w. j ava2 s  .  c  o m

    setOutputMarkupId(true);

    AjaxLink<Void> previousLink = new AjaxLink<Void>("previousLink") {
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            pageChanged(target, paginationModel.previousPage());
        }

        @Override
        public boolean isEnabled() {
            return paginationModel.isPreviousPossible();
        }
    };
    previousLink.add(AttributeModifier.append("class", new AbstractReadOnlyModel<String>() {
        private static final long serialVersionUID = 1L;

        @Override
        public String getObject() {
            if (paginationModel.isPreviousPossible()) {
                return null;
            }

            return "disabled";
        }
    }));
    add(previousLink);

    IModel<List<Integer>> pagesModel = new LoadableDetachableModel<List<Integer>>() {
        private static final long serialVersionUID = 1L;

        @Override
        protected List<Integer> load() {
            List<Integer> pages = new ArrayList<Integer>();
            for (int page = 1; page <= paginationModel.getMaxPage(); page++) {
                pages.add(page);
            }
            return pages;
        }
    };
    add(new ListView<Integer>("pageLinks", pagesModel) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<Integer> item) {
            AjaxLink<Void> pageLink = new AjaxLink<Void>("pageLink") {
                private static final long serialVersionUID = 1L;

                @Override
                public void onClick(AjaxRequestTarget target) {
                    paginationModel.setPage(item.getModelObject());
                    pageChanged(target, paginationModel.getPage());
                }

                @Override
                public boolean isEnabled() {
                    return paginationModel.getPage() != item.getModelObject();
                }
            };
            pageLink.add(AttributeModifier.append("class", new AbstractReadOnlyModel<String>() {
                private static final long serialVersionUID = 1L;

                @Override
                public String getObject() {
                    if (paginationModel.getPage() == item.getModelObject()) {
                        return "btn-primary disabled";
                    }

                    return null;
                }
            }));
            item.add(pageLink);

            pageLink.add(new Label("pageLabel", item.getModel()));
        }
    });

    AjaxLink<Void> nextLink = new AjaxLink<Void>("nextLink") {
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(AjaxRequestTarget target) {
            pageChanged(target, paginationModel.nextPage());
        }

        @Override
        public boolean isEnabled() {
            return paginationModel.isNextPossible();
        }
    };
    nextLink.add(AttributeModifier.append("class", new AbstractReadOnlyModel<String>() {
        private static final long serialVersionUID = 1L;

        @Override
        public String getObject() {
            if (paginationModel.isNextPossible()) {
                return null;
            }

            return "disabled";
        }
    }));
    add(nextLink);
}

From source file:dk.frankbille.scoreboard.components.PlayedGameListPanel.java

License:Open Source License

public PlayedGameListPanel(String id, IModel<List<Game>> gamesModel, final IModel<Player> selectedPlayerModel,
        final RatingCalculator rating) {
    super(id);/*from ww  w.  jav a  2  s.  co  m*/

    setOutputMarkupId(true);

    final PaginationModel<Game> paginationModel = new PaginationModel<Game>(gamesModel, 0, 20);

    add(new ListView<Game>("games", paginationModel) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<Game> item) {
            item.add(RowColorModifier.create(item));
            PageParameters pp = new PageParameters();
            pp.set(0, item.getModelObject().getId());
            BookmarkablePageLink<Void> link = new SecureExecutionBookmarkablePageLink<Void>("gameLink",
                    EditGamePage.class, pp);
            item.add(link);

            link.add(new DateLabel("date", new PropertyModel<Date>(item.getModel(), "date"),
                    new PatternDateConverter("yyyy-MM-dd", false)));

            //Add the winning and losing team
            Game game = item.getModelObject();
            List<GameTeam> teamsSortedByScore = game.getTeamsSortedByScore();
            item.add(new GameTeamPanel("team1", new Model<GameTeam>(teamsSortedByScore.get(0)),
                    selectedPlayerModel, rating));
            item.add(new GameTeamPanel("team2", new Model<GameTeam>(teamsSortedByScore.get(1)),
                    selectedPlayerModel, rating));

            //Add the game score
            item.add(new Label("score", new AbstractReadOnlyModel<String>() {
                private static final long serialVersionUID = 1L;

                @Override
                public String getObject() {
                    StringBuilder b = new StringBuilder();
                    Game game = item.getModelObject();
                    List<GameTeam> teamsSortedByScore = game.getTeamsSortedByScore();
                    b.append(teamsSortedByScore.get(0).getScore());
                    b.append(" : ");
                    b.append(teamsSortedByScore.get(1).getScore());
                    return b.toString();
                }
            }));
        }
    });

    WebMarkupContainer footer = new WebMarkupContainer("footer") {
        private static final long serialVersionUID = 1L;

        @Override
        public boolean isVisible() {
            return paginationModel.isPaginationNeeded();
        }
    };
    add(footer);

    footer.add(new NavigationPanel<Game>("navigation", paginationModel) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onPageChanged(AjaxRequestTarget target, int selectedPage) {
            target.add(PlayedGameListPanel.this);
        }
    });
}