modified the left menu definition style to accomodate images and better
use XML text attributes
This commit is contained in:
		
							parent
							
								
									5b17952eee
								
							
						
					
					
						commit
						81c7109152
					
				@ -144,30 +144,15 @@ Text of this agreement is TBD.
 | 
			
		||||
    <!-- Definition for the "top" menu (when not in a community) -->
 | 
			
		||||
    <menudef id="top">
 | 
			
		||||
      <header>Front Page</header>
 | 
			
		||||
      <menuitem>
 | 
			
		||||
	<text>Calendar</text>
 | 
			
		||||
	<absolute>TODO</absolute>
 | 
			
		||||
	<disabled/>
 | 
			
		||||
      </menuitem>
 | 
			
		||||
      <menuitem>
 | 
			
		||||
	<text>Chat</text>
 | 
			
		||||
	<absolute>TODO</absolute>
 | 
			
		||||
	<disabled/>
 | 
			
		||||
      </menuitem>
 | 
			
		||||
      <link href="TODO" type="absolute" disabled="true">Calendar</link>
 | 
			
		||||
      <link href="TODO" type="absolute" disabled="true">Chat</link>
 | 
			
		||||
    </menudef>
 | 
			
		||||
 | 
			
		||||
    <!-- Definition for the "fixed" menu (always displayed under the "top" or "community" menus) -->
 | 
			
		||||
    <menudef id="fixed">
 | 
			
		||||
      <header>About This Site</header>
 | 
			
		||||
      <menuitem>
 | 
			
		||||
	<text>Documentation</text>
 | 
			
		||||
	<absolute>TODO</absolute>
 | 
			
		||||
	<disabled/>
 | 
			
		||||
      </menuitem>
 | 
			
		||||
      <menuitem>
 | 
			
		||||
	<text>About Venice</text>
 | 
			
		||||
	<frame>about-venice.html</frame>
 | 
			
		||||
      </menuitem>
 | 
			
		||||
      <link href="TODO" type="absolute" disabled="true">Documentation</link>
 | 
			
		||||
      <link href="about-venice.html" type="frame">About Venice</link>
 | 
			
		||||
    </menudef>
 | 
			
		||||
 | 
			
		||||
  </menu-definitions>
 | 
			
		||||
 | 
			
		||||
@ -1,57 +0,0 @@
 | 
			
		||||
/*
 | 
			
		||||
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 | 
			
		||||
 * (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.mozilla.org/MPL/>.
 | 
			
		||||
 * 
 | 
			
		||||
 * Software distributed under the License is distributed on an "AS IS" basis, WITHOUT
 | 
			
		||||
 * WARRANTY OF ANY KIND, either express or implied. See the License for the specific
 | 
			
		||||
 * language governing rights and limitations under the License.
 | 
			
		||||
 * 
 | 
			
		||||
 * The Original Code is the Venice Web Communities System.
 | 
			
		||||
 * 
 | 
			
		||||
 * The Initial Developer of the Original Code is Eric J. Bowersox <erbo@silcom.com>,
 | 
			
		||||
 * for Silverwrist Design Studios.  Portions created by Eric J. Bowersox are
 | 
			
		||||
 * Copyright (C) 2001 Eric J. Bowersox/Silverwrist Design Studios.  All Rights Reserved.
 | 
			
		||||
 * 
 | 
			
		||||
 * Contributor(s): 
 | 
			
		||||
 */
 | 
			
		||||
package com.silverwrist.venice.servlets.format.menus;
 | 
			
		||||
 | 
			
		||||
import org.w3c.dom.*;
 | 
			
		||||
import com.silverwrist.util.*;
 | 
			
		||||
import com.silverwrist.venice.servlets.format.RenderData;
 | 
			
		||||
 | 
			
		||||
