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:com.kenai.wicketgae.web.panels.person.edit.PersonPhoneNumbersEditPanel.java

License:Apache License

public PersonPhoneNumbersEditPanel(final String id, final IModel<Person> model, final MainPage mainPage) {
    super(id, model);
    setOutputMarkupId(true);//from ww w .j  ava  2 s  . c om

    final Form<Void> form = new Form<Void>("form");
    add(form);

    final IModel<List<PhoneNumber>> listModel = new PropertyModel<List<PhoneNumber>>(model, "phoneNumbers");

    listView = new ListView<PhoneNumber>("phoneNumbers", listModel) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<PhoneNumber> item) {
            final IModel<PhoneNumber> phoneNumberModel = item.getModel();
            item.add(new Label("type", new PropertyModel<String>(phoneNumberModel, "type")));
            item.add(new Label("number", new PropertyModel<String>(phoneNumberModel, "number")));

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

                @Override
                public void onClick(final AjaxRequestTarget target) {
                    deletePhoneNumber(phoneNumberModel, target);
                }

            };
            item.add(delete);

        }

        @Override
        protected ListItem<PhoneNumber> newItem(final int index) {
            return new OddEvenListItem<PhoneNumber>(index, getListItemModel(getModel(), index));
        }

    };
    listView.setOutputMarkupId(true);
    form.add(listView);

    final TextField<String> typeTextField = new TextField<String>("newType",
            new PropertyModel<String>(this, "newType"));
    form.add(typeTextField);

    final TextField<String> numberTextField = new TextField<String>("newNumber",
            new PropertyModel<String>(this, "newNumber"));
    numberTextField.setRequired(true);
    form.add(numberTextField);

    final Button add = new AjaxButton("add", form) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onSubmit(final AjaxRequestTarget target, final Form<?> form) {
            addPhoneNumber(target);
        }

    };
    form.add(add);

}

From source file:com.lyndir.lhunath.portal.apps.page.AboutPage.java

License:Apache License

public AboutPage() {

    add(new ListView<AppVersion>("versions", AppVersion.getAll()) {

        @Override//from   w  w w .ja v  a 2  s .c o m
        protected void populateItem(final ListItem<AppVersion> versionItem) {

            AppVersion version = versionItem.getModelObject();

            versionItem.add(new Label("version", version.getFriendlyVersion()));
            versionItem.add(new ListView<String>("changes", version.getChanges()) {

                @Override
                protected void populateItem(final ListItem<String> versionChangeItem) {

                    versionChangeItem.add(new Label("change", versionChangeItem.getModelObject()));
                }
            });
            versionItem.setVisible(!version.getChanges().isEmpty());
        }
    });
}

From source file:com.lyndir.lhunath.portal.apps.page.ArchivePage.java

License:Apache License

