1 package discRack.presentation.delements; 2 3 import discRack.presentation.dpanels.*; 4 5 import java.util.*; 6 7 14 public class DCollection extends DSimpleElement { 15 16 17 protected ArrayList refCollectionElements=new ArrayList(); 18 19 protected transient DPanel controlledPanel; 20 21 protected transient DControlPanel controlPanel; 22 23 public DCollection (String name) { 24 super(name); 25 } 26 27 28 public void add (DSimpleElement el) { 29 refCollectionElements.add(el); 30 } 31 32 33 public void remove (Object el) { 34 refCollectionElements.remove(el); 35 } 36 37 38 public Object get (int no) { 39 try { 40 return refCollectionElements.get(no); 41 } catch (Exception ex) { 42 return null; 43 } 44 } 45 46 47 public int size () { 48 return refCollectionElements.size(); 49 } 50 51 52 public void clear () { 53 refCollectionElements.clear(); 54 } 55 56 64 public void refreshCollection (Set elementsToAddOrRemove,boolean append) { 65 if (append) { 66 refCollectionElements.addAll(elementsToAddOrRemove); 67 } else { 68 refCollectionElements.removeAll(elementsToAddOrRemove); 69 } 70 } 71 72 78 public DCollectionElement getCollectionElement (String ID) { 79 DCollectionElement ce=null; 80 String ceID; 81 Iterator it=refCollectionElements.iterator(); 82 while (it.hasNext()) { 83 DCollectionElement cetmp=(DCollectionElement)it.next(); 84 ceID=cetmp.getID(); 85 if (ceID.equals(ID)) { 86 ce=cetmp; 87 break; 88 } 89 } 90 return ce; 91 } 92 93 97 public Collection getElementStructure () { 98 DSimpleElement el=generateNewElement(); 99 if (el instanceof DComplexElement) { 100 return ((DComplexElement)el).toComplexType(); 101 } 102 else { 103 java.util.List l=new ArrayList(); 104 l.add(el); 105 return l; 106 } 107 } 108 109 112 public void setReadOnly (boolean ro) { 113 isReadOnly=ro; 114 Iterator it=refCollectionElements.iterator(); 115 while (it.hasNext()) { 116 DSimpleElement el=(DSimpleElement)it.next(); 117 el.setReadOnly(ro); 118 } 119 } 120 121 122 public Collection toCollection() { 123 return refCollectionElements; 124 } 125 126 130 public Collection getTableElements() { 131 return refCollectionElements; 132 } 133 134 138 public DSimpleElement generateNewElement() { 139 return new DSimpleElement(name); 140 } 141 142 147 public void onActionCanceled (DSimpleElement el,int act) { 148 return; 149 } 150 151 156 public void onElementCreated (DSimpleElement el) { 157 return; 158 } 159 160 165 public void onElementModified (DSimpleElement el) { 166 return; 167 } 168 169 174 public void onElementDeleted (DSimpleElement el) throws Exception { 175 return; 176 } 177 178 public DPanel getControlledPanel () { 179 return controlledPanel; 180 } 181 182 public DPanel getControlPanel () { 183 return controlPanel; 184 } 185 186 189 public boolean isEmpty () { 190 return size()==0; 191 } 192 193 public DPanel getPanel () { 195 controlledPanel=new DTablePanel(this,"",false); 196 controlPanel=new DTableControlPanel(this,"",true,false); 197 return new DGroupPanel(this,new DPanel[]{ 198 controlledPanel,controlPanel},toName(), 199 false,true); 200 } 201 202 public String toString () { 203 return name; 204 } 205 206 } 207 | Popular Tags |