Example usage for org.apache.wicket.markup.html.image ContextImage add

List of usage examples for org.apache.wicket.markup.html.image ContextImage add

Introduction

In this page you can find the example usage for org.apache.wicket.markup.html.image ContextImage add.

Prototype

public Component add(final Behavior... behaviors) 

Source Link

Document

Adds a behavior modifier to the component.

Usage

From source file:com.evolveum.midpoint.web.component.menu.UserMenuPanel.java

License:Apache License

private void initLayout() {
    WebMarkupContainer iconBox = new WebMarkupContainer(ID_ICON_BOX);
    add(iconBox);/* w  w  w  .jav a 2 s  .c o  m*/

    NonCachingImage img = new NonCachingImage(ID_PHOTO, new AbstractReadOnlyModel<AbstractResource>() {

        @Override
        public AbstractResource getObject() {
            if (jpegPhoto == null) {
                return null;
            } else {
                return new ByteArrayResource("image/jpeg", jpegPhoto);
            }
        }
    });
    img.add(new VisibleEnableBehaviour() {
        @Override
        public boolean isVisible() {
            if (userModel != null && userModel.getObject() == null) {
                loadModel(null);
            }
            return jpegPhoto != null;
        }
    });
    iconBox.add(img);

    ContextImage icon = new ContextImage(ID_ICON, "img/placeholder.png");
    icon.add(new VisibleEnableBehaviour() {
        @Override
        public boolean isVisible() {
            if (userModel != null && userModel.getObject() == null) {
                loadModel(null);
            }
            return jpegPhoto == null;

        }
    });
    iconBox.add(icon);

    Label usernameLink = new Label(ID_USERNAME_LINK, new AbstractReadOnlyModel<String>() {

        @Override
        public String getObject() {
            return getShortUserName();
        }
    });
    add(usernameLink);

    WebMarkupContainer panelIconBox = new WebMarkupContainer(ID_PANEL_ICON_BOX);
    add(panelIconBox);

    NonCachingImage panelImg = new NonCachingImage(ID_PANEL_PHOTO,
            new AbstractReadOnlyModel<AbstractResource>() {

                @Override
                public AbstractResource getObject() {
                    if (jpegPhoto == null) {
                        return null;
                    } else {
                        return new ByteArrayResource("image/jpeg", jpegPhoto);
                    }
                }
            });
    panelImg.add(new VisibleEnableBehaviour() {
        @Override
        public boolean isVisible() {
            if (userModel != null && userModel.getObject() == null) {
                loadModel(null);
            }
            return jpegPhoto != null;
        }
    });
    panelIconBox.add(panelImg);

    ContextImage panelIcon = new ContextImage(ID_PANEL_ICON, "img/placeholder.png");
    panelIcon.add(new VisibleEnableBehaviour() {
        @Override
        public boolean isVisible() {
            if (userModel != null && userModel.getObject() == null) {
                loadModel(null);
            }
            return jpegPhoto == null;
        }
    });
    panelIconBox.add(panelIcon);

    Label username = new Label(ID_USERNAME, new AbstractReadOnlyModel<String>() {

        @Override
        public String getObject() {
            return getShortUserName();
        }
    });
    username.setRenderBodyOnly(true);
    add(username);

    ExternalLink logoutLink = new ExternalLink(ID_LOGOUT_LINK,
            new Model<>(RequestCycle.get().getRequest().getContextPath() + "/j_spring_security_logout"),
            createStringResource("UserMenuPanel.logout"));
    add(logoutLink);

    AjaxButton editPasswordQ = new AjaxButton(ID_PASSWORD_QUESTIONS,
            createStringResource("UserMenuPanel.editPasswordQuestions")) {

        @Override
        public void onClick(AjaxRequestTarget target) {
            PageMyPasswordQuestions myPasswordQuestions = new PageMyPasswordQuestions(
                    passwordQuestionsDtoIModel);
            setResponsePage(myPasswordQuestions);
        }

    };
    add(editPasswordQ);

    if (!isPasswordModelLoaded) {
        passwordQuestionsDtoIModel = new LoadableModel<PasswordQuestionsDto>(false) {

            private static final long serialVersionUID = 1L;

            @Override
            protected PasswordQuestionsDto load() {
                return loadModel(null);
            }
        };
        isPasswordModelLoaded = true;
    }
    securityPolicyQuestionsModel = new LoadableModel<List<SecurityQuestionDefinitionType>>(false) {
        @Override
        protected List<SecurityQuestionDefinitionType> load() {
            return loadSecurityPloicyQuestionsModel();
        }
    };
    editPasswordQ.add(new VisibleEnableBehaviour() {
        @Override
        public boolean isVisible() {
            if (securityPolicyQuestionsModel == null || securityPolicyQuestionsModel.getObject() == null) {
                loadSecurityPloicyQuestionsModel();
            }
            return hasQuestions() || (securityPolicyQuestionsModel.getObject() != null
                    && securityPolicyQuestionsModel.getObject().size() > 0);
        }
    });
}