@Override
protected void onInitialize() {

    super.onInitialize();

    add(new ListView<AppVersion>("entries", new LoadableDetachableModel<List<? extends AppVersion>>() {
        @Override//from  w  ww .j  a v a  2  s .  c om
        protected List<? extends AppVersion> load() {

            List<AppVersion> versions = new LinkedList<AppVersion>(AppVersion.getAll());
            Collections.reverse(versions);

            return versions;
        }
    }) {

        @Override
        protected void populateItem(final ListItem<AppVersion> entryItem) {

            final AppVersion version = entryItem.getModelObject();

            entryItem.add(new Label("version", version.getFriendlyVersion()));
            entryItem.add(new Label("date", DateFormat.getDateInstance(DateFormat.LONG, getLocale())
                    .format(version.getCompletionDate())));

            entryItem.add(new ContextImage("screenshot", version.getScreenShotLink()));
            entryItem.add(new ExternalLink("youtube", version.getYouTubeLink()) {

                @Override
                protected void onComponentTag(final ComponentTag tag) {

                    tag.put("onclick", version.getYouTubePageTrackCode());

                    super.onComponentTag(tag);
                }

                @Override
                protected void onConfigure() {

                    super.onConfigure();

                    setVisible(version.hasVideo());
                }
            });
            entryItem.add(new ExternalLink("flash", version.getFLVLink()) {

                @Override
                protected void onComponentTag(final ComponentTag tag) {

                    tag.put("onclick", version.getFLVPageTrackCode());

                    super.onComponentTag(tag);
                }

                @Override
                protected void onConfigure() {

                    super.onConfigure();

                    setVisible(version.hasVideo());
                }
            });
            entryItem.add(new ExternalLink("mpeg", version.getMP4Link()) {

                @Override
                protected void onComponentTag(final ComponentTag tag) {

                    tag.put("onclick", version.getMP4PageTrackCode());

                    super.onComponentTag(tag);
                }

                @Override
                protected void onConfigure() {

                    super.onConfigure();

                    setVisible(version.hasVideo());
                }
            });

            entryItem.add(new ListView<String>("changes", version.getChanges()) {

                @Override
                protected void populateItem(final ListItem<String> changesItem) {

                    changesItem.add(new Label("description", changesItem.getModelObject()));
                }
            });
            entryItem.add(new WebMarkupContainer("source") {
                @Override
                protected void onInitialize() {

                    super.onInitialize();

                    add(new ExternalLink("treeLink",
                            version.getApp().getSourceProvider().findTreeLinkFor(version)) {

                        @Override
                        protected void onInitialize() {

                            super.onInitialize();

                            add(new ExternalLink("snapshotLink",
                                    version.getApp().getSourceProvider().findSnapshotLinkFor(version)));
                        }
                    });
                }
            });
            entryItem.add(new ListView<Dependency>("dependencies", version.getDependencies()) {

                @Override
                protected void populateItem(final ListItem<Dependency> item) {

                    item.add(new ExternalLink("treeLink", item.getModelObject().getTreeLink()) {

                        @Override
                        protected void onInitialize() {

                            super.onInitialize();

                            add(new Label("name", item.getModelObject().getName()));
                            add(new ExternalLink("snapshotLink", item.getModelObject().getSnapshotLink()));
                        }
                    });
                }

                @Override
                protected void onConfigure() {

                    super.onConfigure();

                    setVisible(!getModelObject().isEmpty());
                }
            });
        }
    });
}

From source file:com.marc.lastweek.web.components.imagegallery.JQueryImagegallery.java

License:Open Source License

public JQueryImagegallery(String id, List<File> imagesList) {
    super(id);//w w w. j  a  va2 s .co  m

    this.add(HeaderContributor.forCss(new ResourceReference(JQueryImagegallery.class, GALLERY_CSS)));

    this.add(HeaderContributor.forJavaScript(new ResourceReference(JQueryImagegallery.class, GALLERY_JS)));
    this.add(HeaderContributor.forJavaScript(new ResourceReference(JQueryImagegallery.class, GALLERY_INIT_JS)));

    this.add(new ListView("imageGalleryList", imagesList) {
        private static final long serialVersionUID = 2408115049886403982L;

        @Override
        protected void populateItem(ListItem item) {
            final File file = (File) item.getModelObject();

            item.add(new Image("imageItem", new ImageFileResource(file)));

            if (item.getIndex() == 0) {
                item.add(new SimpleAttributeModifier("class", "active"));
            }
        }

    });

}

From source file:com.marc.lastweek.web.components.recommendedclassifiedads.RecommendedClassifiedAdsListPanel.java

License:Open Source License

