Package org.apache.wicket.markup.html.link

Examples of org.apache.wicket.markup.html.link.AbstractLink


     */
    public Builder newSubMenuItem(final ObjectAction objectAction, final ActionLinkFactory cssMenuLinkFactory, final ActionPromptProvider actionPromptModalWindowProvider) {

        final LinkAndLabel linkAndLabel = cssMenuLinkFactory.newLink(null, objectAction, PageAbstract.ID_MENU_LINK, actionPromptModalWindowProvider);

        final AbstractLink link = linkAndLabel.getLink();
        final String actionLabel = linkAndLabel.getLabel();
        Builder builder = this.newSubMenuItem(actionLabel).link(link).prototyping(linkAndLabel.isPrototype()).returnsBlobOrClob(linkAndLabel.isBlobOrClob());

        CssClassFacet cssClassFacet = objectAction.getFacet(CssClassFacet.class);
        if (cssClassFacet != null) {
View Full Code Here


        addCssClassAttributesIfRequired(menuItemComponent);
    }

    private Component addMenuItemComponentTo(final MarkupContainer markupContainer) {
        final AbstractLink link = getLink();
        final Label label = new Label(CssMenuItem.ID_MENU_LABEL, Model.of(this.getName()));

        if (this.isEnabled() && link != null) {
            // show link...
            markupContainer.add(link);
            link.add(label);

            if(this.description != null) {
                label.add(new AttributeModifier("title", Model.of(description)));
            }
            if(this.blobOrClob) {
                link.add(new CssClassAppender("noVeil"));
            }
            if(this.prototype) {
                link.add(new CssClassAppender("prototype"));
            }
            if(this.cssClass != null) {
                markupContainer.add(new CssClassAppender(this.cssClass));
            }
            link.add(new CssClassAppender(this.actionIdentifier));

            // .. and hide label
            Components.permanentlyHide(markupContainer, CssMenuItem.ID_MENU_LABEL);
            return link;
        } else {
View Full Code Here

            final ObjectAdapterMemento adapterMemento, final ObjectAction action, final String linkId,
            final ActionPromptProvider actionPromptModalWindowProvider) {
       
        ObjectAdapter objectAdapter = adapterMemento.getObjectAdapter(ConcurrencyChecking.NO_CHECK);

        final AbstractLink link = newLink(linkId, objectAdapter, action, actionPromptModalWindowProvider);

        return newLinkAndLabel(action, link, null);
    }
View Full Code Here

            cssMenuItem.setParent(parent);
            return this;
        }

        public <T extends Page> Builder link(final Class<T> pageClass) {
            final AbstractLink link = new SubmitLink(ID_MENU_LINK);
            return link(link);
        }
View Full Code Here

        final Consent visibility = action.isVisible(session, adapter, Where.OBJECT_FORMS);
        if (visibility.isVetoed()) {
            return null;
        }
       
        final AbstractLink link = newLink(linkId, adapter, action, actionPromptModalWindowProvider);
       
        final Consent usability = action.isUsable(session, adapter, Where.OBJECT_FORMS);
        final String disabledReasonIfAny = usability.getReason();
        if(disabledReasonIfAny != null) {
            link.setEnabled(false);
        }

        return newLinkAndLabel(action, link, disabledReasonIfAny);
    }
