Example usage for org.apache.wicket.velocity.markup.html VelocityPanel VelocityPanel

List of usage examples for org.apache.wicket.velocity.markup.html VelocityPanel VelocityPanel

Introduction

In this page you can find the example usage for org.apache.wicket.velocity.markup.html VelocityPanel VelocityPanel.

Prototype

@SuppressWarnings("rawtypes")
public VelocityPanel(final String id, final IModel<? extends Map> model) 

Source Link

Document

Construct.

Usage

From source file:de.alpharogroup.wicket.components.velocity.VelocityFieldsPanel.java

License:Apache License

/**
 * Instantiates a new {@link VelocityFieldsPanel}.
 *
 * @param id/* w w w.  j  av  a2s . c o m*/
 *            the id
 * @param model
 *            the model
 */
public VelocityFieldsPanel(final String id, final IModel<List<WicketField<?>>> model) {
    super(id, model);
    final Map<String, List<WicketField<?>>> map = new HashMap<>();
    map.put("fields", model.getObject());
    final StringBuilder sb = new StringBuilder();

    for (final SimpleTag tag : model.getObject()) {
        sb.append(tag.toString());
    }
    final String tmp = sb.toString();

    final IResourceStream template = new StringResourceStream(tmp);
    final VelocityPanel velocityPanel = new VelocityPanel("velocityPanel", new MapModel<>(map)) {

        /** The Constant serialVersionUID. */
        private static final long serialVersionUID = 1L;

        /**
         * {@inheritDoc}
         */
        @Override
        protected IResourceStream getTemplateResource() {
            return template;
        }

        /**
         * {@inheritDoc}
         */
        @Override
        protected boolean parseGeneratedMarkup() {
            return true;
        }
    };
    add(velocityPanel);
    for (final WicketField<?> field : model.getObject()) {
        addChildComponent(field);
        velocityPanel.add(field.getComponent());
    }
}

From source file:gr.abiss.calipso.wicket.BasePanel.java

License:Open Source License

/**
 * &lt;div wicket:id="velocityPanelContainer"&gt;
 *      &lt;div wicket:id="velocityPanel"&gt;&lt;/div&gt;
 * &lt;/div&gt;//from  www  .  j av  a  2s  .c  o  m
 * @param tmpl
 * @param context
 * @param parseGeneratedMarkup 
 */
protected void addVelocityTemplatePanel(WebMarkupContainer container, String containerId, String panelId,
        final String tmpl, HashMap<String, Object> context, final boolean parseGeneratedMarkup) {
    WebMarkupContainer velocityPanelContainer = new WebMarkupContainer(containerId);
    Panel velocityPanel;
    if (StringUtils.isNotBlank(tmpl)) {
        if (context == null) {
            context = new HashMap<String, Object>();
        }
        context.put("DateUtils", DateUtils.class);

        //context.put("dateTool", new new org.apache.velocity.tools.generic.DateTool());
        velocityPanel = new VelocityPanel(panelId, new Model(context)) {
            @Override
            protected IStringResourceStream getTemplateResource() {
                return new StringResourceStream(tmpl);
            }

            @Override
            protected boolean parseGeneratedMarkup() {
                return parseGeneratedMarkup;
            }
        };
    } else {
        velocityPanel = new EmptyPanel(panelId);
    }
    velocityPanelContainer.add(velocityPanel);
    container.add(velocityPanelContainer.setRenderBodyOnly(true));

}

From source file:gr.abiss.calipso.wicket.velocity.VelocityPage.java

License:Open Source License

@SuppressWarnings({ "serial", "serial" })
public VelocityPage(final PageParameters parameters) {
    final IResourceStream template = new PackageResourceStream(VelocityPage.class, "fields.vm");

    // Map<String, List<Field>> map = new HashMap<String, List<Field>>();
    // List<Field> fields = VelocityTemplateApplication.getFields();
    // map.put("fields", fields);

    VelocityPanel panel;/* w  w  w . j a va2s  .  c  o m*/
    add(panel = new VelocityPanel("templatePanel", new Model(new HashMap())) {
        @Override
        protected IResourceStream getTemplateResource() {
            return template;
        }

        @Override
        protected boolean parseGeneratedMarkup() {
            return true;
        }
    });
    // for (Field field : fields)
    // {
    // panel.add(new TextField(field.getFieldName()));
    // }
}