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.alpharogroup.wicket.components.examples.radios.RadioGroupExamplePanel.java

License:Apache License

public RadioGroupExamplePanel(final String id, final IModel<Company> model) {
    super(id, model);
    // Radio buttons have to be part of a Form component.
    final Form<?> form = new Form<>("form");
    add(form);/*w w  w .  ja va2  s.  c om*/
    final RadioGroupModelBean<Company> radioGroupModel = new RadioGroupModelBean<>();
    setModel(model);
    // create list...
    final List<Company> comps = Arrays.asList(Company.builder().name("Ferrari").build(),
            Company.builder().name("Lamborgini").build(), Company.builder().name("Mazerati").build(),
            Company.builder().name("Porsche").build());
    // we can set the selected radio from the start or leave it blank...
    // radioGroupModel.setSelected(comps.get(0));
    radioGroupModel.setRadios(comps);

    final IModel<List<Company>> companies = new ListModel<Company>(comps);

    final RadioGroup<Company> group = new RadioGroup<Company>("group",
            new PropertyModel<Company>(radioGroupModel, "selected"));
    group.add(new AjaxFormChoiceComponentUpdatingBehavior() {
        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {
            target.add(getFeedback());
            info("Selected Type : " + radioGroupModel.getSelected());
        }
    });
    form.add(group);
    // Construct a radio button and label for each company.
    group.add(new ListView<Company>("choice", companies) {
        /**
         * The serialVersionUID.
         */
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<Company> it) {
            final Radio<Company> radio = new Radio<Company>("radio", it.getModel(), group);
            radio.setOutputMarkupId(true);
            it.add(radio);
            it.add(ComponentFactory.newLabel("label", radio.getMarkupId(),
                    Model.of(it.getModelObject().getName())));
        }
    });
    final RadioGroupPanel<Company> radioGroupPanel = new RadioGroupPanel<Company>("radioGroupPanel",
            Model.of(radioGroupModel)) {
        /**
         * The serialVersionUID
         */
        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(final AjaxRequestTarget target) {
            super.onUpdate(target);
            target.add(getFeedback());
            info("Selected Type : " + radioGroupModel.getSelected());
        }
    };
    add(radioGroupPanel);
}

From source file:de.alpharogroup.wicket.components.form.checkbox.CheckGroupSelectorPanel.java

License:Apache License

/**
 * Factory method for creating the new {@link ListView} for the choices. This method is invoked
 * in the constructor from the derived classes and can be overridden so users can provide their
 * own version of the new {@link ListView} for the choices.
 *
 * @param id//from   w w w  .  j  a v  a2  s .  c o  m
 *            the id
 * @param model
 *            the model
 * @return the new {@link ListView} for the choices.
 */
protected ListView<T> newChoices(final String id, final IModel<CheckboxModelBean<T>> model) {
    final ListView<T> choices = new ListView<T>("choices", model.getObject().getChoices()) {
        /** The serialVersionUID. */
        private static final long serialVersionUID = 1L;

        /**
         * {@inheritDoc}
         */
        @Override
        protected void populateItem(final ListItem<T> item) {
            item.add(new Check<>("checkbox", item.getModel()));
            item.add(new Label("label", new PropertyModel<String>(item.getDefaultModel(),
                    model.getObject().getLabelPropertyExpression())));
        }
    };
    choices.setReuseItems(true);
    return choices;
}

From source file:de.alpharogroup.wicket.components.i18n.list.SpanListPanel.java

License:Apache License

/**
 * {@inheritDoc}//from w ww. j ava  2  s. co m
 */
@Override
protected ListView<T> newListView(final String id, final IModel<List<T>> model) {
    final ListView<T> listView = new ListView<T>(id, model) {
        /** The Constant serialVersionUID. */
        private static final long serialVersionUID = 1L;

        /**
         * {@inheritDoc}
         */
        @Override
        protected void onComponentTag(final ComponentTag tag) {
            super.onComponentTag(tag);
            // Turn the div tag to a span
            tag.setName("span");
        }

        /**
         * {@inheritDoc}
         */
        @Override
        protected void populateItem(final ListItem<T> item) {
            item.add(newListComponent("item", item));
        }

    };
    listView.setReuseItems(true);
    return listView;
}

From source file:de.alpharogroup.wicket.components.listview.ListViewPanel.java

License:Apache License

/**
 * Factory method for creating a new {@link ListView}. This method is invoked in the constructor
 * from the derived classes and can be overridden so users can provide their own version of the
 * new {@link ListView}./*from  w  ww .  ja v  a  2  s  . co  m*/
 *
 * @param id
 *            the id
 * @param model
 *            the model
 * @return the new {@link ListView}.
 */