class FrameLeftMenuItem extends LeftMenuItem
 | 
			
		||||
{
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Attributes
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  String url;
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Constructor
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  FrameLeftMenuItem(Element elt)
 | 
			
		||||
  {
 | 
			
		||||
    super(elt);
 | 
			
		||||
    DOMElementHelper h = new DOMElementHelper(elt);
 | 
			
		||||
    url = h.getSubElementText("frame");
 | 
			
		||||
 | 
			
		||||
  } // end constructor
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Overrides from class LeftMenuItem
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  protected void appendURL(StringBuffer sbuf, RenderData rdat)
 | 
			
		||||
  {
 | 
			
		||||
    sbuf.append(rdat.getEncodedServletPath("frame/" + url));
 | 
			
		||||
 | 
			
		||||
  } // end appendURL
 | 
			
		||||
 | 
			
		||||
} // end class FrameLeftMenuItem
 | 
			
		||||
@ -19,46 +19,75 @@ package com.silverwrist.venice.servlets.format.menus;
 | 
			
		||||
 | 
			
		||||
import java.io.Writer;
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import org.apache.log4j.*;
 | 
			
		||||
import org.w3c.dom.*;
 | 
			
		||||
import com.silverwrist.util.*;
 | 
			
		||||
import com.silverwrist.venice.servlets.format.ColorSelectors;
 | 
			
		||||
import com.silverwrist.venice.core.ConfigException;
 | 
			
		||||
import com.silverwrist.venice.servlets.format.ComponentRender;
 | 
			
		||||
import com.silverwrist.venice.servlets.format.RenderData;
 | 
			
		||||
 | 
			
		||||
abstract class LeftMenuItem implements ComponentRender, ColorSelectors
 | 
			
		||||
