/* * 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 . * * 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 , * 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.ui.dlg; import java.io.IOException; import java.util.*; import org.w3c.dom.*; import com.silverwrist.util.*; import com.silverwrist.venice.except.*; import com.silverwrist.venice.security.Role; import com.silverwrist.venice.ui.*; public class RoleListField extends PickListField { /*-------------------------------------------------------------------------------- * Static data members *-------------------------------------------------------------------------------- */ public static final String TAGNAME = "rolelist"; /*-------------------------------------------------------------------------------- * Constructors *-------------------------------------------------------------------------------- */ public RoleListField(String name, String caption, String caption2, boolean required, List role_list) { super(name,caption,caption2,required,role_list); } // end constructor public RoleListField(Element elt) throws ConfigException { super(elt,null); } // end constructor protected RoleListField(RoleListField other) { super(other); } // end constructor /*-------------------------------------------------------------------------------- * Overrides from class PickListField *-------------------------------------------------------------------------------- */ protected String getChoiceName(Object o) { return String.valueOf(((Role)o).getLevel()); } // end getChoiceName protected String getChoiceValue(Object o) { return ((Role)o).getName(); } // end getChoiceValue /*-------------------------------------------------------------------------------- * Implementations from interface DialogField *-------------------------------------------------------------------------------- */ public Object getValue() { return new Integer(super.getValue().toString()); } // end getValue public void setValue(Object o) { if (o!=null) { // set an object value if (o instanceof Role) super.setValue(String.valueOf(((Role)o).getLevel())); else if (o instanceof Number) super.setValue(String.valueOf(((Number)o).intValue())); else super.setValue(o); } // end if else super.setValue(null); } // end setValue public DialogField duplicate() { return new RoleListField(this); } // end duplicate public Object sendMessage(String msg, Object data) { if (msg.equals("setRoleList")) { // the role list this.setChoicesList((List)data); return null; } // end if return super.sendMessage(msg,data); } // end sendMessage } // end class RoleListField