From source file:com.gitblit.wicket.pages.TicketPage.java

License:Apache License

protected Fragment createCopyFragment(String wicketId, String text) {
    if (app().settings().getBoolean(Keys.web.allowFlashCopyToClipboard, true)) {
        // clippy: flash-based copy & paste
        Fragment copyFragment = new Fragment(wicketId, "clippyPanel", TicketPage.this);
        String baseUrl = WicketUtils.getGitblitURL(getRequest());
        ShockWaveComponent clippy = new ShockWaveComponent("clippy", baseUrl + "/clippy.swf");
        clippy.setValue("flashVars", "text=" + StringUtils.encodeURL(text));
        copyFragment.add(clippy);//from  www . ja v  a 2 s.  co m
        return copyFragment;
    } else {
        // javascript: manual copy & paste with modal browser prompt dialog
        Fragment copyFragment = new Fragment(wicketId, "jsPanel", TicketPage.this);
        ContextImage img = WicketUtils.newImage("copyIcon", "clippy.png");
        img.add(new JavascriptTextPrompt("click", "Copy to Clipboard (Ctrl+C, Enter)", text));
        copyFragment.add(img);
        return copyFragment;
    }
}

From source file:com.gitblit.wicket.panels.RepositoryUrlPanel.java

License:Apache License

protected Fragment createCopyFragment(String text) {
    if (app().settings().getBoolean(Keys.web.allowFlashCopyToClipboard, true)) {
        // clippy: flash-based copy & paste
        Fragment copyFragment = new Fragment("copyFunction", "clippyPanel", RepositoryUrlPanel.this);
        String baseUrl = WicketUtils.getGitblitURL(getRequest());
        ShockWaveComponent clippy = new ShockWaveComponent("clippy", baseUrl + "/clippy.swf");
        clippy.setValue("flashVars", "text=" + StringUtils.encodeURL(text));
        copyFragment.add(clippy);/*from  w  w w . ja  va  2  s .c  o  m*/
        return copyFragment;
    } else {
        // javascript: manual copy & paste with modal browser prompt dialog
        Fragment copyFragment = new Fragment("copyFunction", "jsPanel", RepositoryUrlPanel.this);
        ContextImage img = WicketUtils.newImage("copyIcon", "clippy.png");
        img.add(new JavascriptTextPrompt("click", "Copy to Clipboard (Ctrl+C, Enter)", text));
        copyFragment.add(img);
        return copyFragment;
    }
}

From source file:com.tysanclan.site.projectewok.components.RankIcon.java

License:Open Source License

/**
 * //w ww .j  ava2 s  .c o m
 */
public RankIcon(String id, Rank rank) {
    super(id);

    StringBuilder rankStr = new StringBuilder();
    String lowerCaseRank = rank.toString().toLowerCase();

    for (int i = 0; i < lowerCaseRank.length(); i++) {
        if (!Character.isWhitespace(lowerCaseRank.charAt(i))) {
            rankStr.append(lowerCaseRank.charAt(i));
        } else {
            rankStr.append("_");
        }
    }

    String imageLocation = "images/ranks/" + rankStr.toString() + ".gif";

    if (rank == Rank.FORUM || rank == Rank.BANNED) {
        imageLocation = "images/icons/script.png";
    }
    if (rank == Rank.HERO) {
        imageLocation = "images/icons/rosette.png";
    }

    ContextImage img = new ContextImage("icon", new Model<String>(imageLocation));
    img.add(new AttributeModifier("title", new Model<String>(rank.toString())));
    img.add(new AttributeModifier("alt", new Model<String>(rank.toString())));
    add(img);
}

From source file:org.obiba.onyx.wicket.link.AbstractImageLink.java

License:Open Source License

/**
 * Add image decorator to image link./*from  ww  w.java2  s .c o  m*/
 * 
 * @param imageDecoratorModel image src attribute value
 * @param contextRelative indicates whether <code>imageDecoratorModel</code> contains a path relative to the context
 * root
 */