class ImageItem implements ComponentRender
 | 
			
		||||
{
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Static data members
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  private static Category logger = Category.getInstance(LinkItem.class);
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Attributes
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  private String text;
 | 
			
		||||
  private boolean disabled = false;
 | 
			
		||||
  private boolean new_window = false;
 | 
			
		||||
  private String src;
 | 
			
		||||
  private String alt = null;
 | 
			
		||||
  private int width;
 | 
			
		||||
  private int height;
 | 
			
		||||
  private boolean fixup;
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Constructor
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  protected LeftMenuItem(Element elt)
 | 
			
		||||
  ImageItem(Element elt) throws ConfigException
 | 
			
		||||
  {
 | 
			
		||||
    if (!(elt.getNodeName().equals("image")))
 | 
			
		||||
    { // just some shorts-checking here to make sure the element is OK
 | 
			
		||||
      logger.fatal("huh?!? this should have been a <image/> if it got here!");
 | 
			
		||||
      throw new ConfigException("not a <image/> element");
 | 
			
		||||
 | 
			
		||||
    } // end if
 | 
			
		||||
 | 
			
		||||
    // get image source
 | 
			
		||||
    DOMElementHelper h = new DOMElementHelper(elt);
 | 
			
		||||
    text = StringUtil.encodeHTML(h.getSubElementText("text"));
 | 
			
		||||
    if (h.hasChildElement("disabled"))
 | 
			
		||||
      disabled = true;
 | 
			
		||||
    if (h.hasChildElement("new-window"))
 | 
			
		||||
      new_window = true;
 | 
			
		||||
    if (h.hasAttribute("src"))
 | 
			
		||||
      src = elt.getAttribute("src");
 | 
			
		||||
    else
 | 
			
		||||
      throw new ConfigException("src= attribute of <image/> element not specified");
 | 
			
		||||
 | 
			
		||||
    // get the image width
 | 
			
		||||
    Integer tmp = h.getAttributeInt("width");
 | 
			
		||||
    if (tmp!=null)
 | 
			
		||||
      width = tmp.intValue();
 | 
			
		||||
    else
 | 
			
		||||
      throw new ConfigException("width= attribute of <image/> element not specified or invalid");
 | 
			
		||||
 | 
			
		||||
    // get the image height
 | 
			
		||||
    tmp = h.getAttributeInt("height");
 | 
			
		||||
    if (tmp!=null)
 | 
			
		||||
      height = tmp.intValue();
 | 
			
		||||
    else
 | 
			
		||||
      throw new ConfigException("height= attribute of <image/> element not specified or invalid");
 | 
			
		||||
 | 
			
		||||
    if (h.hasAttribute("alt"))
 | 
			
		||||
      alt = elt.getAttribute("alt");
 | 
			
		||||
    if (h.hasAttribute("fixup"))
 | 
			
		||||
      fixup = true;
 | 
			
		||||
 | 
			
		||||
  } // end constructor
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Abstract functions which MUST be overridden
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  protected abstract void appendURL(StringBuffer sbuf, RenderData rdat);
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Implementations from interface ComponentRender
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
@ -66,27 +95,19 @@ abstract class LeftMenuItem implements ComponentRender, ColorSelectors
 | 
			
		||||
 | 
			
		||||
  public void renderHere(Writer out, RenderData rdat) throws IOException
 | 
			
		||||
  {
 | 
			
		||||
    StringBuffer buf = new StringBuffer();
 | 
			
		||||
    out.write("<IMG SRC=\"");
 | 
			
		||||
    if (fixup)
 | 
			
		||||
    { // fix up the image path
 | 
			
		||||
      src = rdat.getFullImagePath(src);
 | 
			
		||||
      fixup = false;
 | 
			
		||||
 | 
			
		||||
    if (disabled)
 | 
			
		||||
      buf.append("<FONT COLOR=\"").append(rdat.getStdColor(CONTENT_DISABLED)).append("\">");
 | 
			
		||||
    else
 | 
			
		||||
    { // write the <A> tag
 | 
			
		||||
      buf.append("<A CLASS=\"lbar\" HREF=\"");
 | 
			
		||||
      appendURL(buf,rdat);
 | 
			
		||||
      buf.append('"');
 | 
			
		||||
      if (new_window)
 | 
			
		||||
	buf.append(" TARGET=\"_blank\"");
 | 
			
		||||
      buf.append("><FONT COLOR=\"").append(rdat.getStdColor(LEFT_LINK)).append("\">");
 | 
			
		||||
    } // end if
 | 
			
		||||
 | 
			
		||||
    } // end else (writing <A> tag)
 | 
			
		||||
 | 
			
		||||
    buf.append(text).append("</FONT>");
 | 
			
		||||
    if (!disabled)
 | 
			
		||||
      buf.append("</A>");
 | 
			
		||||
    buf.append("<BR>\n");
 | 
			
		||||
    out.write(buf.toString());
 | 
			
		||||
    out.write(src + "\" WIDTH=" + width + " HEIGHT=" + height);
 | 
			
		||||
    if (alt!=null)
 | 
			
		||||
      out.write(" ALT=\"" + alt + "\"");
 | 
			
		||||
    out.write(" BORDER=0>");
 | 
			
		||||
 | 
			
		||||
  } // end renderHere
 | 
			
		||||
 | 
			
		||||
} // end class LeftMenuItem
 | 
			
		||||
} // end class ImageItem
 | 
			
		||||