View Full Code Here

            final ActionModel actionModel = ActionModel.create(objectAdapter, action);
            actionModel.setActionPrompt(actionPrompt);
           
            final AjaxDeferredBehaviour ajaxDeferredBehaviour = determineDeferredBehaviour(action, actionModel);

            final AbstractLink link = new AjaxLink<Object>(linkId) {
                private static final long serialVersionUID = 1L;
               
                @Override
                public void onClick(AjaxRequestTarget target) {
                   
                    if(ajaxDeferredBehaviour != null) {
                        ajaxDeferredBehaviour.initiate(target);
                    } else {
                        final ActionPanel actionPromptPanel =
                                (ActionPanel) getComponentFactoryRegistry().createComponent(
                                        ComponentType.ACTION_PROMPT, actionPrompt.getContentId(), actionModel);
                       
                        actionPrompt.setPanel(actionPromptPanel, target);
                        actionPromptPanel.setActionPrompt(actionPrompt);
                        actionPrompt.show(target);
                       
                        target.focusComponent(actionPromptPanel);
                    }
                }
            };

            if(ajaxDeferredBehaviour != null) {
                link.add(ajaxDeferredBehaviour);
            }

            link.add(new CssClassAppender("noVeil"));

            return link;
           
        } else {
           
            // use the action semantics to determine whether invoking this action will require a concurrency check or not
            // if it's "safe", then we'll just continue without any checking.
            final ConcurrencyChecking concurrencyChecking = ConcurrencyChecking.concurrencyCheckingFor(action.getSemantics());
            final PageParameters pageParameters = ActionModel.createPageParameters(objectAdapter, action, concurrencyChecking);
            final Class<? extends Page> pageClass = getPageClassRegistry().getPageClass(PageType.ACTION_PROMPT);
            AbstractLink link = Links.newBookmarkablePageLink(linkId, pageParameters, pageClass);
           
            // special case handling if this a no-arg action is returning a URL
            if(action.getParameterCount()==0) {
                addTargetBlankIfActionReturnsUrl(link, action);
            }
View Full Code Here

    private WebMarkupContainer addOrReplaceLinkWrapper(final EntityModel entityModel) {
        final ObjectAdapter adapter = entityModel.getObject();

        final WebMarkupContainer entityLinkWrapper = new WebMarkupContainer(ID_ENTITY_LINK_WRAPPER);
       
        final AbstractLink link = createIconAndTitle(adapter);
        entityLinkWrapper.addOrReplace(link);
       
        return entityLinkWrapper;
    }
View Full Code Here

       
        return entityLinkWrapper;
    }

    private AbstractLink createIconAndTitle(final ObjectAdapter adapter) {
        final AbstractLink link = createLinkWrapper();
       
        String title = determineTitle();
        link.addOrReplace(this.label = newLabel(ID_ENTITY_TITLE, titleAbbreviated(title)));
        link.addOrReplace(this.image = newImage(ID_ENTITY_ICON, adapter));
       
        String entityTypeName = adapter.getSpecification().getSingularName();
        link.add(new AttributeModifier("title", entityTypeName + ": " + title));
       
        return link;
    }
View Full Code Here

    private WebMarkupContainer addOrReplaceLinkWrapper(final ActionModel actionModel) {

        final PageParameters pageParameters = actionModel.getPageParameters();
        final Class<? extends Page> pageClass = getPageClassRegistry().getPageClass(PageType.ACTION_PROMPT);
        final AbstractLink link = newLink(ID_ACTION_LINK, pageClass, pageParameters);
       
        label = new Label(ID_ACTION_TITLE, determineTitle());
        link.add(label);

        final WebMarkupContainer actionLinkWrapper = new WebMarkupContainer(ID_ACTION_LINK_WRAPPER);
        actionLinkWrapper.addOrReplace(link);
        return actionLinkWrapper;
    }
View Full Code Here

                        clearBookmarkLink.setEnabled(true);
                    }
                    item.add(clearBookmarkLink);
                   
                    PageParameters pageParameters = node.getPageParameters();
                    final AbstractLink link = Links.newBookmarkablePageLink(ID_BOOKMARKED_PAGE_LINK, pageParameters, pageClass);

                    ObjectSpecification objectSpec = null;
                    RootOid oid = node.getOidNoVer();
                    if(oid != null) {
                        ObjectSpecId objectSpecId = oid.getObjectSpecId();
                        objectSpec = getSpecificationLoader().lookupBySpecId(objectSpecId);
                    }
                    final ResourceReference imageResource = imageCache.resourceReferenceForSpec(objectSpec);
                    final Image image = new Image(ID_BOOKMARKED_PAGE_ICON, imageResource) {
                        private static final long serialVersionUID = 1L;
                        @Override
                        protected boolean shouldAddAntiCacheParameter() {
                            return false;
                        }
                    };
                    link.addOrReplace(image);

                    String title = node.getTitle();
                    final Label label = new Label(ID_BOOKMARKED_PAGE_TITLE, title);
                    link.add(label);
                    item.add(link);
                    if(bookmarkedPagesModel.isCurrent(pageParameters)) {
                        item.add(new CssClassAppender("currentBookmark"));
                    }
                    item.add(new CssClassAppender("bookmarkDepth" + node.getDepth()));
View Full Code Here

TOP

Related Classes of org.apache.wicket.markup.html.link.AbstractLink

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.