protected ListView<T> newListView(final String id, final IModel<List<T>> model) {
    final ListView<T> listView = new ListView<T>(id, model) {
        /** The Constant serialVersionUID. */
        private static final long serialVersionUID = 1L;

        /**
         * {@inheritDoc}
         */
        @Override
        protected void populateItem(final ListItem<T> item) {
            item.add(newListComponent("item", item));
        }
    };
    listView.setReuseItems(true);
    return listView;
}

From source file:de.alpharogroup.wicket.components.radio.AjaxRadioPanel.java

License:Apache License

/**
 * Factory method for create the new {@link ListView} for the {@link AjaxRadio} objects. This
 * method is invoked in the constructor from the derived classes and can be overridden so users
 * can provide their own version of a new {@link ListView} for the {@link AjaxRadio} objects.
 *
 * @param group/*  ww  w  . j a v a2 s. c  o m*/
 *            the group
 * @param model
 *            the model
 * @return the new {@link ListView} for the {@link AjaxRadio} objects.
 */
protected Component newRadios(final RadioGroup<T> group, final IModel<RadioGroupModelBean<T>> model) {
    return new ListView<T>("radioButtons", model.getObject().getRadios()) {
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<T> item) {
            final AjaxRadio<T> radio = newAjaxRadio("radio", group, item);
            final Label label = ComponentFactory.newLabel("label", radio.getMarkupId(),
                    new PropertyModel<String>(item.getModel(), model.getObject().getLabelPropertyExpression()));
            item.add(radio);
            item.add(label);
        }
    };
}

From source file:de.alpharogroup.wicket.components.radio.RadioGroupPanel.java

License:Apache License

/**
 * Factory method for create the new {@link ListView} for the {@link Radio} objects. This method
 * is invoked in the constructor from the derived classes and can be overridden so users can
 * provide their own version of a new {@link ListView} for the {@link Radio} objects.
 *
 * @param id//from ww w . ja v  a 2 s . co m
 *            the id
 * @param model
 *            the model
 * @return the new {@link ListView} for the {@link Radio} objects.
 */
protected ListView<T> newRadioListView(final String id, final IModel<RadioGroupModelBean<T>> model) {
    final ListView<T> radioListView = new ListView<T>("choice", model.getObject().getRadios()) {
        /**
         * The serialVersionUID.
         */
        private static final long serialVersionUID = 1L;

        /**
         * {@inheritDoc}
         */
        @Override
        protected void populateItem(final ListItem<T> item) {
            final Radio<T> radio = new Radio<>("radio", item.getModel(), RadioGroupPanel.this.group);
            radio.setOutputMarkupId(true);
            item.add(radio);
            item.add(RadioGroupPanel.this.newLabel("label", radio.getMarkupId(), item.getModel()));
        }
    };
    radioListView.setOutputMarkupId(true);
    return radioListView;
}

From source file:de.alpharogroup.wicket.data.provider.examples.listview.ListViewPanel.java

License:Apache License

public ListViewPanel(final String id) {
    super(id);//from www . j  a  v  a  2s.  c o  m
    final List<Person> persons = PersonDatabaseManager.getInstance().getPersons();
    final ListView<Person> listView = new ListView<Person>("listView", persons) {

        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<Person> item) {
            item.setDefaultModel(new CompoundPropertyModel<Person>(item.getModel()));
            item.add(new Label("firstname"));
            item.add(new Label("lastname"));
            item.add(new Label("dateOfBirth"));
        }
    };
    add(listView);
}

From source file:de.alpharogroup.wicket.dialogs.examples.HomePage.java

License:Apache License

/**
 * Constructor that is invoked when page is invoked without a session.
 *
 * @param parameters/*w w w. j  av  a  2  s.  co  m*/
 *            Page parameters
 */
