List of usage examples for org.apache.wicket.ajax.markup.html AjaxLink AjaxLink
public AjaxLink(final String id)
From source file:com.evolveum.midpoint.web.component.prism.PrismValuePanel.java
License:Apache License
private void initLayout(IModel<String> label, Form form) { //feedback// w w w . j a va 2 s . co m FeedbackPanel feedback = new FeedbackPanel(ID_FEEDBACK); feedback.setOutputMarkupId(true); add(feedback); //input InputPanel input = createInputComponent("input", label, form); initAccessBehaviour(input); add(input); feedback.setFilter(new ComponentFeedbackMessageFilter(input.getBaseFormComponent())); //buttons AjaxLink addButton = new AjaxLink("addButton") { @Override public void onClick(AjaxRequestTarget target) { addValue(target); } }; addButton.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return isAddButtonVisible(); } }); add(addButton); AjaxLink removeButton = new AjaxLink("removeButton") { @Override public void onClick(AjaxRequestTarget target) { removeValue(target); } }; removeButton.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return isRemoveButtonVisible(); } }); add(removeButton); }
From source file:com.evolveum.midpoint.web.component.prism.show.SceneButtonPanel.java
License:Apache License
private void initLayout(final IModel<SceneDto> model) { AjaxLink<String> minimize = new AjaxLink<String>(ID_MINIMIZE_BUTTON) { private static final long serialVersionUID = 1L; @Override/* ww w. java 2 s . c o m*/ public void onClick(AjaxRequestTarget target) { minimizeOnClick(target); } }; add(minimize); Label icon = new Label(ID_ICON); icon.add(AttributeModifier.append("class", new AbstractReadOnlyModel<String>() { private static final long serialVersionUID = 1L; @Override public String getObject() { SceneDto dto = model.getObject(); if (dto.isMinimized()) { return GuiStyleConstants.CLASS_ICON_EXPAND; } return GuiStyleConstants.CLASS_ICON_COLLAPSE; } })); minimize.add(icon); icon.add(new AttributeAppender("title", new AbstractReadOnlyModel<String>() { private static final long serialVersionUID = 1L; @Override public String getObject() { SceneDto dto = model.getObject(); if (dto.isMinimized()) { return getString("prismOptionButtonPanel.maximize"); } return getString("prismOptionButtonPanel.minimize"); } }, "")); }
From source file:com.evolveum.midpoint.web.component.prism.SimpleErrorPanel.java
License:Apache License
@Override protected void initLayout() { Label icon = new Label(ID_ICON); add(icon);//from w ww. j a v a2 s . c om Label description = new Label(ID_DESCRIPTION, new AbstractReadOnlyModel<String>() { @Override public String getObject() { return getDescription(); } }); add(description); AjaxLink link = new AjaxLink(ID_LINK) { @Override public void onClick(AjaxRequestTarget target) { onShowMorePerformed(target); } }; add(link); Label showMore = new Label(ID_SHOW_MORE, new AbstractReadOnlyModel<String>() { @Override public String getObject() { return createStringResource("simpleErrorPanel.label.showMore").getString(); } }); link.add(showMore); }
From source file:com.evolveum.midpoint.web.component.search.BrowserPopupPanel.java
License:Apache License
private void initLayout() { IModel value = new PropertyModel(getModel(), SearchValue.F_LABEL); TextField input = new TextField(ID_BROWSER_INPUT, value); add(input);/*from w w w . ja v a 2 s. c om*/ AjaxLink browse = new AjaxLink(ID_BROWSE) { @Override public void onClick(AjaxRequestTarget target) { browsePerformed(target); } }; add(browse); }
From source file:com.evolveum.midpoint.web.component.search.SearchFragmentBase.java
License:Apache License
private void initButtons() { AjaxLink remove = new AjaxLink(ID_REMOVE) { @Override// ww w . j av a 2 s. c o m public void onClick(AjaxRequestTarget target) { removePerformed(target); } }; add(remove); AjaxLink add = new AjaxLink(ID_ADD) { @Override public void onClick(AjaxRequestTarget target) { addPerformed(target); } }; add(add); }
From source file:com.evolveum.midpoint.web.component.search.SearchItemPanel.java
License:Apache License
private void initLayout() { popoverModel = new LoadableModel<SearchItemPopoverDto>(false) { @Override//from w ww . j a va 2 s.c om protected SearchItemPopoverDto load() { return loadPopoverItems(); } }; AjaxLink mainButton = new AjaxLink(ID_MAIN_BUTTON) { @Override public void onClick(AjaxRequestTarget target) { editPerformed(target); } }; add(mainButton); Label label = new Label(ID_LABEL, createLabelModel()); label.setRenderBodyOnly(true); mainButton.add(label); AjaxLink deleteButton = new AjaxLink(ID_DELETE_BUTTON) { @Override public void onClick(AjaxRequestTarget target) { deletePerformed(target); } }; mainButton.add(deleteButton); deleteButton.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return !getModelObject().isFixed(); } }); initPopover(); }
From source file:com.evolveum.midpoint.web.component.search.SearchPanel.java
License:Apache License
private void initLayout() { moreDialogModel = new LoadableModel<MoreDialogDto>(false) { @Override/*from www.ja v a2s . c o m*/ protected MoreDialogDto load() { MoreDialogDto dto = new MoreDialogDto(); dto.setProperties(createPropertiesList()); return dto; } }; Form form = new Form(ID_FORM); add(form); ListView items = new ListView<SearchItem>(ID_ITEMS, new PropertyModel<List<SearchItem>>(getModel(), Search.F_ITEMS)) { @Override protected void populateItem(ListItem<SearchItem> item) { SearchItemPanel searchItem = new SearchItemPanel(ID_ITEM, item.getModel()); item.add(searchItem); } }; items.add(createAdvancedVisibleBehaviour(false)); form.add(items); WebMarkupContainer moreGroup = new WebMarkupContainer(ID_MORE_GROUP); moreGroup.add(createAdvancedVisibleBehaviour(false)); form.add(moreGroup); AjaxLink more = new AjaxLink(ID_MORE) { @Override public void onClick(AjaxRequestTarget target) { Component button = SearchPanel.this.get(createComponentPath(ID_FORM, ID_MORE_GROUP, ID_MORE)); Component popover = SearchPanel.this.get(createComponentPath(ID_POPOVER)); togglePopover(target, button, popover, 14); } }; more.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { Search search = getModelObject(); return !search.getAvailableDefinitions().isEmpty(); } }); more.setOutputMarkupId(true); moreGroup.add(more); WebMarkupContainer searchContainer = new WebMarkupContainer(ID_SEARCH_CONTAINER); searchContainer.setOutputMarkupId(true); form.add(searchContainer); AjaxSubmitButton searchSimple = new AjaxSubmitButton(ID_SEARCH_SIMPLE) { @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(form); } @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { searchPerformed(target); } }; searchSimple.add(new VisibleEnableBehaviour() { @Override public boolean isEnabled() { Search search = getModelObject(); if (!search.isShowAdvanced()) { return true; } PrismContext ctx = getPageBase().getPrismContext(); return search.isAdvancedQueryValid(ctx); } @Override public boolean isVisible() { return !getModelObject().isShowAdvanced() || !queryPlagroundAccessible; } }); searchSimple.setOutputMarkupId(true); searchContainer.add(searchSimple); WebMarkupContainer searchDropdown = new WebMarkupContainer(ID_SEARCH_DROPDOWN); searchDropdown.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return getModelObject().isShowAdvanced() && queryPlagroundAccessible; } }); searchContainer.add(searchDropdown); AjaxSubmitButton searchButtonBeforeDropdown = new AjaxSubmitButton(ID_SEARCH_BUTTON_BEFORE_DROPDOWN) { @Override protected void onError(AjaxRequestTarget target, Form<?> form) { target.add(form); } @Override protected void onSubmit(AjaxRequestTarget target, Form<?> form) { searchPerformed(target); } }; searchButtonBeforeDropdown.add(new VisibleEnableBehaviour() { @Override public boolean isEnabled() { Search search = getModelObject(); if (!search.isShowAdvanced()) { return true; } PrismContext ctx = getPageBase().getPrismContext(); return search.isAdvancedQueryValid(ctx); } }); searchDropdown.add(searchButtonBeforeDropdown); List<InlineMenuItem> searchItems = new ArrayList<>(); InlineMenuItem searchItem = new InlineMenuItem(createStringResource("SearchPanel.search"), new InlineMenuItemAction() { @Override public void onClick(AjaxRequestTarget target) { PrismContext ctx = getPageBase().getPrismContext(); if (getModelObject().isAdvancedQueryValid(ctx)) { searchPerformed(target); } } }); searchItems.add(searchItem); searchItem = new InlineMenuItem(createStringResource("SearchPanel.debug"), new InlineMenuItemAction() { @Override public void onClick(AjaxRequestTarget target) { debugPerformed(); } }); searchItems.add(searchItem); ListView<InlineMenuItem> li = new ListView<InlineMenuItem>(ID_MENU_ITEM, Model.ofList(searchItems)) { @Override protected void populateItem(ListItem<InlineMenuItem> item) { WebMarkupContainer menuItemBody = new MenuLinkPanel(ID_MENU_ITEM_BODY, item.getModel()); menuItemBody.setRenderBodyOnly(true); item.add(menuItemBody); } }; searchDropdown.add(li); AjaxButton advanced = new AjaxButton(ID_ADVANCED, createAdvancedModel()) { @Override public void onClick(AjaxRequestTarget target) { advancedPerformed(target); } }; advanced.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { return advancedSearch; } }); form.add(advanced); initPopover(); WebMarkupContainer advancedGroup = new WebMarkupContainer(ID_ADVANCED_GROUP); advancedGroup.add(createAdvancedVisibleBehaviour(true)); advancedGroup.add(AttributeAppender.append("class", createAdvancedGroupStyle())); advancedGroup.setOutputMarkupId(true); form.add(advancedGroup); Label advancedCheck = new Label(ID_ADVANCED_CHECK); advancedCheck.add(AttributeAppender.append("class", createAdvancedGroupLabelStyle())); advancedGroup.add(advancedCheck); final TextArea advancedArea = new TextArea(ID_ADVANCED_AREA, new PropertyModel(getModel(), Search.F_ADVANCED_QUERY)); advancedArea.add(new AjaxFormComponentUpdatingBehavior("keyup") { @Override protected void onUpdate(AjaxRequestTarget target) { updateAdvancedArea(advancedArea, target); } @Override protected void updateAjaxAttributes(AjaxRequestAttributes attributes) { super.updateAjaxAttributes(attributes); attributes.setThrottlingSettings( new ThrottlingSettings(ID_ADVANCED_AREA, Duration.milliseconds(500), true)); } }); advancedGroup.add(advancedArea); Label advancedError = new Label(ID_ADVANCED_ERROR, new PropertyModel<String>(getModel(), Search.F_ADVANCED_ERROR)); advancedError.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { Search search = getModelObject(); if (!search.isShowAdvanced()) { return false; } return StringUtils.isNotEmpty(search.getAdvancedError()); } }); advancedGroup.add(advancedError); }
From source file:com.evolveum.midpoint.web.component.search.SearchPanel.java
License:Apache License
private void initPopover() { WebMarkupContainer popover = new WebMarkupContainer(ID_POPOVER); popover.setOutputMarkupId(true);/*from ww w. j av a 2 s . c om*/ add(popover); final WebMarkupContainer propList = new WebMarkupContainer(ID_PROP_LIST); propList.setOutputMarkupId(true); popover.add(propList); ListView properties = new ListView<Property>(ID_PROPERTIES, new PropertyModel<List<Property>>(moreDialogModel, MoreDialogDto.F_PROPERTIES)) { @Override protected void populateItem(final ListItem<Property> item) { CheckBox check = new CheckBox(ID_CHECK, new PropertyModel<Boolean>(item.getModel(), Property.F_SELECTED)); check.add(new AjaxFormComponentUpdatingBehavior("change") { @Override protected void onUpdate(AjaxRequestTarget target) { //nothing, just update model. } }); item.add(check); AjaxLink propLink = new AjaxLink(ID_PROP_LINK) { @Override public void onClick(AjaxRequestTarget target) { addOneItemPerformed(item.getModelObject(), target); } }; item.add(propLink); Label name = new Label(ID_PROP_NAME, new PropertyModel<>(item.getModel(), Property.F_NAME)); name.setRenderBodyOnly(true); propLink.add(name); item.add(new VisibleEnableBehaviour() { @Override public boolean isVisible() { Property property = item.getModelObject(); Search search = SearchPanel.this.getModelObject(); if (!search.getAvailableDefinitions().contains(property.getDefinition())) { return false; } MoreDialogDto dto = moreDialogModel.getObject(); String nameFilter = dto.getNameFilter(); String propertyName = property.getName().toLowerCase(); if (StringUtils.isNotEmpty(nameFilter) && !propertyName.contains(nameFilter.toLowerCase())) { return false; } return true; } }); } }; propList.add(properties); TextField addText = new TextField(ID_ADD_TEXT, new PropertyModel(moreDialogModel, MoreDialogDto.F_NAME_FILTER)); addText.add(new Behavior() { @Override public void bind(Component component) { super.bind(component); component.add(AttributeModifier.replace("onkeydown", Model.of("if(event.keyCode == 13) {event.preventDefault();}"))); } }); popover.add(addText); addText.add(new AjaxFormComponentUpdatingBehavior("keyup") { @Override protected void onUpdate(AjaxRequestTarget target) { target.add(propList); } }); popover.add(addText); AjaxButton add = new AjaxButton(ID_ADD, createStringResource("SearchPanel.add")) { @Override public void onClick(AjaxRequestTarget target) { addItemPerformed(target); } }; popover.add(add); AjaxButton close = new AjaxButton(ID_CLOSE, createStringResource("SearchPanel.close")) { @Override public void onClick(AjaxRequestTarget target) { closeMorePopoverPerformed(target); } }; popover.add(close); }
From source file:com.evolveum.midpoint.web.component.wizard.resource.component.capability.CapabilityPanel.java
License:Apache License
@Override protected void initLayout() { this.model = loadModel(); final ListDataProvider<CapabilityDto> capabilityProvider = new ListDataProvider<CapabilityDto>(this, new PropertyModel<List<CapabilityDto>>(model, CapabilityStepDto.F_CAPABILITIES)); WebMarkupContainer tableBody = new WebMarkupContainer(ID_CAPABILITY_TABLE); tableBody.setOutputMarkupId(true);/* w w w . j a v a2s. co m*/ add(tableBody); DataView<CapabilityDto> capabilityDataView = new DataView<CapabilityDto>(ID_CAPABILITY_ROW, capabilityProvider) { @Override protected void populateItem(final Item<CapabilityDto> capabilityRow) { final CapabilityDto dto = capabilityRow.getModelObject(); Label label = new Label(ID_CAPABILITY_NAME, new PropertyModel<>(dto, CapabilityDto.F_VALUE)); capabilityRow.add(label); AjaxLink deleteLink = new AjaxLink(ID_CAPABILITY_DELETE) { @Override public void onClick(AjaxRequestTarget target) { deleteCapabilityPerformed(target, dto); } }; capabilityRow.add(deleteLink); capabilityRow.add(AttributeModifier.replace("class", new AbstractReadOnlyModel<Object>() { @Override public Object getObject() { if (capabilityRow.getModelObject().isSelected()) { return "success"; } return null; } })); } }; tableBody.add(capabilityDataView); AjaxLink addLink = new AjaxLink(ID_CAPABILITY_ADD) { @Override public void onClick(AjaxRequestTarget target) { addCapabilityPerformed(target); } }; add(addLink); //TODO - continue here in 2.4 // ModalWindow dialog = new ChooseTypeDialog<CapabilityDto>(DIALOG_SELECT_CAPABILITY, CapabilityDto.class){ // // @Override // protected void chooseOperationPerformed(AjaxRequestTarget target, CapabilityDto capability){ // choosePerformed(target, capability); // } // // @Override // public BaseSortableDataProvider getDataProvider(){ // return capabilityProvider; // } // }; // add(dialog); }
From source file:com.evolveum.midpoint.web.component.wizard.resource.component.schemahandling.modal.LimitationsEditorDialog.java
License:Apache License
public void initLayout(WebMarkupContainer content) { Form form = new Form(ID_MAIN_FORM); form.setOutputMarkupId(true);/*from ww w. ja va2s. c o m*/ content.add(form); ListView repeater = new ListView<PropertyLimitationsTypeDto>(ID_REPEATER, model) { @Override protected void populateItem(final ListItem<PropertyLimitationsTypeDto> item) { WebMarkupContainer linkContainer = new WebMarkupContainer(ID_LIMITATIONS_LINK); linkContainer.setOutputMarkupId(true); linkContainer.add(new AttributeModifier("href", createCollapseItemId(item, true))); item.add(linkContainer); Label linkLabel = new Label(ID_LIMITATIONS_LABEL, createLimitationsLabelModel(item)); linkContainer.add(linkLabel); AjaxLink delete = new AjaxLink(ID_LIMITATION_DELETE) { @Override public void onClick(AjaxRequestTarget target) { deleteLimitationPerformed(target, item); } }; linkContainer.add(delete); WebMarkupContainer limitationBody = new WebMarkupContainer(ID_BODY); limitationBody.setOutputMarkupId(true); limitationBody.setMarkupId(createCollapseItemId(item, false).getObject()); if (changeState != ChangeState.SKIP) { limitationBody.add(new AttributeModifier("class", new AbstractReadOnlyModel<String>() { @Override public String getObject() { if (changeState == ChangeState.FIRST && item.getIndex() == 0) { return "panel-collapse collapse in"; } else if (changeState == ChangeState.LAST && item.getIndex() == (getModelObject().size() - 1)) { return "panel-collapse collapse in"; } else { return "panel-collapse collapse"; } } })); } item.add(limitationBody); initLimitationBody(limitationBody, item); } }; repeater.setOutputMarkupId(true); form.add(repeater); initButtons(form); }