public void initializeRecommendedClassifiedAdsList() {
    this.recommendedClassifiedAds = new ArrayList<ClassifiedAd>();
    List<ClassifiedAd> allRecommendedClassifiedAds = this.getAllRecommendedClassifiedAds();
    Random rand = new Random();
    if (allRecommendedClassifiedAds.size() > 0) {
        for (int i = 0; i < RECOMMENDED_ADS_NUMBER; i++) {
            int recommendedClassifiedAdIndex = rand.nextInt(allRecommendedClassifiedAds.size() - 1);
            this.recommendedClassifiedAds.add(allRecommendedClassifiedAds.get(recommendedClassifiedAdIndex));
        }//w ww  .j a v a2  s.c  o  m
    }
    this.recommendedClassifiedAdsList = new ListView("recommendedClassifiedAdsList",
            this.recommendedClassifiedAds) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(ListItem item) {
            ClassifiedAd classifiedAd = (ClassifiedAd) item.getModelObject();

            PageParameters linkParameters = new PageParameters();
            linkParameters.put(PageParametersNaming.PARAM_NAME_CLASSIFIED_AD_ID, classifiedAd.getId());
            Link classifiedAdLink = (new BookmarkablePageLink("classifiedAdLink", ClassifiedAdDetailPage.class,
                    linkParameters));
            classifiedAdLink.add(new Label("classifiedAdTitle", ViewUtils.labelizer(classifiedAd.getTitle())));
            item.add(classifiedAdLink);

            item.add(new Label("classifiedAdPublicationDate",
                    ViewUtils.labelizer(classifiedAd.getPublicationDate())));

            Label description = new Label("classifiedAdDescription",
                    ViewUtils.getDigest(classifiedAd.getDescription()));
            description.setEscapeModelStrings(false);
            item.add(description);
            item.add(new Label("classifiedAdPrice", ViewUtils.labelizer(classifiedAd.getPrice())));

            if (item.getIndex() % 2 == 1) {
                item.add(new SimpleAttributeModifier("class", "classified-ad-summary-alt"));
            }
        }
    };
    this.add(this.recommendedClassifiedAdsList);
}

From source file:com.marc.lastweek.web.pages.classifiedadslisting.FavoriteClassifiedAdsPage.java

License:Open Source License

public FavoriteClassifiedAdsPage() {
    super();/*  w w  w .  j a va 2 s  .  c  o  m*/

    this.add(new CreateNewAdPropagandaPanel("createNewAd"));

    this.classifiedList = new ListView("classifiedAdsList", new LoadableFavoritesModel()) {

        private static final long serialVersionUID = 4626162638077489818L;

        @Override
        protected void populateItem(ListItem item) {
            ClassifiedAd classifiedAd = (ClassifiedAd) item.getModelObject();
            final Long classifiedAdId = classifiedAd.getId();

            PageParameters linkParameters = new PageParameters();
            linkParameters.put(PageParametersNaming.PARAM_NAME_CLASSIFIED_AD_ID, classifiedAd.getId());
            Link classifiedAdLink = (new BookmarkablePageLink("classifiedAdLink", ClassifiedAdDetailPage.class,
                    linkParameters));
            classifiedAdLink.add(new Label("classifiedAdTitle", ViewUtils.labelizer(classifiedAd.getTitle())));
            item.add(classifiedAdLink);

            item.add(new Label("classifiedAdPublicationDate",
                    ViewUtils.labelizer(classifiedAd.getPublicationDate())));
            Label description = new Label("classifiedAdDescription",
                    ViewUtils.getDigest(classifiedAd.getDescription()));
            description.setEscapeModelStrings(false);
            item.add(description);
            item.add(new Label("classifiedAdPrice", ViewUtils.labelizer(classifiedAd.getPrice())));

            Link deleteLink = new Link("deleteLink") {
                private static final long serialVersionUID = -3978160233917347727L;

                @Override
                public void onClick() {
                    LastweekSession.get().removeFavorite(classifiedAdId);
                }

            };
            deleteLink.add(new JavaScriptAlertConfirmBehaviour("msg.delete"));
            item.add(deleteLink);

            if (item.getIndex() % 2 == 1) {
                item.add(new SimpleAttributeModifier("class", "classified-ad-summary-alt"));
            }
        }
    };
    this.add(this.classifiedList);

    // TODO: if list is empty, then add some kind of 'how to use favorites'

    this.add(new SendFavoritesMailForm("sendMailForm"));
}

From source file:com.marc.lastweek.web.pages.classifiedadslisting.FilterParametersPanel.java

License:Open Source License

