added an indent= attribute to link items in left menus and fixed another couple
of minor bugs
This commit is contained in:
parent
004dcaf7ec
commit
1db18b7fb9
|
@ -467,6 +467,12 @@ public final class ServletMultipartHandler
|
||||||
|
|
||||||
} // end getParamNames
|
} // end getParamNames
|
||||||
|
|
||||||
|
public final boolean hasParameter(String name)
|
||||||
|
{
|
||||||
|
return param_byname.containsKey(name);
|
||||||
|
|
||||||
|
} // end hasParameter
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns whether or not the parameter with the specified name is a file parameter.
|
* Returns whether or not the parameter with the specified name is a file parameter.
|
||||||
*
|
*
|
||||||
|
|
|
@ -58,10 +58,10 @@ public class CDEmailAddressFormField extends CDTextFormField
|
||||||
*--------------------------------------------------------------------------------
|
*--------------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
public Object clone()
|
public CDFormField duplicate()
|
||||||
{
|
{
|
||||||
return new CDEmailAddressFormField(this);
|
return new CDEmailAddressFormField(this);
|
||||||
|
|
||||||
} // end clone
|
} // end duplicate
|
||||||
|
|
||||||
} // end class CDEmailAddressFormField
|
} // end class CDEmailAddressFormField
|
||||||
|
|
|
@ -27,6 +27,7 @@ import com.silverwrist.venice.except.ConfigException;
|
||||||
import com.silverwrist.venice.servlets.format.ColorSelectors;
|
import com.silverwrist.venice.servlets.format.ColorSelectors;
|
||||||
import com.silverwrist.venice.servlets.format.ComponentRender;
|
import com.silverwrist.venice.servlets.format.ComponentRender;
|
||||||
import com.silverwrist.venice.servlets.format.RenderData;
|
import com.silverwrist.venice.servlets.format.RenderData;
|
||||||
|
import com.silverwrist.venice.util.XMLLoader;
|
||||||
|
|
||||||
class LinkItem implements ComponentRender, ColorSelectors
|
class LinkItem implements ComponentRender, ColorSelectors
|
||||||
{
|
{
|
||||||
|
@ -52,6 +53,7 @@ class LinkItem implements ComponentRender, ColorSelectors
|
||||||
private boolean enabled = true; // is this item enabled?
|
private boolean enabled = true; // is this item enabled?
|
||||||
private String target = null; // target window for the link
|
private String target = null; // target window for the link
|
||||||
private String on_click = null; // onClick JavaScript for the link
|
private String on_click = null; // onClick JavaScript for the link
|
||||||
|
private int indent = 0; // how many spaces do we indent this link?
|
||||||
private ComponentRender contents; // what does this link contain? (image vs. text)
|
private ComponentRender contents; // what does this link contain? (image vs. text)
|
||||||
|
|
||||||
/*--------------------------------------------------------------------------------
|
/*--------------------------------------------------------------------------------
|
||||||
|
@ -61,15 +63,11 @@ class LinkItem implements ComponentRender, ColorSelectors
|
||||||
|
|
||||||
LinkItem(Element elt) throws ConfigException
|
LinkItem(Element elt) throws ConfigException
|
||||||
{
|
{
|
||||||
if (!(elt.getNodeName().equals("link")))
|
XMLLoader loader = XMLLoader.get();
|
||||||
{ // just some shorts-checking here to make sure the element is OK
|
loader.configVerifyNodeName(elt,"link");
|
||||||
logger.fatal("huh?!? this should have been a <link/> if it got here!");
|
|
||||||
throw new ConfigException("not a <link/> element");
|
|
||||||
|
|
||||||
} // end if
|
|
||||||
|
|
||||||
|
href = loader.configGetAttribute(elt,"href");
|
||||||
DOMElementHelper h = new DOMElementHelper(elt);
|
DOMElementHelper h = new DOMElementHelper(elt);
|
||||||
href = elt.getAttribute("href");
|
|
||||||
if (h.hasAttribute("type"))
|
if (h.hasAttribute("type"))
|
||||||
{ // get the "type" and check it
|
{ // get the "type" and check it
|
||||||
type = elt.getAttribute("type").trim().toLowerCase();
|
type = elt.getAttribute("type").trim().toLowerCase();
|
||||||
|
@ -100,6 +98,18 @@ class LinkItem implements ComponentRender, ColorSelectors
|
||||||
if (h.hasAttribute("disabled"))
|
if (h.hasAttribute("disabled"))
|
||||||
enabled = false;
|
enabled = false;
|
||||||
|
|
||||||
|
if (h.hasAttribute("indent"))
|
||||||
|
{ // load the "indent" attribute, make sure it's not less than 0
|
||||||
|
indent = loader.configGetAttributeInt(elt,"indent");
|
||||||
|
if (indent<0)
|
||||||
|
{ // whoops - this is an error!
|
||||||
|
logger.fatal("indent=\"" + indent + "\" is not a valid value");
|
||||||
|
throw new ConfigException("invalid indent= attribute of <link/>");
|
||||||
|
|
||||||
|
} // end if
|
||||||
|
|
||||||
|
} // end if
|
||||||
|
|
||||||
// load the contents
|
// load the contents
|
||||||
Element x = h.getSubElement("image");
|
Element x = h.getSubElement("image");
|
||||||
if (x!=null)
|
if (x!=null)
|
||||||
|
@ -116,6 +126,7 @@ class LinkItem implements ComponentRender, ColorSelectors
|
||||||
this.enabled = other.enabled;
|
this.enabled = other.enabled;
|
||||||
this.target = other.target;
|
this.target = other.target;
|
||||||
this.on_click = StringUtil.replaceAllVariables(other.on_click,vars);
|
this.on_click = StringUtil.replaceAllVariables(other.on_click,vars);
|
||||||
|
this.indent = other.indent;
|
||||||
this.contents = other.contents;
|
this.contents = other.contents;
|
||||||
|
|
||||||
} // end constructor
|
} // end constructor
|
||||||
|
@ -145,6 +156,8 @@ class LinkItem implements ComponentRender, ColorSelectors
|
||||||
} // end if
|
} // end if
|
||||||
else // write the "disabled" indicator
|
else // write the "disabled" indicator
|
||||||
out.write("<FONT COLOR=\"" + rdat.getStdColor(CONTENT_DISABLED) + "\">");
|
out.write("<FONT COLOR=\"" + rdat.getStdColor(CONTENT_DISABLED) + "\">");
|
||||||
|
for (int i=0; i<indent; i++)
|
||||||
|
out.write(" "); // do indent
|
||||||
contents.renderHere(out,rdat);
|
contents.renderHere(out,rdat);
|
||||||
out.write("</FONT>");
|
out.write("</FONT>");
|
||||||
if (enabled)
|
if (enabled)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user