/** * Copyright (C) 2010 Asterios Raptis * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package de.alpharogroup.wicket.components.examples.tooltips; import org.apache.wicket.Application; import org.apache.wicket.markup.head.IHeaderResponse; import org.apache.wicket.markup.head.JavaScriptHeaderItem; import org.apache.wicket.markup.html.basic.Label; import org.apache.wicket.markup.html.panel.Panel; import org.apache.wicket.model.IModel; import org.apache.wicket.model.Model; import de.alpharogroup.wicket.behaviors.JavascriptAppenderBehavior; import de.alpharogroup.wicket.components.factory.ComponentFactory; import de.alpharogroup.wicket.js.addon.tooltipster.TooltipsterJsGenerator; import de.alpharogroup.wicket.js.addon.tooltipster.TooltipsterResourceReference; import de.alpharogroup.wicket.js.addon.tooltipster.TooltipsterSettings; /** * The Panel for the example page with the several tooltips like tooltipster or bootstrap tooltip. */ public class TooltipsExamplePanel extends Panel { /** * The serialVersionUID */ private static final long serialVersionUID = 1L; public TooltipsExamplePanel(final String id, final IModel<?> model) { super(id, model); final Label label = ComponentFactory.newLabel("tooltipTestLabel", Model.of("Im example for tooltipster.")); final TooltipsterSettings tooltipsterSettings = TooltipsterSettings.builder().build(); tooltipsterSettings.getAnimation().setValue("grow"); tooltipsterSettings.getArrow().setValue(false); tooltipsterSettings.getContent().setValue("Loading foo..."); final TooltipsterJsGenerator tooltipsterJsGenerator = new TooltipsterJsGenerator( tooltipsterSettings, label.getMarkupId()); final String js = tooltipsterJsGenerator.generateJs(); label.add(JavascriptAppenderBehavior.builder().id("tooltip_" + label.getMarkupId()) .javascript(js).build()); add(label); } /** * {@inheritDoc} */ @Override public void renderHead(final IHeaderResponse response) { super.renderHead(response); response.render(JavaScriptHeaderItem .forReference(Application.get().getJavaScriptLibrarySettings().getJQueryReference())); response.render(JavaScriptHeaderItem.forReference(TooltipsterResourceReference.INSTANCE)); } }