private void addDecorator(IModel imageDecoratorModel, boolean contextRelative) {
    if (imageDecoratorModel != null) {
        if (contextRelative) {
            ContextImage image = new ContextImage("decorator", imageDecoratorModel);
            link.add(image);
        } else {
            Image image = new Image("decorator");
            image.add(new AttributeModifier("src", imageDecoratorModel));
            link.add(image);
        }
    } else {
        addNoDecorator();
    }
}

From source file:org.projectforge.web.tree.TreeIconsActionPanel.java

License:Open Source License

public void init(final TreeTablePanel page, final TreeTableNode treeNode) {
    this.treeNode = treeNode;
    final ContextImage spacerImage = new PresizedImage("spacer", WebConstants.IMAGE_SPACER);
    final boolean showExploreIcon = treeNode.hasChilds();
    int spacerWidth;
    if (showExploreIcon == true)
        spacerWidth = treeNode.getIndent() * WebConstants.IMAGE_TREE_ICON_WIDTH + 1;
    else//from   www .java 2  s  .  c  om
        spacerWidth = (treeNode.getIndent() + 1) * WebConstants.IMAGE_TREE_ICON_WIDTH + 1;
    spacerImage.add(AttributeModifier.replace("width", String.valueOf(spacerWidth)));
    if (this.link.isVisible() == true) {
        link.add(spacerImage);
        add(WicketUtils.getInvisibleDummyImage("spacer", getRequestCycle()));
    } else {
        add(spacerImage);
    }
    final ContextImage leafImage = new PresizedImage("leaf", WebConstants.IMAGE_TREE_ICON_LEAF);
    leafImage.setVisible(treeNode.isLeaf());
    add(leafImage);
    final WebMarkupContainer iconSpan = new WebMarkupContainer("icons");
    add(iconSpan);
    if (useAjaxAtDefault == false) {
        iconSpan.setRenderBodyOnly(true);
    }
    {
        final WebMarkupContainer exploreLink;
        if (useAjaxAtDefault == true) {
            exploreLink = new AjaxFallbackLink<Object>("explore") {
                @Override
                public void onClick(final AjaxRequestTarget target) {
                    if (target == null || treeTable == null) {
                        // Link with right mouse button and select new browser window / tab?
                        return;
                    }
                    treeTable.setOpenedStatusOfNode(TreeTableEvent.EXPLORE, treeNode.getHashId());
                    if (treeNode.isFolder() == true) {
                        // Implore
                        page.setEvent(target, TreeTableEvent.IMPLORE, treeNode);
                    } else {
                        // Explore
                        page.setEvent(target, TreeTableEvent.EXPLORE, treeNode);
                    }
                };
            };
        } else if (useSubmitLinkImages == true) {
            exploreLink = new SubmitLink("explore") {
                @Override
                public void onSubmit() {
                    treeTable.setOpenedStatusOfNode(TreeTableEvent.EXPLORE, treeNode.getHashId());
                    page.setEventNode(treeNode.getHashId());
                }
            };
        } else {
            exploreLink = new Link<Object>("explore") {
                @Override
                public void onClick() {
                    treeTable.setOpenedStatusOfNode(TreeTableEvent.EXPLORE, treeNode.getHashId());
                    page.setEventNode(treeNode.getHashId());
                };
            };
        }
        exploreLink.setVisible(showExploreIcon);
        iconSpan.add(exploreLink);
        // Get string results in warnings (panel was added before)?
        final ContextImage exploreImage = new PresizedImage("explore", WebConstants.IMAGE_TREE_ICON_EXPLOSION);
        exploreLink.add(exploreImage);
    }
    {
        final WebMarkupContainer folderLink;
        if (useAjaxAtDefault == true) {
            folderLink = new AjaxFallbackLink<TreeTableNode>("folder", new Model<TreeTableNode>(treeNode)) {
                @Override
                public void onClick(final AjaxRequestTarget target) {
                    if (target == null || treeTable == null) {
                        // Link with right mouse button and select new browser window / tab?
                        return;
                    }
                    if (getModelObject().isOpened() == true) {
                        treeTable.setOpenedStatusOfNode(TreeTableEvent.CLOSE, treeNode.getHashId());
                        page.setEvent(target, TreeTableEvent.CLOSE, treeNode);
                    } else {
                        treeTable.setOpenedStatusOfNode(TreeTableEvent.OPEN, treeNode.getHashId());
                        page.setEvent(target, TreeTableEvent.OPEN, treeNode);
                    }
                };
            };
        } else if (useSubmitLinkImages == true) {
            folderLink = new SubmitLink("folder", new Model<TreeTableNode>(treeNode)) {
                @Override
                public void onSubmit() {
                    if (((TreeTableNode) getDefaultModelObject()).isOpened() == true) {
                        treeTable.setOpenedStatusOfNode(TreeTableEvent.CLOSE, treeNode.getHashId());
                        page.setEventNode(treeNode.getHashId());
                    } else {
                        treeTable.setOpenedStatusOfNode(TreeTableEvent.OPEN, treeNode.getHashId());
                        page.setEventNode(treeNode.getHashId());
                    }
                }
            };
        } else {
            folderLink = new Link<TreeTableNode>("folder", new Model<TreeTableNode>(treeNode)) {
                @Override
                public void onClick() {
                    if (getModelObject().isOpened() == true) {
                        treeTable.setOpenedStatusOfNode(TreeTableEvent.CLOSE, treeNode.getHashId());
                        page.setEventNode(treeNode.getHashId());
                    } else {
                        treeTable.setOpenedStatusOfNode(TreeTableEvent.OPEN, treeNode.getHashId());
                        page.setEventNode(treeNode.getHashId());
                    }
                };
            };
        }
        folderLink.setVisible(treeNode.hasChilds() == true);
        iconSpan.add(folderLink);
        folderImage = new PresizedImage("folderImage", WebConstants.IMAGE_TREE_ICON_FOLDER);
        folderImage.setOutputMarkupId(true);
        folderOpenImage = new PresizedImage("folderOpenImage", WebConstants.IMAGE_TREE_ICON_FOLDER_OPEN);
        folderOpenImage.setOutputMarkupId(true);
        folderLink.add(folderImage).add(folderOpenImage);
    }
    final Label clickedEntryLabel = new Label("clickedEntry", "<a name=\"clickedEntry\" />");
    clickedEntryLabel.setEscapeModelStrings(false);
    final Serializable eventNode = page.getEventNode();
    clickedEntryLabel.setVisible(eventNode != null && eventNode.equals(treeNode.getHashId()) == true);
    add(clickedEntryLabel);
}