@ -36,20 +36,20 @@ public class LeftMenu implements ComponentRender
 | 
			
		||||
 | 
			
		||||
  static class Header implements ComponentRender
 | 
			
		||||
  {
 | 
			
		||||
    private String txt;  // the actual stored text
 | 
			
		||||
    private TextItem item;
 | 
			
		||||
 | 
			
		||||
    Header(Element elt)
 | 
			
		||||
    {
 | 
			
		||||
      DOMElementHelper h = new DOMElementHelper(elt);
 | 
			
		||||
      StringBuffer buf = new StringBuffer("<B>");
 | 
			
		||||
      buf.append(StringUtil.encodeHTML(h.getElementText())).append("</B><BR>\n");
 | 
			
		||||
      txt = buf.toString();
 | 
			
		||||
      item = new TextItem(h.getElementText());
 | 
			
		||||
 | 
			
		||||
    } // end constructor
 | 
			
		||||
 | 
			
		||||
    public void renderHere(Writer out, RenderData rdat) throws IOException
 | 
			
		||||
    {
 | 
			
		||||
      out.write(txt);
 | 
			
		||||
      out.write("<B>");
 | 
			
		||||
      item.renderHere(out,rdat);
 | 
			
		||||
      out.write("</B><BR>\n");
 | 
			
		||||
 | 
			
		||||
    } // end renderHere
 | 
			
		||||
 | 
			
		||||
@ -110,37 +110,20 @@ public class LeftMenu implements ComponentRender
 | 
			
		||||
      Node n = items.item(i);
 | 
			
		||||
      if (n.getNodeType()==Node.ELEMENT_NODE)
 | 
			
		||||
      { // we've found a child element - what type is it?
 | 
			
		||||
	if (n.getNodeName().equals("menuitem"))
 | 
			
		||||
	{ // investigate the contents of the subelement
 | 
			
		||||
	  DOMElementHelper h = new DOMElementHelper((Element)n);
 | 
			
		||||
	  if (!(h.hasChildElement("text")))
 | 
			
		||||
	  { // no menu item text!
 | 
			
		||||
	    logger.fatal("<menuitem/> element has no <text/> subelement");
 | 
			
		||||
	    throw new ConfigException("<menuitem/> element has no <text/> subelement",h.getElement());
 | 
			
		||||
 | 
			
		||||
	  } // end if
 | 
			
		||||
 | 
			
		||||
	  LeftMenuItem mitem = null;
 | 
			
		||||
	  if (h.hasChildElement("servlet"))
 | 
			
		||||
	    mitem = new ServletLeftMenuItem(h.getElement());
 | 
			
		||||
	  else if (h.hasChildElement("absolute"))
 | 
			
		||||
	    mitem = new AbsoluteLeftMenuItem(h.getElement());
 | 
			
		||||
	  else if (h.hasChildElement("frame"))
 | 
			
		||||
	    mitem = new FrameLeftMenuItem(h.getElement());
 | 
			
		||||
	  else
 | 
			
		||||
	  { // we don't know what type of menu this is!
 | 
			
		||||
	    logger.fatal("unknown <menuitem/> type seen in menu");
 | 
			
		||||
	    throw new ConfigException("unknown <menuitem/> type seen in menu",h.getElement());
 | 
			
		||||
 | 
			
		||||
	  } // end else
 | 
			
		||||
 | 
			
		||||
	  menu_items.add(mitem);
 | 
			
		||||
 | 
			
		||||
	} // end if
 | 
			
		||||
	else if (n.getNodeName().equals("header"))
 | 
			
		||||
	if (n.getNodeName().equals("header"))
 | 
			
		||||
	  menu_items.add(new Header((Element)n));  // add a new header
 | 
			
		||||
	else if (n.getNodeName().equals("separator"))
 | 
			
		||||
	  menu_items.add(separator_singleton);  // all separators are exactly the same
 | 
			
		||||
	else if (n.getNodeName().equals("text"))
 | 
			
		||||
	{ // add a text item
 | 
			
		||||
	  DOMElementHelper h = new DOMElementHelper((Element)n);
 | 
			
		||||
	  menu_items.add(new TextItem(h.getElementText()));
 | 
			
		||||
 | 
			
		||||
	} // end else if
 | 
			
		||||
	else if (n.getNodeName().equals("link"))
 | 
			
		||||
	  menu_items.add(new LinkItem((Element)n));
 | 
			
		||||
	else if (n.getNodeName().equals("image"))
 | 
			
		||||
	  menu_items.add(new ImageItem((Element)n));
 | 
			
		||||
	else
 | 
			
		||||
	{ // menu definition has an unknown item
 | 
			
		||||
	  logger.fatal("unknown element <" + n.getNodeName() + "/> inside <menudef/>");
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										137
									
								
								src/com/silverwrist/venice/servlets/format/menus/LinkItem.java
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										137
									
								
								src/com/silverwrist/venice/servlets/format/menus/LinkItem.java
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,137 @@
 | 
			
		||||
/*
 | 
			
		||||
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 | 
			
		||||
 * (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.mozilla.org/MPL/>.
 | 
			
		||||
 * 
 | 
			
		||||
 * Software distributed under the License is distributed on an "AS IS" basis, WITHOUT
 | 
			
		||||
 * WARRANTY OF ANY KIND, either express or implied. See the License for the specific
 | 
			
		||||
 * language governing rights and limitations under the License.
 | 
			
		||||
 * 
 | 
			
		||||
 * The Original Code is the Venice Web Communities System.
 | 
			
		||||
 * 
 | 
			
		||||
 * The Initial Developer of the Original Code is Eric J. Bowersox <erbo@silcom.com>,
 | 
			
		||||
 * for Silverwrist Design Studios.  Portions created by Eric J. Bowersox are
 | 
			
		||||
 * Copyright (C) 2001 Eric J. Bowersox/Silverwrist Design Studios.  All Rights Reserved.
 | 
			
		||||
 * 
 | 
			
		||||
 * Contributor(s): 
 | 
			
		||||
 */
 | 
			
		||||
package com.silverwrist.venice.servlets.format.menus;
 | 
			
		||||
 | 
			
		||||
import java.io.Writer;
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import org.apache.log4j.*;
 | 
			
		||||
import org.w3c.dom.*;
 | 
			
		||||
import com.silverwrist.util.*;
 | 
			
		||||
import com.silverwrist.venice.core.ConfigException;
 | 
			
		||||
import com.silverwrist.venice.servlets.format.ColorSelectors;
 | 
			
		||||
import com.silverwrist.venice.servlets.format.ComponentRender;
 | 
			
		||||
import com.silverwrist.venice.servlets.format.RenderData;
 | 
			
		||||
 | 
			
		||||
class LinkItem implements ComponentRender, ColorSelectors
 | 
			
		||||
{
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Static data members
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  private static final String ABSOLUTE = "absolute";
 | 
			
		||||
  private static final String SERVLET = "servlet";
 | 
			
		||||
  private static final String FRAME = "frame";
 | 
			
		||||
  private static final String[] valid_types = { ABSOLUTE, SERVLET, FRAME };
 | 
			
		||||
 | 
			
		||||
  private static Category logger = Category.getInstance(LinkItem.class);
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Attributes
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  private String href;
 | 
			
		||||
  private String type;
 | 
			
		||||
  private boolean enabled = true;
 | 
			
		||||
  private String target = null;
 | 
			
		||||
  private ComponentRender contents;
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Constructor
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  LinkItem(Element elt) throws ConfigException
 | 
			
		||||
  {
 | 
			
		||||
    if (!(elt.getNodeName().equals("link")))
 | 
			
		||||
    { // just some shorts-checking here to make sure the element is OK
 | 
			
		||||
      logger.fatal("huh?!? this should have been a <link/> if it got here!");
 | 
			
		||||
      throw new ConfigException("not a <link/> element");
 | 
			
		||||
 | 
			
		||||
    } // end if
 | 
			
		||||
 | 
			
		||||
    DOMElementHelper h = new DOMElementHelper(elt);
 | 
			
		||||
    href = elt.getAttribute("href");
 | 
			
		||||
    if (h.hasAttribute("type"))
 | 
			
		||||
    { // get the "type" and check it
 | 
			
		||||
      type = elt.getAttribute("type").trim().toLowerCase();
 | 
			
		||||
      boolean err = true;
 | 
			
		||||
      for (int i=0; err && (i<valid_types.length); i++)
 | 
			
		||||
	if (type.equals(valid_types[i]))
 | 
			
		||||
	  err = false;  // found it!
 | 
			
		||||
      if (err)
 | 
			
		||||
      { // type value is not valid
 | 
			
		||||
	logger.fatal("type=\"" + type + "\" is not a valid value");
 | 
			
		||||
	throw new ConfigException("invalid type= attribute of <link/>");
 | 
			
		||||
 | 
			
		||||
      } // end if
 | 
			
		||||
 | 
			
		||||
    } // end if
 | 
			
		||||
    else  // default to "absolute"
 | 
			
		||||
      type = ABSOLUTE;
 | 
			
		||||
 | 
			
		||||
    // load the "target"
 | 
			
		||||
    if (h.hasAttribute("target"))
 | 
			
		||||
      target = elt.getAttribute("target");
 | 
			
		||||
 | 
			
		||||
    // load the "disabled" attribute
 | 
			
		||||
    if (h.hasAttribute("disabled"))
 | 
			
		||||
      enabled = false;
 | 
			
		||||
 | 
			
		||||
    // load the contents
 | 
			
		||||
    Element x = h.getSubElement("image");
 | 
			
		||||
    if (x!=null)
 | 
			
		||||
      contents = new ImageItem(x);
 | 
			
		||||
    else
 | 
			
		||||
      contents = new TextItem(h.getElementText());
 | 
			
		||||
 | 
			
		||||
  } // end constructor
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Implementations from interface ComponentRender
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  public void renderHere(Writer out, RenderData rdat) throws IOException
 | 
			
		||||
  {
 | 
			
		||||
    if (enabled)
 | 
			
		||||
    { // write the opening <A> and <FONT> tags
 | 
			
		||||
      out.write("<A HREF=\"");
 | 
			
		||||
      if (type.equals(ABSOLUTE))
 | 
			
		||||
	out.write(href);
 | 
			
		||||
      else if (type.equals(SERVLET))
 | 
			
		||||
	out.write(rdat.getEncodedServletPath(href));
 | 
			
		||||
      else if (type.equals(FRAME))
 | 
			
		||||
	out.write(rdat.getEncodedServletPath("frame/" + href));
 | 
			
		||||
      out.write("\" CLASS=\"lbar\"");
 | 
			
		||||
      if (target!=null)
 | 
			
		||||
	out.write(" TARGET=\"" + target + "\"");
 | 
			
		||||
      out.write("><FONT COLOR=\"" + rdat.getStdColor(LEFT_LINK) + "\">");
 | 
			
		||||
    } // end if
 | 
			
		||||
    else  // write the "disabled" indicator
 | 
			
		||||
      out.write("<FONT COLOR=\"" + rdat.getStdColor(CONTENT_DISABLED) + "\">");
 | 
			
		||||
    contents.renderHere(out,rdat);
 | 
			
		||||
    out.write("</FONT>");
 | 
			
		||||
    if (enabled)
 | 
			
		||||
      out.write("</A>");
 | 
			
		||||
    out.write("<BR>\n");
 | 
			
		||||
 | 
			
		||||
  } // end renderHere
 | 
			
		||||
 | 
			
		||||
} // end class LinkItem
 | 
			
		||||
@ -1,57 +0,0 @@
 | 
			
		||||
/*
 | 
			
		||||
 * The contents of this file are subject to the Mozilla Public License Version 1.1
 | 
			
		||||
 * (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.mozilla.org/MPL/>.
 | 
			
		||||
 * 
 | 
			
		||||
 * Software distributed under the License is distributed on an "AS IS" basis, WITHOUT
 | 
			
		||||
 * WARRANTY OF ANY KIND, either express or implied. See the License for the specific
 | 
			
		||||
 * language governing rights and limitations under the License.
 | 
			
		||||
 * 
 | 
			
		||||
 * The Original Code is the Venice Web Communities System.
 | 
			
		||||
 * 
 | 
			
		||||
 * The Initial Developer of the Original Code is Eric J. Bowersox <erbo@silcom.com>,
 | 
			
		||||
 * for Silverwrist Design Studios.  Portions created by Eric J. Bowersox are
 | 
			
		||||
 * Copyright (C) 2001 Eric J. Bowersox/Silverwrist Design Studios.  All Rights Reserved.
 | 
			
		||||
 * 
 | 
			
		||||
 * Contributor(s): 
 | 
			
		||||
 */
 | 
			
		||||
package com.silverwrist.venice.servlets.format.menus;
 | 
			
		||||
 | 
			
		||||
import org.w3c.dom.*;
 | 
			
		||||
import com.silverwrist.util.*;
 | 
			
		||||
import com.silverwrist.venice.servlets.format.RenderData;
 | 
			
		||||
 | 
			
		||||
class ServletLeftMenuItem extends LeftMenuItem
 | 
			
		||||
{
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Attributes
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  String url;
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Constructor
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  ServletLeftMenuItem(Element elt)
 | 
			
		||||
  {
 | 
			
		||||
    super(elt);
 | 
			
		||||
    DOMElementHelper h = new DOMElementHelper(elt);
 | 
			
		||||
    url = h.getSubElementText("servlet");
 | 
			
		||||
 | 
			
		||||
  } // end constructor
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Overrides from class LeftMenuItem
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  protected void appendURL(StringBuffer sbuf, RenderData rdat)
 | 
			
		||||
  {
 | 
			
		||||
    sbuf.append(rdat.getEncodedServletPath(url));
 | 
			
		||||
 | 
			
		||||
  } // end appendURL
 | 
			
		||||
 | 
			
		||||
} // end class ServletLeftMenuItem
 | 
			
		||||
@ -17,41 +17,41 @@
 | 
			
		||||
 */
 | 
			
		||||
package com.silverwrist.venice.servlets.format.menus;
 | 
			
		||||
 | 
			
		||||
import org.w3c.dom.*;
 | 
			
		||||
import com.silverwrist.util.*;
 | 
			
		||||
import java.io.Writer;
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import com.silverwrist.util.StringUtil;
 | 
			
		||||
import com.silverwrist.venice.servlets.format.ComponentRender;
 | 
			
		||||
import com.silverwrist.venice.servlets.format.RenderData;
 | 
			
		||||
 | 
			
		||||
class AbsoluteLeftMenuItem extends LeftMenuItem
 | 
			
		||||
class TextItem implements ComponentRender
 | 
			
		||||
{
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Attributes
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  String url;
 | 
			
		||||
  private String contents;
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Constructor
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  AbsoluteLeftMenuItem(Element elt)
 | 
			
		||||
  TextItem(String contents)
 | 
			
		||||
  {
 | 
			
		||||
    super(elt);
 | 
			
		||||
    DOMElementHelper h = new DOMElementHelper(elt);
 | 
			
		||||
    url = h.getSubElementText("absolute");
 | 
			
		||||
    this.contents = StringUtil.encodeHTML(contents);
 | 
			
		||||
 | 
			
		||||
  } // end constructor
 | 
			
		||||
 | 
			
		||||
  /*--------------------------------------------------------------------------------
 | 
			
		||||
   * Overrides from class LeftMenuItem
 | 
			
		||||
   * Implementations from interface ComponentRender
 | 
			
		||||
   *--------------------------------------------------------------------------------
 | 
			
		||||
   */
 | 
			
		||||
 | 
			
		||||
  protected void appendURL(StringBuffer sbuf, RenderData rdat)
 | 
			
		||||
  public void renderHere(Writer out, RenderData rdat) throws IOException
 | 
			
		||||
  {
 | 
			
		||||
    sbuf.append(url);
 | 
			
		||||
    out.write(contents);
 | 
			
		||||
 | 
			
		||||
  } // end appendURL
 | 
			
		||||
  } // end renderHere
 | 
			
		||||
 | 
			
		||||
} // end class AbsoluteLeftMenuItem
 | 
			
		||||
} // end class TextItem
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user