Example usage for org.apache.wicket.markup.html.navigation.paging PagingNavigation setOutputMarkupId

List of usage examples for org.apache.wicket.markup.html.navigation.paging PagingNavigation setOutputMarkupId

Introduction

In this page you can find the example usage for org.apache.wicket.markup.html.navigation.paging PagingNavigation setOutputMarkupId.

Prototype

public final Component setOutputMarkupId(final boolean output) 

Source Link

Document

Sets whether or not component will output id attribute into the markup.

Usage

From source file:hsa.awp.admingui.view.CampaignListPanel.java

License:Open Source License

/**
 * Constructor with {@link Panel}ID.//w  ww  .java2  s .  co m
 *
 * @param id the id of the {@link Panel}.
 */
public CampaignListPanel(String id) {

    super(id);

    Form<Object> sortChoiceForm = new Form<Object>("campaignList.sortChoices");
    add(sortChoiceForm);

    LinkedList<String> sortFieldChoices = new LinkedList<String>();
    sortFieldChoices.addAll(SortChoice.names());

    LinkedList<String> sortDirectionChoices = new LinkedList<String>();
    sortDirectionChoices.add(ascending);
    sortDirectionChoices.add(descending);

    final DropDownChoice<String> sortFields = new DropDownChoice<String>("campaignList.sortFields",
            new Model<String>(ascending), sortFieldChoices);
    sortFields.setOutputMarkupId(true);
    sortChoiceForm.add(sortFields);

    final DropDownChoice<String> sortDirections = new DropDownChoice<String>("CampaignList.sortDirections",
            new Model<String>(SortChoice.NAME.name), sortDirectionChoices);
    sortDirections.setOutputMarkupId(true);
    sortChoiceForm.add(sortDirections);

    sortFields.add(new AjaxFormComponentUpdatingBehavior("onchange") {
        /**
         * unique serialization id.
         */
        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(AjaxRequestTarget target) {

            boolean asc = false;
            if (sortDirections.getModelObject() != null && sortDirections.getModelObject().equals(ascending)) {
                asc = false;
            }
            sort(SortChoice.choiceByName(sortFields.getModelObject()), asc);
            target.addComponent(campaignListMarkupContainer);
        }
    });

    sortDirections.add(new AjaxFormComponentUpdatingBehavior("onchange") {
        /**
         * unique serialization id.
         */
        private static final long serialVersionUID = 1L;

        @Override
        protected void onUpdate(AjaxRequestTarget target) {

            boolean asc = false;
            if (sortDirections.getModelObject() != null && sortDirections.getModelObject().equals(ascending)) {
                asc = false;
            }
            sort(SortChoice.choiceByName(sortFields.getModelObject()), asc);
            target.addComponent(campaignListMarkupContainer);
        }
    });

    campaigns = controller.getCampaignsByMandator(getSession());

    ListActiveCampaignsPanel activeCampaigns = new ListActiveCampaignsPanel("campaignList.activeCampaigns");
    activeCampaigns.add(new AjaxSelfUpdatingTimerBehavior(Duration.minutes(5d)));
    add(activeCampaigns);

    final SimpleDateFormat format = new SimpleDateFormat("dd.MM.yyyy HH:mm");

    campaignList = new PageableListView<Campaign>("campaignList", campaigns, pagesize) {
        /**
         * unique identifier.
         */
        private static final long serialVersionUID = 5446468946546848946L;

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

            Campaign campaign = item.getModelObject();

            Label state = new Label("campaignState");
            String stateString;
            if (campaign.isRunning()) {
                stateString = "running";
            } else if (campaign.isTerminated()) {
                stateString = "terminated";
            } else {
                stateString = "notYetStarted";
            }
            state.add(new AttributeAppender("class", new Model<String>(stateString), " "));
            item.add(state);

            item.add(new Label("startShow", format.format(item.getModelObject().getStartShow().getTime())));
            item.add(new Label("endShow", format.format(item.getModelObject().getEndShow().getTime())));

            item.add(new Label("campaignName", item.getModelObject().getName()));

            item.add(createEditLink(item));
            item.add(createDetailLink(item));
            AbstractDeleteLink<Campaign> deleteLink = new AbstractDeleteLink<Campaign>("deleteLink",
                    item.getModelObject()) {
                @Override
                public void modifyItem(Campaign campaign) {
                    controller.deleteCampaign(campaign);
                    setResponsePage(new OnePanelPage(new CampaignListPanel(OnePanelPage.getPanelIdOne())));
                }
            };
            deleteLink.setVisible(!(item.getModelObject().getAppliedProcedures().size() > 0));
            item.add(deleteLink);
        }

        private Link<AlterCampaignPanel> createEditLink(final ListItem<Campaign> item) {
            Link<AlterCampaignPanel> alterCampaign = new Link<AlterCampaignPanel>("campaignLink",
                    new PropertyModel<AlterCampaignPanel>(AlterCampaignPanel.class, "alterCampaign")) {
                /**
                 * unique serialization id.
                 */
                private static final long serialVersionUID = -5466954901705080742L;

                @Override
                public void onClick() {

                    setResponsePage(new OnePanelPage(new AlterCampaignPanel(OnePanelPage.getPanelIdOne(),
                            item.getModelObject().getId())));
                }
            };

            AccessUtil.allowRender(alterCampaign, "editCampaign");

            return alterCampaign;
        }

        private Link<CampaignDetailPanel> createDetailLink(final ListItem<Campaign> item) {
            Link<CampaignDetailPanel> campDetail;
            campDetail = new Link<CampaignDetailPanel>("eventList",
                    new PropertyModel<CampaignDetailPanel>(CampaignDetailPanel.class, "eventList")) {
                /**
                 * unique serialization id.
                 */
                private static final long serialVersionUID = -5466954901732080742L;

                @Override
                public void onClick() {

                    setResponsePage(new OnePanelPage(new CampaignDetailPanel(OnePanelPage.getPanelIdOne(),
                            item.getModelObject().getId())));
                }
            };
            return campDetail;
        }
    };
    campaignList.setOutputMarkupId(true);
    sort(SortChoice.NAME, true);

    campaignListMarkupContainer = new WebMarkupContainer("campaignList.listContainer");
    campaignListMarkupContainer.add(campaignList);
    campaignListMarkupContainer.setOutputMarkupId(true);

    PagingNavigation navigation = new PagingNavigation("campaignList.navigation", campaignList);
    navigation.setOutputMarkupId(true);
    campaignListMarkupContainer.add(navigation);

    if (campaignList.getModelObject().size() < pagesize) {
        navigation.setVisible(false);
    }

    add(campaignListMarkupContainer);
    add(feedbackPanel);
}