Index: topia/src/java/org/codelutin/topia/generators/ui/swing/ObjectModelToEntityPanel.java diff -u topia/src/java/org/codelutin/topia/generators/ui/swing/ObjectModelToEntityPanel.java:1.2 topia/src/java/org/codelutin/topia/generators/ui/swing/ObjectModelToEntityPanel.java:1.3 --- topia/src/java/org/codelutin/topia/generators/ui/swing/ObjectModelToEntityPanel.java:1.2 Fri Aug 6 17:48:52 2004 +++ topia/src/java/org/codelutin/topia/generators/ui/swing/ObjectModelToEntityPanel.java Fri Sep 10 15:37:35 2004 @@ -23,10 +23,10 @@ * * @author Benjamin Poussin * Copyright Code Lutin -* @version $Revision: 1.2 $ +* @version $Revision: 1.3 $ * -* Mise a jour: $Date: 2004/08/06 17:48:52 $ -* par : $Author: bpoussin $ +* Mise a jour: $Date: 2004/09/10 15:37:35 $ +* par : $Author: mazelier $ */ package org.codelutin.topia.generators.ui.swing; @@ -38,8 +38,10 @@ import org.codelutin.generator.Generator; import org.codelutin.generator.AbstractObjectModelGenerator; import org.codelutin.generator.models.object.ObjectModelClass; +import org.codelutin.generator.models.object.ObjectModelAttribute; import org.codelutin.topia.generators.ui.Util; +import java.util.Iterator; /** * Ce generateur permet de generer la classe avec l'ensemble des methodes a implanter @@ -79,16 +81,26 @@ import org.codelutin.topia.TopiaContext; import org.codelutin.topia.TopiaQuery; +import org.codelutin.topia.TopiaPersistenceService; + +import <%=clazz.getPackageName()%>.<%=capitalizeName(clazz)%>; }*/ } /*{ public class <%=capitalizeName(clazz)%>Panel extends <%=capitalizeName(clazz)%>PanelUI { + protected <%=capitalizeName(clazz)%> entity = null; + public <%=capitalizeName(clazz)%>Panel(){ init(); } + public void setEntity(<%=capitalizeName(clazz)%> entity){ + this.entity = entity; + load(); + } + public <%=capitalizeName(clazz)%>Panel(TopiaContext context){ setContext(context); init(); @@ -97,26 +109,81 @@ public void on_save(){ // TODO a implanter System.out.println("on_save"); + if(entity == null){ + TopiaPersistenceService ps = context.getPersistenceService(<%=capitalizeName(clazz)%>.class); + entity = (<%=capitalizeName(clazz)%>)ps.create(); + } +}*/ + for(Iterator i=clazz.getSuperclasses().iterator(); i.hasNext();) { + ObjectModelClass parent = (ObjectModelClass)i.next(); + setAttributes(output, parent); + } + setAttributes(output, clazz); +/*{ } public void on_delete(){ - // TODO a implanter System.out.println("on_delete"); + if(entity != null){ + entity.remove(); + entity = null; + load(); + } } public void on_cancel(){ - // TODO a implanter System.out.println("on_cancel"); + load(); } public void on_search(){ // TODO a implanter System.out.println("on_search"); } + + + protected void load(){ + //inverse du save + <%for(Iterator i=clazz.getAttributes().iterator(); i.hasNext();) { + ObjectModelAttribute att = (ObjectModelAttribute)i.next();%> + if(entity != null){ + get<%=capitalizeName(att)%>Editor().setText(entity.get<%=capitalizeName(att)%>()); + }else{ + get<%=capitalizeName(att)%>Editor().setText(""); + } + <%}%> + } } }*/ } } + + protected void setAttributes(Writer output, ObjectModelClass clazz) throws IOException{ + for(Iterator i=clazz.getAttributes().iterator(); i.hasNext();) { + ObjectModelAttribute att = (ObjectModelAttribute)i.next(); + + if(att.referenceClassifier()){ + if(att.getMaxMultiplicity()>1 || att.getMaxMultiplicity()==-1){ +/*{ + entity.set<%=capitalizeName(att)%>(get<%=capitalizeName(att)%>Editor().getSelectedValue()); +}*/ + }else{ +/*{ + entity.set<%=capitalizeName(att)%>(get<%=capitalizeName(att)%>Editor().getSelectedItem()); +}*/ + } + }else if(att.getType().equalsIgnoreCase("boolean")){ +/*{ + entity.set<%=capitalizeName(att)%>(get<%=capitalizeName(att)%>Editor().isSelected()); +}*/ + }else{ +/*{ + entity.set<%=capitalizeName(att)%>(get<%=capitalizeName(att)%>Editor().getText()); +}*/ + } + } + } } // ObjectModelToEntityPanel + Index: topia/src/java/org/codelutin/topia/generators/ui/swing/UIModelToUISwingGenerator.java diff -u topia/src/java/org/codelutin/topia/generators/ui/swing/UIModelToUISwingGenerator.java:1.3 topia/src/java/org/codelutin/topia/generators/ui/swing/UIModelToUISwingGenerator.java:1.4 --- topia/src/java/org/codelutin/topia/generators/ui/swing/UIModelToUISwingGenerator.java:1.3 Wed Sep 8 15:47:17 2004 +++ topia/src/java/org/codelutin/topia/generators/ui/swing/UIModelToUISwingGenerator.java Fri Sep 10 15:37:35 2004 @@ -23,9 +23,9 @@ * * @author Benjamin Poussin * Copyright Code Lutin -* @version $Revision: 1.3 $ +* @version $Revision: 1.4 $ * -* Mise a jour: $Date: 2004/09/08 15:47:17 $ +* Mise a jour: $Date: 2004/09/10 15:37:35 $ * par : $Author: mazelier $ */ @@ -481,19 +481,25 @@ for(Iterator i=object.getChildren().iterator(); i.hasNext();){ // recuperation de l'objet de l'enfant UIModelChild child = (UIModelChild) i.next(); - UIModelObject objectChild = (UIModelObject) child.getObject(); + System.out.println("child " + child); + System.out.println("constraint "+ child.getConstraint()); + if(child.getConstraint()!=null){ + // recuperation de la constrainte pour cet objet + Object objectConstraint = child.getConstraint().getValue(); - // recuperation de la constrainte pour cet objet - Object objectConstraint = child.getConstraint().getValue(); - - if (objectConstraint instanceof UIModelObject) { - UIModelObject constraint = (UIModelObject)objectConstraint; + if (objectConstraint instanceof UIModelObject) { + UIModelObject constraint = (UIModelObject)objectConstraint; /*{ constraints.add(}*/generateInstanciationObject(output, constraint);/*{); }*/ - }else if (objectConstraint instanceof String) { + }else if (objectConstraint instanceof String) { +/*{ + constraints.add(<%=child.getConstraint().getStringValue()%>); +}*/ + } + }else{ /*{ - constraints.add(<%=objectChild.getConstraint().getStringValue()%>); + constraints.add(null); }*/ } }