}
public void addModules() {
if (elements != null) elements.clear();
DcModule referencedMod;
for (DcModule module : DcModules.getAllModules()) {
try {
if (module.isSelectableInUI() && module.isEnabled()) {
List<ModulePanel> c = new ArrayList<ModulePanel>();
c.add(new ModulePanel(module, ModulePanel._ICON32));
for (DcField field : module.getFields()) {
referencedMod = DcModules.getReferencedModule(field);
if ( referencedMod.isEnabled() &&
referencedMod.getIndex() != module.getIndex() &&
referencedMod.getType() != DcModule._TYPE_PROPERTY_MODULE &&
referencedMod.getType() != DcModule._TYPE_EXTERNALREFERENCE_MODULE &&
referencedMod.getIndex() != DcModules._CONTACTPERSON &&
referencedMod.getIndex() != DcModules._CONTAINER) {
c.add(new ModulePanel(referencedMod, ModulePanel._ICON16));
}
}
elements.put(module.getIndex(), c);