public HomePage(final PageParameters parameters) {

    final WebMarkupContainer wmc = new WebMarkupContainer("comments");
    wmc.setOutputMarkupId(true);

    final List<MessageBean> noteList = new ArrayList<MessageBean>();
    final MessageBean messageBean = new MessageBean();
    messageBean.setMessageContent("hello");
    final IModel<MessageBean> dialogModel = new CompoundPropertyModel<MessageBean>(messageBean);
    final ModalWindow modalWindow = new BaseModalWindow<MessageBean>("baseModalWindow", dialogModel, "Title",
            350, 160) {
        /**
         * The serialVersionUID.
         */
        private static final long serialVersionUID = 1L;

        @Override
        public void onCancel(final AjaxRequestTarget target) {
            target.add(wmc);
            close(target);
        }

        @Override
        public void onSelect(final AjaxRequestTarget target, final MessageBean object) {
            final MessageBean clone = (MessageBean) WicketObjects.cloneObject(object);
            noteList.add(clone);
            // Clear the content from textarea in the dialog.
            object.setMessageContent("");
            target.add(wmc);
            close(target);
        }

    };
    modalWindow.setCssClassName(ModalWindow.CSS_CLASS_GRAY);
    modalWindow.setResizable(false);
    add(modalWindow);

    final AjaxLink<String> linkToModalWindow = new AjaxLink<String>("linkToModalWindow") {
        /**
         * The serialVersionUID.
         */
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick(final AjaxRequestTarget target) {
            modalWindow.show(target);
        }
    };
    // Add the WebMarkupContainer...
    add(wmc);

    final Label linkToModalWindowLabel = new Label("linkToModalWindowLabel", "show modal dialog");
    linkToModalWindow.add(linkToModalWindowLabel);
    // The AjaxLink to open the modal window
    add(linkToModalWindow);
    // here we have to set the message content from the bean in a repeater...
    final ListView<MessageBean> repliesAndNotesListView = new ListView<MessageBean>("repliesAndNotesListView",
            noteList) {
        /**
         * The serialVersionUID.
         */
        private static final long serialVersionUID = 1L;

        @Override
        protected void populateItem(final ListItem<MessageBean> item) {
            final MessageBean repliesandnotes = item.getModelObject();
            item.add(new RepliesandnotesPanel("repliesandnotesPanel", repliesandnotes));

        }
    };
    repliesAndNotesListView.setVisible(true);
    wmc.add(repliesAndNotesListView);

    @SuppressWarnings("rawtypes")
    final Link showUploadPage = new Link("showUploadPage") {

        /**
         *
         */
        private static final long serialVersionUID = 1L;

        @Override
        public void onClick() {
            setResponsePage(new UploadPage(getPageParameters()));
        }

    };
    add(showUploadPage);

    add(new ModalDialogWithStylePanel("modalDialogWithStylePanel", Model.of("bla")));

}

From source file:de.codepitbull.wiquery.HomePage.java

License:Apache License

private Component createAccordion(String wicketId) {
    ArrayList<String> stringList = new ArrayList<String>();
    stringList.add("text1");
    stringList.add("text2");
    stringList.add("text3");
    return new Accordion(wicketId)
            .add(new ListView<String>("listView", Model.<ArrayList<String>>of(stringList)) {
                @Override//ww w  .ja va2 s . c om
                protected void populateItem(ListItem<String> stringListItem) {
                    stringListItem.setRenderBodyOnly(true);
                    stringListItem.add(
                            new Label("header", "Header " + stringListItem.getIndex()).setRenderBodyOnly(true));
                    stringListItem.add(new Label("text", stringListItem.getModelObject()));
                }
            });
}

From source file:de.flapdoodle.wicket.examples.model.UseModelsPage.java

License:Apache License

public UseModelsPage() {
    final ArrayList<String> source = new ArrayList<String>(Arrays.asList("first", "second", "third"));

    IModel<List<String>> listModel = Models.unmodifiable(source);

    IModel<List<String>> emptyIfNullListModel = Models.emptyIfNull(listModel);

    IModel<Integer> listSizeModel = Models.on(emptyIfNullListModel)
            .apply(new Function1<Integer, List<String>>() {
                @Override/*from  w ww .j a va 2 s . co m*/
                public Integer apply(List<String> value) {
                    return value.size();
                }
            });

    IModel<String> firstEntryModel = Models.on(emptyIfNullListModel)
            .apply(new Function1<String, List<String>>() {
                @Override
                public String apply(List<String> value) {
                    return !value.isEmpty() ? value.get(0) : null;
                }
            });

    final WebMarkupContainer ajaxBorder = new WebMarkupContainer("ajaxBorder");
    ajaxBorder.setOutputMarkupId(true);

    ajaxBorder.add(new ListView<String>("list", emptyIfNullListModel) {
        @Override
        protected void populateItem(ListItem<String> item) {
            item.add(new Label("label", item.getModel()));
            item.add(new AjaxLink<String>("link", Model.of(item.getModelObject())) {
                @Override
                public void onClick(AjaxRequestTarget target) {
                    source.remove(getModelObject());
                    target.add(ajaxBorder);
                }
            });
        }
    });

    ajaxBorder.add(new Label("size", listSizeModel));
    ajaxBorder.add(new Label("first", firstEntryModel));
    add(ajaxBorder);
}