1 13 package com.tonbeller.wcf.ui; 14 15 import java.util.ArrayList ; 16 import java.util.Iterator ; 17 import java.util.List ; 18 19 import org.w3c.dom.Element ; 20 import org.w3c.dom.Node ; 21 import org.w3c.dom.NodeList ; 22 23 import com.tonbeller.wcf.utils.XoplonNS; 24 25 32 public class Select extends TypedCtrl { 33 34 35 public static void removeAllItems(Element element) { 36 List lis = getItems(element); 37 Iterator en = lis.iterator(); 38 while (en.hasNext()) { 39 Element item = (Element ) en.next(); 40 element.removeChild(item); 41 } 42 } 43 44 45 48 public static void setSelection(Element element, Element item) { 49 Iterator it = getItems(element).iterator(); 50 while (it.hasNext()) 51 Item.setSelected((Element )it.next(), false); 52 Item.setSelected(item, true); 53 } 54 55 58 public static void setSelectedItems(Element element, List items) { 59 Iterator it = getItems(element).iterator(); 60 while (it.hasNext()) 61 Item.setSelected((Element )it.next(), false); 62 63 it = items.iterator(); 64 while (it.hasNext()) 65 Item.setSelected((Element )it.next(), true); 66 } 67 68 69 72 public static void removeSelection(Element element, Element item) { 73 Item.setSelected(item, false); 74 } 75 76 77 public static void addItem(Element element, Element li) { 78 element.appendChild(li); 79 } 80 81 82 public static void removeItem(Element element, Element li) { 83 element.removeChild(li); 84 } 85 86 87 public static List getItems(Element element) { 88 List lis = new ArrayList (); 89 90 NodeList children = element.getChildNodes(); 92 for (int i = 0; i < children.getLength(); ++i) { 93 Node child = children.item(i); 94 if (child.getNodeType() == Node.ELEMENT_NODE) { 95 lis.add(child); 96 } 97 } 99 return lis; 100 } 101 102 107 public static void getIValue(Element element) { 108 XoplonNS.getAttribute(element, "ivalue"); 109 } 110 111 115 public static void setIValue(Element element) { 116 List list = getItems(element); 117 Iterator en = list.iterator(); 118 int index = 1; 119 StringBuffer sb = new StringBuffer (); 120 boolean first = true; 121 while (en.hasNext()) { 122 Element item = (Element ) en.next(); 123 if (ListItem.isSelected(item)) { 124 if (first) 125 first = false; 126 else 127 sb.append(';'); 128 sb.append(index); 129 } 130 ++index; 131 } 132 XoplonNS.setAttribute(element, "ivalue", sb.toString()); 133 } 134 135 136 137 } 138 | Popular Tags |