KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > killingar > forum > tags > IndentTag


1 /* Copyright 2000-2005 Anders Hovmöller
2  *
3  * The person or persons who have associated their work with
4  * this document (the "Dedicator") hereby dedicate the entire
5  * copyright in the work of authorship identified below (the
6  * "Work") to the public domain.
7  *
8  * Dedicator makes this dedication for the benefit of the
9  * public at large and to the detriment of Dedicator's heirs
10  * and successors. Dedicator intends this dedication to be an
11  * overt act of relinquishment in perpetuity of all present
12  * and future rights under copyright law, whether vested or
13  * contingent, in the Work. Dedicator understands that such
14  * relinquishment of all rights includes the relinquishment of
15  * all rights to enforce (by lawsuit or otherwise) those
16  * copyrights in the Work.
17  *
18  * Dedicator recognizes that, once placed in the public
19  * domain, the Work may be freely reproduced, distributed,
20  * transmitted, used, modified, built upon, or otherwise
21  * exploited by anyone for any purpose, commercial or non-
22  * commercial, and in any way, including by methods that have
23  * not yet been invented or conceived.
24  */

25
26 /**
27  * Get a date from the ValueStack and format it in a nice way. Defaults to "yyyy-MM-dd" format.
28  */

29
30 package net.killingar.forum.tags;
31
32 import net.killingar.forum.internal.managers.ForumManager;
33 import net.killingar.forum.internal.managers.OptionsManager;
34
35 import javax.servlet.jsp.JspException JavaDoc;
36 import javax.servlet.jsp.JspTagException JavaDoc;
37
38 public class IndentTag extends webwork.view.taglib.WebWorkTagSupport
39 {
40     // Attributes ----------------------------------------------------
41
protected String JavaDoc valueAttr = "indent";
42     //protected String type = "table";
43

44     // Public --------------------------------------------------------
45
public void setValue(String JavaDoc in) { valueAttr = in; }
46     //public void setType(String in) { type = in; }
47

48     // BodyTag implementation ----------------------------------------
49
public int doStartTag() throws JspException JavaDoc
50     {
51         try
52         {
53             Integer JavaDoc value = (Integer JavaDoc)findValue(valueAttr);
54
55             if (value == null)
56             {
57                 return SKIP_BODY;
58             }
59             else
60             {
61                 ForumManager manager = (ForumManager)pageContext.getSession().getAttribute("manager");
62                 String JavaDoc s = ((OptionsManager)manager.getManager(OptionsManager.class.getName())).get("area indent size", "20");
63
64                 int indentSize = Integer.parseInt(s);
65                 pageContext.getOut().print(indentSize*value.intValue());
66
67                 //for (long i = 0; i < value.intValue(); i++)
68
//pageContext.getOut().print("&nbsp;&nbsp;&nbsp;");
69
}
70         }
71         catch (Exception JavaDoc e)
72         {
73             e.printStackTrace();
74             throw new JspTagException JavaDoc("Could not show value " + valueAttr + ":" + e);
75         }
76
77         return SKIP_BODY;
78     }
79 }
Popular Tags