From source file:org.wicketstuff.lightbox2.LightboxPanel.java

License:Apache License

public LightboxPanel(String id, String image, String thumbnail, String group, String linkTitle,
        String imageAlt) {/* ww  w . ja  va  2 s . c  om*/
    super(id);
    ContextImage contextImage = new ContextImage("imageResourceReference", thumbnail);
    if (imageAlt != null) {
        contextImage.add(new AttributeModifier("alt", imageAlt));
    }

    LightboxLink lightboxLink = new LightboxLink("link", image, group);
    if (linkTitle != null) {
        lightboxLink.add(new AttributeModifier("title", linkTitle));
    }
    lightboxLink.add(contextImage);
    add(lightboxLink);
}

From source file:ro.nextreports.server.web.core.settings.CleanHistorySettingsPanel.java

License:Apache License

@Override
protected void addComponents(Form<Settings> form) {
    final TextField<String> cronField = new TextField<String>("cleanHistory.cronExpression");
    cronField.setRequired(true);/*from w w w.  ja v a 2s  .  com*/
    form.add(cronField);
    ContextImage cronImage = new ContextImage("cronImage", "images/information.png");
    cronImage.add(new SimpleTooltipBehavior(getString("Settings.synchronizer.cronTooltip")));
    form.add(cronImage);

    System.out.println("settings = " + form.getModelObject());
    final TextField<Integer> daysToKeepField = new TextField<Integer>("cleanHistory.daysToKeep");
    form.add(daysToKeepField);

    CleanHistorySettings settings = storageService.getSettings().getCleanHistory();
    oldCronExpression = String.valueOf(settings.getCronExpression());
    oldDaysToKeep = settings.getDaysToKeep();
}

From source file:ro.nextreports.server.web.core.settings.GeneralSettingsPanel.java

License:Apache License