public FilterParametersPanel(String id, final PageParameters parameters) {
    super(id);/*from  w w  w  .j a v a  2s  .co  m*/

    List<Filter> filtersList = initFilters(parameters);

    this.add(new ListView("filterList", filtersList) {
        private static final long serialVersionUID = 1194050258065567480L;

        @Override
        protected void populateItem(ListItem item) {
            PageParameters newParameters = (PageParameters) parameters.clone();
            Filter filter = (Filter) item.getModelObject();
            item.add(new Label("filterType",
                    ResourceUtils.createResourceModel(filter.getFilterType(), FilterParametersPanel.this)));
            item.add(new Label("filterValue", filter.getFilterValue()));

            newParameters.remove(filter.getFilterType());
            if (!filter.getFilterType().equals(PageParametersNaming.PARAM_NAME_SEARCH_TERM)) {
                newParameters.remove(filter.getFilterName());
            }

            // If category is removed, then subcategory is removed too
            if (filter.getFilterType().equals(PageParametersNaming.PARAM_NAME_CATEGORY_ID)) {
                if (newParameters.get(PageParametersNaming.PARAM_NAME_SUBCATEGORY_ID) != null) {
                    newParameters.remove(PageParametersNaming.PARAM_NAME_SUBCATEGORY_ID);
                    newParameters.remove(PageParametersNaming.PARAM_NAME_SUBCATEGORY_NAME);
                }
            }
            if (newParameters.size() >= 1) {
                item.add(new BookmarkablePageLink("deleteLink", FilterResultsPage.class, newParameters));
            } else {
                item.add(new BookmarkablePageLink("deleteLink", LastweekApplication.get().getHomePage()));
            }
        }

    });

}

From source file:com.marc.lastweek.web.pages.main.MainPage.java

License:Open Source License

public MainPage() {

    this.add(new CreateNewAdPropagandaPanel("createNewAd"));

    this.add(new ListView("categoriesList", new LoadableCategoriesListModel()) {

        private static final long serialVersionUID = -5142681180212487928L;

        @Override/*from   ww  w.jav  a2 s  . c o m*/
        protected void populateItem(ListItem listItem) {
            Category category = (Category) listItem.getModelObject();
            PageParameters linkParameters = new PageParameters();
            linkParameters.put(PageParametersNaming.PARAM_NAME_CATEGORY_ID, category.getId());
            linkParameters.put(PageParametersNaming.PARAM_NAME_CATEGORY_NAME,
                    StringEscapeUtils.escapeHtml(category.getName()));

            BookmarkablePageLink categoryLink = new BookmarkablePageLink("categoryLink",
                    FilterResultsPage.class, linkParameters);
            categoryLink.add(new Label("categoryName", category.getName()));
            listItem.add(categoryLink);
        }
    });

    this.add(new ListView("provincesList", new LoadableProvincesListModel()) {

        private static final long serialVersionUID = -5843308083402561880L;

        @Override
        protected void populateItem(ListItem listItem) {
            Province province = (Province) listItem.getModelObject();
            PageParameters linkParameters = new PageParameters();
            linkParameters.put(PageParametersNaming.PARAM_NAME_PROVINCE_ID, province.getId());
            linkParameters.put(PageParametersNaming.PARAM_NAME_PROVINCE_NAME,
                    StringEscapeUtils.escapeHtml(province.getName()));
            BookmarkablePageLink provinceLink = new BookmarkablePageLink("provinceLink",
                    FilterResultsPage.class, linkParameters);
            provinceLink.add(new Label("provinceName", province.getName()));

            if (listItem.getIndex() % 2 == 1) {
                listItem.add(new SimpleAttributeModifier("class", "parallel-column"));
            }

            listItem.add(provinceLink);
        }
    });

    /*
     * Clickable provinces map
     */

    ImageMap mapProvinceMap = new ImageMap("mapProvinceMap");

    for (Province province : LastweekApplication.get().getGeneralService().findAll(Province.class)) {
        String[] stringCoords = StringUtils.split(province.getCoords(), ",");
        int[] intCoords = new int[stringCoords.length];
        for (int i = 0; i < stringCoords.length; i++) {
            intCoords[i] = (new Integer(stringCoords[i].trim())).intValue();
        }
        PageParameters linkParameters = new PageParameters();
        linkParameters.put(PageParametersNaming.PARAM_NAME_PROVINCE_ID, province.getId());
        linkParameters.put(PageParametersNaming.PARAM_NAME_PROVINCE_NAME,
                StringEscapeUtils.escapeHtml(province.getName()));
        mapProvinceMap.addPolygonLink(intCoords, new BookmarkablePageLink("imageMapLink" + province.getId(),
                FilterResultsPage.class, linkParameters));
    }
    this.add(mapProvinceMap);

}

