From 9bc17d16ea48a7978b198126d346828b1d24fe4e Mon Sep 17 00:00:00 2001 From: James Moger <james.moger@gitblit.com> Date: Mon, 18 Apr 2011 22:29:20 -0400 Subject: [PATCH] Color-coded change type indicator with tooltip for changed paths. --- src/com/gitblit/wicket/LinkPanel.java | 33 ++++++++++++++++----------------- 1 files changed, 16 insertions(+), 17 deletions(-) diff --git a/src/com/gitblit/wicket/LinkPanel.java b/src/com/gitblit/wicket/LinkPanel.java index afa2647..91f24fa 100644 --- a/src/com/gitblit/wicket/LinkPanel.java +++ b/src/com/gitblit/wicket/LinkPanel.java @@ -1,13 +1,12 @@ package com.gitblit.wicket; -import org.apache.wicket.AttributeModifier; import org.apache.wicket.PageParameters; +import org.apache.wicket.behavior.SimpleAttributeModifier; import org.apache.wicket.markup.html.WebPage; import org.apache.wicket.markup.html.basic.Label; import org.apache.wicket.markup.html.link.BookmarkablePageLink; import org.apache.wicket.markup.html.link.Link; import org.apache.wicket.markup.html.panel.Panel; -import org.apache.wicket.model.AbstractReadOnlyModel; import org.apache.wicket.model.IModel; import org.apache.wicket.model.Model; @@ -15,28 +14,28 @@ private static final long serialVersionUID = 1L; - private IModel<String> labelModel = new Model<String>(); + private final IModel<String> labelModel; - @SuppressWarnings({ "unchecked", "rawtypes" }) - public LinkPanel(String wicketId, final String linkCssClass, String label, Class<? extends WebPage> clazz, PageParameters parameters) { + public LinkPanel(String wicketId, String linkCssClass, String label, Class<? extends WebPage> clazz) { + this(wicketId, linkCssClass, new Model<String>(label), clazz, null); + } + + public LinkPanel(String wicketId, String linkCssClass, String label, Class<? extends WebPage> clazz, PageParameters parameters) { + this(wicketId, linkCssClass, new Model<String>(label), clazz, parameters); + } + + public LinkPanel(String wicketId, String linkCssClass, IModel<String> model, Class<? extends WebPage> clazz, PageParameters parameters) { super(wicketId); - Link<?> link = null; + this.labelModel = model; + Link<Void> link = null; if (parameters == null) { - link = new BookmarkablePageLink("link", clazz); + link = new BookmarkablePageLink<Void>("link", clazz); } else { - link = new BookmarkablePageLink("link", clazz, parameters); + link = new BookmarkablePageLink<Void>("link", clazz, parameters); } if (linkCssClass != null) { - link.add(new AttributeModifier("class", true, new AbstractReadOnlyModel<String>() { - private static final long serialVersionUID = 1L; - - @Override - public String getObject() { - return linkCssClass; - } - })); + link.add(new SimpleAttributeModifier("class", linkCssClass)); } - labelModel.setObject(label); link.add(new Label("label", labelModel)); add(link); } -- Gitblit v1.9.1