package examples.htmlkona; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import weblogic.html.*; /** * This servlet demonstrates how to create image maps with htmlKona. * * @author Copyright (c) 1996-98 by WebLogic, Inc. All Rights Reserved. * @author Copyright (c) 1999 by BEA WebXpress, Inc. All Rights Reserved. */ public class ImageMap extends HttpServlet { public synchronized void service(HttpServletRequest req, HttpServletResponse res) throws IOException { try { res.setStatus(HttpServletResponse.SC_OK); res.setContentType("text/html"); ServletPage hp = new ServletPage(); hp.getHead() .addElement(new TitleElement("Image Map")); hp.getBodyElement() .setAttribute(BodyElement.bgColor, HtmlColor.white); int[] xcoords = {353, 474, 353}; int[] ycoords = {116, 163, 163}; int ncoords = 3; hp.getBody() .addElement(MarkupElement.HorizontalRule) .addElement(new HeadingElement("Client-side image map", 2)) .addElement(new StringElement("This demo is designed to illustrate how you might " + "use a screenshot and an image map to provide " + "online help. You can demonstrate the client-" + "side image map by clicking on " + "several areas. The areas are: the OK button, " + "the Cancel " + "button, the DNS button, a triangle shape that " + "stretches from the upper left corner of the " + "Advanced button to the lower right corner of " + "the Help button to the lower left corner of " + "the Help button. The last area is a circle " + "with a 40-pixel radius that originates over " + "the first dot in the Default Gateway box. " + "Clicking on any of these areas will take you " + "to a demo help-page on WebLogic's website.")) .addElement(MarkupElement.HorizontalRule) .addElement(new ImageElement(defaults.imageloc() + "ipscreen.gif") .setAlign(AlignType.center) .setUseMap("#MyMap", true)) .addElement(new MapElement("MyMap") .addElement(new AreaElement(AreaElement.rectangle, "353, 33, 475, 53", "http://www.weblogic.com/docs/classdocs/htmlimgmap.html#ok")) .addElement(new AreaElement(AreaElement.rectangle, "353, 60, 475, 82", "http://www.weblogic.com/docs/classdocs/htmlimgmap.html#cancel")) .addElement(new AreaElement(new java.awt.Rectangle(353,88,475,100), "http://www.weblogic.com/docs/classdocs/htmlimgmap.html#dns")) .addElement(new AreaElement(new java.awt.Polygon(xcoords, ycoords, ncoords), "http://www.weblogic.com/docs/classdocs/htmlimgmap.html#advanced")) .addElement(new AreaElement(AreaElement.circle, "220,193, 40", "http://www.weblogic.com/docs/classdocs/htmlimgmap.html#circle"))) .addElement(MarkupElement.HorizontalRule); hp.output(res.getOutputStream()); } catch (Exception e) { defaults.showException(e, res.getOutputStream()); } } }