* @param djHyperLink
* @param image
* @param column
*/
public static void applyHyperLinkToElement(DynamicJasperDesign design, DJHyperLink djlink, JRDesignImage image, String name) {
StringExpression hce = djlink.getExpression();
String text = ExpressionUtils.createCustomExpressionInvocationText(name);
LayoutUtils.registerCustomExpressionParameter(design, name,hce);
JRDesignExpression hlpe = new JRDesignExpression();
hlpe.setValueClassName(hce.getClassName());
hlpe.setText(text);
image.setHyperlinkReferenceExpression(hlpe);
image.setHyperlinkType(JRHyperlink.HYPERLINK_TYPE_REFERENCE); //FIXME Should this be a parameter in the future?
if (djlink.getTooltip() != null){
StringExpression sExp = djlink.getTooltip();
String tooltipParameterName = "hyperlink_tooltip_" +name;
String tooltipText = ExpressionUtils.createCustomExpressionInvocationText(tooltipParameterName);
LayoutUtils.registerCustomExpressionParameter(design, tooltipParameterName,sExp);
JRDesignExpression tooltipExp = new JRDesignExpression();
tooltipExp.setValueClassName(sExp.getClassName());
tooltipExp.setText(tooltipText);
image.setHyperlinkTooltipExpression(tooltipExp);
}