From source file:com.marc.lastweek.web.pages.newclassifiedadd.NewClassifiedAdProvincePage.java

License:Open Source License

public NewClassifiedAdProvincePage(NewClassifiedAdAndUserDataTO newClassifiedAdTO) {
    super(newClassifiedAdTO);
    //      add(new ProvincePanel("provincePanel"));
    WebMarkupContainer provinceDiv = new WebMarkupContainer("provinceDiv");
    ListView provinceListView = new ListView("provinceListView", new LoadableProvincesListModel()) {

        private static final long serialVersionUID = -5843308083402561880L;

        @Override/* w w  w  . jav  a  2s  .  c o  m*/
        protected void populateItem(ListItem listItem) {
            Province province = (Province) listItem.getModelObject();
            final Long provinceId = province.getId();
            final String provinceName = province.getName();

            Link provinceLink = new Link("provinceLink") {

                private static final long serialVersionUID = 1L;

                @Override
                public void onClick() {
                    NewClassifiedAdProvincePage.this.newClassifiedAdTO.setProvinceId(provinceId);
                    NewClassifiedAdProvincePage.this.newClassifiedAdTO.setProvinceName(provinceName);
                    this.setResponsePage(new NewClassifiedAdCategoryPage(
                            NewClassifiedAdProvincePage.this.newClassifiedAdTO));

                }
            };

            provinceLink.add(new Label("provinceLabel", provinceName));
            listItem.add(provinceLink);
        }
    };
    provinceDiv.add(provinceListView);

    this.add(provinceDiv);
}

From source file:com.mycompany.CheckGroupPage.java

License:Apache License

/**
 * Constructor/*from  w w  w  . j  a v  a 2  s  . c o m*/
 */
public CheckGroupPage() {
    final CheckGroup<Person> group = new CheckGroup<Person>("group", new ArrayList<Person>());
    group.setRenderBodyOnly(false);
    group.setOutputMarkupId(true);
    Form<?> form = new Form("form") {
        @Override
        protected void onSubmit() {
            info("selected person(s): " + group.getDefaultModelObjectAsString());

        }
    };
    form.add(new AjaxSubmitLink("testtest") {

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
            List personsList = getPersons();
            Collections.shuffle(personsList);
            target.add(group.replace(persons.setList(personsList)));
        }

    });
    add(form);
    form.add(group);
    group.add(new CheckGroupSelector("groupselector"));
    persons = new ListView<Person>("persons", getPersons()) {
        /**
         * @see
         * org.apache.wicket.markup.html.list.ListView#populateItem(org.apache.wicket.markup.html.list.ListItem)
         */
        @Override
        protected void populateItem(ListItem<Person> item) {
            item.add(new Check<Person>("checkbox", item.getModel()));
            item.add(new Label("name", new PropertyModel<String>(item.getDefaultModel(), "name")));
            item.add(new Label("lastName", new PropertyModel<String>(item.getDefaultModel(), "lastName")));
        }
    };
    group.add(new AjaxSubmitLink("linkSubmiter") {

        @Override
        protected void onSubmit(AjaxRequestTarget target, Form<?> form) {

            List personsList = getPersons();
            Collections.shuffle(personsList);
            target.add(group.replace(persons.setList(personsList)));
        }

    });
    persons.setReuseItems(true);
    persons.setOutputMarkupId(true);
    group.add(persons);

    add(new FeedbackPanel("feedback"));
}