List of usage examples for org.apache.wicket.ajax.markup.html AjaxLink add
public MarkupContainer add(final Component... children)
From source file:com.evolveum.midpoint.web.component.assignment.MultipleAssignmentSelector.java
License:Apache License
private Component createRowLink(String id, final IModel<SelectableBean<AssignmentEditorDto>> rowModel) { AjaxLink<SelectableBean<AssignmentEditorDto>> button = new AjaxLink<SelectableBean<AssignmentEditorDto>>(id, rowModel) {/*w w w . ja va2 s .c o m*/ @Override public IModel<?> getBody() { AssignmentEditorDto dto = (AssignmentEditorDto) rowModel.getObject(); String name = StringUtils.isNotEmpty(dto.getNameForTargetObject()) ? dto.getNameForTargetObject() : dto.getName(); return new Model<>(name); } @Override public void onClick(AjaxRequestTarget target) { LOGGER.trace("{} CLICK: {}", this, rowModel.getObject()); toggleRow(rowModel); target.add(this); } @Override protected void onComponentTag(ComponentTag tag) { super.onComponentTag(tag); if (rowModel.getObject().isSelected()) { tag.put("class", "list-group-item active"); tag.put("style", "background-color: #eee; border-color: #d6d6d6; color: #000;"); } else { tag.put("class", "list-group-item"); } String description = ((AssignmentEditorDto) rowModel.getObject()).getDescription(); if (description != null) { tag.put("title", description); } } }; button.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return ((AssignmentEditorDto) rowModel.getObject()).getStatus() != UserDtoStatus.DELETE; } }); button.setOutputMarkupId(true); return button; }
From source file:com.evolveum.midpoint.web.component.assignment.RoleCatalogItemButton.java
License:Apache License
private void initLayout() { setOutputMarkupId(true);// www . ja v a 2s . c o m WebMarkupContainer itemButtonContainer = new WebMarkupContainer(ID_ITEM_BUTTON_CONTAINER); itemButtonContainer.setOutputMarkupId(true); itemButtonContainer.add(new AttributeAppender("class", getBackgroundClass(getModelObject()))); add(itemButtonContainer); AjaxLink inner = new AjaxLink(ID_INNER) { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget ajaxRequestTarget) { targetObjectDetailsPerformed(RoleCatalogItemButton.this.getModelObject(), ajaxRequestTarget); } }; inner.add(new VisibleEnableBehaviour() { private static final long serialVersionUID = 1L; @Override public boolean isEnabled() { return isMultiUserRequest() || canAssign(RoleCatalogItemButton.this.getModelObject()); } }); inner.add(new AttributeAppender("title", getModelObject().getName())); itemButtonContainer.add(inner); Label nameLabel = new Label(ID_INNER_LABEL, getModelObject().getName()); inner.add(nameLabel); Label descriptionLabel = new Label(ID_INNER_DESCRIPTION, getModelObject().getTargetRef() != null ? getModelObject().getTargetRef().getDescription() : ""); descriptionLabel.setOutputMarkupId(true); inner.add(descriptionLabel); AjaxLink detailsLink = new AjaxLink(ID_DETAILS_LINK) { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget ajaxRequestTarget) { assignmentDetailsPerformed(RoleCatalogItemButton.this.getModelObject(), ajaxRequestTarget); } }; detailsLink.add(getFooterLinksEnableBehaviour()); detailsLink.add(AttributeAppender.append("title", AssignmentsUtil.getShoppingCartAssignmentsLimitReachedTitleModel(getPageBase()))); detailsLink.add(AttributeAppender.append("class", new LoadableModel<String>() { @Override protected String load() { return detailsLink.isEnabled() ? "shopping-cart-item-button-details" : "shopping-cart-item-button-details-disabled"; } })); itemButtonContainer.add(detailsLink); Label detailsLinkLabel = new Label(ID_DETAILS_LINK_LABEL, createStringResource("MultiButtonPanel.detailsLink")); detailsLinkLabel.setRenderBodyOnly(true); detailsLink.add(detailsLinkLabel); AjaxLink detailsLinkIcon = new AjaxLink(ID_DETAILS_LINK_ICON) { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget target) { } }; detailsLinkIcon.add(getFooterLinksEnableBehaviour()); detailsLink.add(detailsLinkIcon); AjaxLink addToCartLink = new AjaxLink(ID_ADD_TO_CART_LINK) { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget ajaxRequestTarget) { addAssignmentPerformed(RoleCatalogItemButton.this.getModelObject(), ajaxRequestTarget); } }; addToCartLink.add(getFooterLinksEnableBehaviour()); addToCartLink.add(AttributeAppender.append("title", AssignmentsUtil.getShoppingCartAssignmentsLimitReachedTitleModel(getPageBase()))); addToCartLink.add(AttributeAppender.append("class", new LoadableModel<String>() { @Override protected String load() { return addToCartLink.isEnabled() ? "shopping-cart-item-button-add" : "shopping-cart-item-button-add-disabled"; } })); itemButtonContainer.add(addToCartLink); AjaxLink addToCartLinkIcon = new AjaxLink(ID_ADD_TO_CART_LINK_ICON) { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget target) { } }; addToCartLinkIcon.add(getFooterLinksEnableBehaviour()); addToCartLink.add(addToCartLinkIcon); WebMarkupContainer icon = new WebMarkupContainer(ID_TYPE_ICON); icon.add(new AttributeAppender("class", WebComponentUtil.createDefaultBlackIcon(getModelObject().getType().getQname()))); itemButtonContainer.add(icon); WebMarkupContainer alreadyAssignedIcon = new WebMarkupContainer(ID_ALREADY_ASSIGNED_ICON); alreadyAssignedIcon.add(new AttributeAppender("title", getAlreadyAssignedIconTitleModel(getModelObject()))); alreadyAssignedIcon.add(new VisibleEnableBehaviour() { private static final long serialVersionUID = 1L; @Override public boolean isVisible() { return !isMultiUserRequest() && getModelObject().isAlreadyAssigned(); } }); itemButtonContainer.add(alreadyAssignedIcon); }
From source file:com.evolveum.midpoint.web.component.assignment.UserSelectionButton.java
License:Apache License
private void initLayout() { AjaxLink<String> userSelectionButton = new AjaxLink<String>(ID_USER_SELECTION_BUTTON) { private static final long serialVersionUID = 1L; @Override//from w w w .j a v a 2s. c om protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); attributes.setEventPropagation(AjaxRequestAttributes.EventPropagation.BUBBLE); } @Override public void onClick(AjaxRequestTarget target) { if (showUserSelectionPopup) { initUserSelectionPopup(target); } showUserSelectionPopup = true; } }; userSelectionButton.add(AttributeModifier.append("class", getTargetUserButtonClass())); userSelectionButton.setOutputMarkupId(true); userSelectionButton.add(new AttributeAppender("title", new IModel<String>() { private static final long serialVersionUID = 1L; @Override public String getObject() { return getUserSelectionButtonTitle(); } })); add(userSelectionButton); Label label = new Label(ID_USER_SELECTION_BUTTON_LABEL, new IModel<String>() { private static final long serialVersionUID = 1L; @Override public String getObject() { return getUserButtonLabel(); } }); label.setRenderBodyOnly(true); userSelectionButton.add(label); AjaxLink deleteButton = new AjaxLink(ID_DELETE_SELECTED_USER_BUTTON) { private static final long serialVersionUID = 1L; @Override public void onClick(AjaxRequestTarget target) { UserSelectionButton.this.onDeleteSelectedUsersPerformed(target); } }; deleteButton.add(new VisibleEnableBehaviour() { private static final long serialVersionUID = 1L; @Override public boolean isVisible() { return isDeleteButtonVisible(); } }); userSelectionButton.add(deleteButton); }
From source file:com.evolveum.midpoint.web.component.data.column.LinkIconPanel.java
License:Apache License
private void initLayout(IModel<String> model, IModel<String> titleModel) { AjaxLink link = new AjaxLink(ID_LINK) { @Override/*from w w w . j a v a 2 s .com*/ public void onClick(AjaxRequestTarget target) { onClickPerformed(target); } }; Label image = new Label(ID_IMAGE); image.add(AttributeModifier.replace("class", model)); if (titleModel != null) { image.add(AttributeModifier.replace("title", titleModel)); } link.add(image); link.setOutputMarkupId(true); add(link); }
From source file:com.evolveum.midpoint.web.component.data.column.LinkPanel.java
License:Apache License
public LinkPanel(String id, IModel<String> label) { super(id);/*w w w .j a v a 2s . c o m*/ AjaxLink link = new AjaxLink(ID_LINK) { @Override public void onClick(AjaxRequestTarget target) { LinkPanel.this.onClick(target); } @Override public String getBeforeDisabledLink() { return null; } @Override public String getAfterDisabledLink() { return null; } }; link.add(new Label(ID_LABEL, label)); link.add(new VisibleEnableBehaviour() { @Override public boolean isEnabled() { return LinkPanel.this.isEnabled(); } }); add(link); }
From source file:com.evolveum.midpoint.web.component.data.column.TwoValueLinkPanel.java
License:Apache License
public TwoValueLinkPanel(String id, IModel<String> label, IModel<String> description) { super(id);//w w w . j a va 2 s . co m AjaxLink link = new AjaxLink(ID_LINK) { @Override public void onClick(AjaxRequestTarget target) { TwoValueLinkPanel.this.onClick(target); } // @Override // public String getBeforeDisabledLink() { // return null; // } // // @Override // public String getAfterDisabledLink() { // return null; // } }; link.add(new Label(ID_LABEL, label)); link.add(new VisibleEnableBehaviour() { @Override public boolean isEnabled() { return TwoValueLinkPanel.this.isEnabled(); } }); add(link); add(new Label(ID_DESCRIPTION, description)); }
From source file:com.evolveum.midpoint.web.component.data.paging.NavigatorPanel.java
License:Apache License
private void initPrevious() { WebMarkupContainer previous = new WebMarkupContainer(ID_PREVIOUS); previous.add(new AttributeModifier("class", new AbstractReadOnlyModel<String>() { @Override/* ww w .j a v a 2 s .c om*/ public String getObject() { return isPreviousEnabled() ? "" : "disabled"; } })); add(previous); AjaxLink previousLink = new AjaxLink(ID_PREVIOUS_LINK) { @Override public void onClick(AjaxRequestTarget target) { previousPerformed(target); } }; previousLink.add(new VisibleEnableBehaviour() { @Override public boolean isEnabled() { return isPreviousEnabled(); } }); previous.add(previousLink); }
From source file:com.evolveum.midpoint.web.component.data.paging.NavigatorPanel.java
License:Apache License
private void initNext() { WebMarkupContainer next = new WebMarkupContainer(ID_NEXT); next.add(new AttributeModifier("class", new AbstractReadOnlyModel<String>() { @Override/*from w ww.j a v a2s . co m*/ public String getObject() { return isNextEnabled() ? "" : "disabled"; } })); add(next); AjaxLink nextLink = new AjaxLink(ID_NEXT_LINK) { @Override public void onClick(AjaxRequestTarget target) { nextPerformed(target); } }; nextLink.add(new VisibleEnableBehaviour() { @Override public boolean isEnabled() { return isNextEnabled(); } }); next.add(nextLink); }
From source file:com.evolveum.midpoint.web.component.form.multivalue.GenericMultiValueLabelEditPanel.java
License:Apache License
private void initButtons(WebMarkupContainer buttonGroup, final ListItem<T> item) { AjaxLink add = new AjaxLink(ID_ADD) { @Override/*from w w w . j a va2 s . c o m*/ public void onClick(AjaxRequestTarget target) { addValuePerformed(target); } }; add.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return isAddButtonVisible(item); } }); buttonGroup.add(add); AjaxLink remove = new AjaxLink(ID_REMOVE) { @Override public void onClick(AjaxRequestTarget target) { removeValuePerformed(target, item); } }; remove.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return isRemoveButtonVisible(); } }); buttonGroup.add(remove); }
From source file:com.evolveum.midpoint.web.component.form.multivalue.MultiValueAutoCompleteTextPanel.java
License:Apache License
private void initLayout(final boolean inputEnabled) { WebMarkupContainer placeholderContainer = new WebMarkupContainer(ID_PLACEHOLDER_CONTAINER); placeholderContainer.setOutputMarkupPlaceholderTag(true); placeholderContainer.setOutputMarkupPlaceholderTag(true); placeholderContainer.add(new VisibleEnableBehaviour() { @Override// www. ja va2 s .c om public boolean isVisible() { return getModel().getObject().isEmpty(); } }); add(placeholderContainer); AjaxLink placeholderAdd = new AjaxLink(ID_PLACEHOLDER_ADD) { @Override public void onClick(AjaxRequestTarget target) { addValuePerformed(target); } }; placeholderAdd.add(new AttributeAppender("class", new AbstractReadOnlyModel<String>() { @Override public String getObject() { if (buttonsDisabled()) { return " " + CSS_DISABLED; } return ""; } })); placeholderAdd.setOutputMarkupId(true); placeholderAdd.setOutputMarkupPlaceholderTag(true); placeholderContainer.add(placeholderAdd); ListView repeater = new ListView<T>(ID_REPEATER, getModel()) { @Override protected void populateItem(final ListItem<T> item) { AutoCompleteSettings autoCompleteSettings = new AutoCompleteSettings(); autoCompleteSettings.setShowListOnEmptyInput(true); AutoCompleteTextField<String> autoCompleteEditor = new AutoCompleteTextField<String>(ID_TEXT, createTextModel(item.getModel()), autoCompleteSettings) { @Override protected Iterator<String> getChoices(String input) { return createAutoCompleteObjectList(input); } }; autoCompleteEditor.add(createAutoCompleteValidator()); autoCompleteEditor.add(new AjaxFormComponentUpdatingBehavior("onchange") { @Override protected void onUpdate(AjaxRequestTarget target) { } }); item.add(autoCompleteEditor); autoCompleteEditor.add(AttributeAppender.replace("placeholder", createEmptyItemPlaceholder())); if (!inputEnabled) { autoCompleteEditor.add(new AttributeModifier("disabled", "disabled")); } item.add(autoCompleteEditor); WebMarkupContainer buttonGroup = new WebMarkupContainer(ID_BUTTON_GROUP); item.add(buttonGroup); initButtons(buttonGroup, item); } }; repeater.setOutputMarkupId(true); repeater.setOutputMarkupPlaceholderTag(true); repeater.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return !getModel().getObject().isEmpty(); } }); add(repeater); }