1 12 13 package com.openedit.webui.list; 14 15 import javax.swing.ListModel ; 16 17 import org.dom4j.Document; 18 import org.dom4j.DocumentFactory; 19 import org.dom4j.Element; 20 import org.dom4j.Namespace; 21 import org.dom4j.QName; 22 23 24 29 public class WebList 30 { 31 public static final Namespace WEB_LIST_NAMESPACE = Namespace.get( 32 "list", "http://www.einnovation.com/xmlns/WebUI/List"); 33 public static final QName LIST_QNAME = new QName("list", WEB_LIST_NAMESPACE); 34 protected ListModel fieldModel; 35 protected String fieldName; 36 protected WebListCellRenderer fieldCellRenderer; 37 38 43 public WebList(ListModel inModel) 44 { 45 setModel(inModel); 46 } 47 48 53 public void setCellRenderer(WebListCellRenderer cellRenderer) 54 { 55 fieldCellRenderer = cellRenderer; 56 } 57 58 63 public WebListCellRenderer getCellRenderer() 64 { 65 return fieldCellRenderer; 66 } 67 68 73 public void setModel(ListModel model) 74 { 75 fieldModel = model; 76 } 77 78 83 public ListModel getModel() 84 { 85 return fieldModel; 86 } 87 88 93 public void setName(String name) 94 { 95 fieldName = name; 96 } 97 98 103 public String getName() 104 { 105 return fieldName; 106 } 107 108 115 public Document render() 116 { 117 DocumentFactory factory = DocumentFactory.getInstance(); 118 Element rootElem = factory.createElement(LIST_QNAME); 119 120 if (getName() != null) 121 { 122 rootElem.addAttribute("name", getName()); 123 } 124 125 for (int i = 0; i < getModel().getSize(); i++) 127 { 128 rootElem.add( 129 getCellRenderer().getListCellElement(this, getModel().getElementAt(i), factory)); 130 } 131 132 return factory.createDocument(rootElem); 133 } 134 } 135 | Popular Tags |