@Override
protected void addComponents(Form<Settings> form) {

    final TextField<String> urlField = new TextField<String>("baseUrl");
    urlField.add(new UrlValidator());
    urlField.setRequired(true);/*  w ww  . j  a  va2 s .  com*/
    form.add(urlField);

    ContextImage urlImage = new ContextImage("urlImage", "images/exclamation.png");
    urlImage.add(new SimpleTooltipBehavior(getString("Settings.general.baseUrlTooltip")));
    form.add(urlImage);

    final TextField<String> reportsHomeField = new TextField<String>("reportsHome");
    reportsHomeField.setRequired(true);
    form.add(reportsHomeField);

    ContextImage homeImage = new ContextImage("homeImage", "images/exclamation.png");
    homeImage.add(new SimpleTooltipBehavior(getString("Settings.general.reportsHomeTooltip")));
    form.add(homeImage);

    final TextField<String> reportsUrlField = new TextField<String>("reportsUrl");
    reportsUrlField.add(new UrlValidator());
    reportsUrlField.setRequired(true);
    form.add(reportsUrlField);

    ContextImage repImage = new ContextImage("repImage", "images/exclamation.png");
    repImage.add(new SimpleTooltipBehavior(getString("Settings.general.reportsUrlTooltip")));
    form.add(repImage);

    final TextField<String> mailServerIpField = new TextField<String>("mailServer.ip");
    form.add(mailServerIpField);
    final TextField<Integer> mailServerPortField = new TextField<Integer>("mailServer.port");
    form.add(mailServerPortField);
    final TextField<String> mailServerSenderField = new TextField<String>("mailServer.from");
    form.add(mailServerSenderField);
    final TextField<String> mailServerUsernameField = new TextField<String>("mailServer.username");
    form.add(mailServerUsernameField);
    final PasswordTextField mailServerPasswordField = new PasswordTextField("mailServer.password");
    mailServerPasswordField.setResetPassword(false);
    mailServerPasswordField.setRequired(false);
    form.add(mailServerPasswordField);
    final CheckBox tlsCheckField = new CheckBox("mailServer.enableTls");
    form.add(tlsCheckField);
    form.add(new MailServerValidator(
            new FormComponent[] { mailServerIpField, mailServerPortField, mailServerSenderField }));

    final TextField<Integer> conTimeoutField = new TextField<Integer>("connectionTimeout");
    conTimeoutField.setRequired(true);
    form.add(conTimeoutField);
    ContextImage conImage = new ContextImage("conImage", "images/information.png");
    conImage.add(new SimpleTooltipBehavior(getString("Settings.general.connectTimeoutTooltip")));
    form.add(conImage);

    final TextField<Integer> timeoutField = new TextField<Integer>("queryTimeout");
    timeoutField.setRequired(true);
    form.add(timeoutField);
    ContextImage timeoutImage = new ContextImage("timeoutImage", "images/information.png");
    timeoutImage.add(new SimpleTooltipBehavior(getString("Settings.general.queryTimeoutTooltip")));
    form.add(timeoutImage);

    final TextField<Integer> updateIntervalField = new TextField<Integer>("updateInterval");
    updateIntervalField.setRequired(true);
    form.add(updateIntervalField);
    ContextImage updateImage = new ContextImage("updateImage", "images/information.png");
    updateImage.add(new SimpleTooltipBehavior(getString("Settings.general.updateIntervalTooltip")));
    form.add(updateImage);

    final CheckBox autoOpenField = new CheckBox("autoOpen");
    form.add(autoOpenField);

    Settings settings = storageService.getSettings();
    oldReportsHome = String.valueOf(settings.getReportsHome());
    oldMailPort = settings.getMailServer().getPort();
    oldMailIp = settings.getMailServer().getIp();
    oldMailUsername = settings.getMailServer().getUsername();
    oldMailPassword = settings.getMailServer().getPassword();
    oldEnableTls = settings.getMailServer().getEnableTls();
}

From source file:ro.nextreports.server.web.core.settings.SynchronizerSettingsPanel.java

License:Apache License

@Override
protected void addComponents(Form<Settings> form) {

    final TextField<String> cronField = new TextField<String>("synchronizer.cronExpression");
    cronField.setRequired(true);/*from  ww w.  j  a  v a  2 s. co m*/
    form.add(cronField);
    ContextImage cronImage = new ContextImage("cronImage", "images/information.png");
    cronImage.add(new SimpleTooltipBehavior(getString("Settings.synchronizer.cronTooltip")));
    form.add(cronImage);

    final CheckBox checkBoxD = new CheckBox("synchronizer.runOnStartup");
    form.add(checkBoxD);

    final CheckBox checkBoxW = new CheckBox("synchronizer.createUsers");
    form.add(checkBoxW);

    final CheckBox checkBoxR = new CheckBox("synchronizer.deleteUsers");
    form.add(checkBoxR);

    oldCronExpression = String.valueOf(storageService.getSettings().getSynchronizer().getCronExpression());
}