Ignore:
Timestamp:
05/10/07 15:23:33 (17 years ago)
Author:
x07vasba
Message:
 
Location:
trunk/org.modelica.uml.sysml.diagram2/src/org/modelica/uml/sysml/diagram2
Files:
3 added
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/org.modelica.uml.sysml.diagram2/src/org/modelica/uml/sysml/diagram2/part/SysmlInheritanceDiagramAction.java

    r504 r505  
    55import java.util.ArrayList;
    66import java.util.Iterator;
     7import java.util.Collection;
    78
    89import org.eclipse.emf.ecore.EObject;
    910import org.eclipse.emf.ecore.EClass;
    1011import org.eclipse.emf.ecore.EStructuralFeature;
     12import org.eclipse.emf.transaction.TransactionalEditingDomain;
    1113
    1214import org.eclipse.core.runtime.IProgressMonitor;
     
    1517import org.eclipse.jface.viewers.TextCellEditor;
    1618import org.eclipse.ui.IEditorPart;
     19import org.eclipse.ui.views.properties.IPropertySource;
    1720import org.eclipse.uml2.uml.UMLPackage;
    1821import org.modelica.mdt.core.CompilerProxy;
    1922import org.modelica.mdt.core.ICompilerResult;
     23import org.modelica.mdt.core.IModelicaClass;
    2024import org.modelica.mdt.core.ModelicaParserException;
    2125import org.modelica.mdt.core.compiler.ModelicaParser;
    2226import org.modelica.mdt.core.compiler.UnexpectedReplyException;
     27import org.modelica.mdt.core.compiler.ElementInfo;
     28
     29import org.modelica.mdt.internal.core.InnerClass;
     30
    2331import org.eclipse.gef.EditPart;
    2432
     
    2836import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
    2937import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
     38
     39import org.eclipse.gmf.runtime.emf.type.core.commands.CreateElementCommand;
     40
    3041//import org.eclipse.gmf.runtime.diagram.ui.actions.;
    3142import org.eclipse.gmf.runtime.diagram.ui.editparts.DiagramEditPart;
     
    4354import org.eclipse.gmf.runtime.emf.type.core.IElementType;
    4455import org.eclipse.gmf.runtime.emf.type.core.IHintedType;
     56import org.eclipse.gmf.runtime.emf.ui.properties.commands.SetModelPropertyValueCommand;
    4557import org.eclipse.gmf.runtime.draw2d.ui.figures.WrapLabel;
    4658import org.eclipse.gmf.runtime.common.ui.services.parser.IParser;
     59import org.eclipse.gmf.runtime.common.ui.services.properties.extended.PropertySource;
    4760
    4861import org.eclipse.gef.commands.Command;
     
    5568import org.modelica.uml.sysml.diagram2.edit.parts.ModelicaClassEditPart.ClassFigure;
    5669import org.modelica.uml.sysml.diagram2.edit.parts.ModelicaClassName2EditPart;
     70import org.modelica.uml.sysml.diagram2.edit.parts.ModelicaEquationPropertyEditPart;
     71import org.modelica.uml.sysml.diagram2.edit.parts.ModelicaPropertyEditPart;
     72import org.modelica.uml.sysml.diagram2.edit.parts.ModelicaClassParametersEditPart;
     73import org.modelica.uml.sysml.diagram2.edit.parts.ModelicaProperty3EditPart;
     74
     75import org.modelica.uml.sysml.diagram2.util.SetPropertiesUtil;
     76
     77import org.modelica.uml.sysml.impl.ModelicaClassImpl;
     78
     79import org.modelica.uml.sysml.AccessKind;
     80import org.modelica.uml.sysml.SysmlPackage;
    5781
    5882public class SysmlInheritanceDiagramAction extends Action{
     
    89113            if(Boolean.parseBoolean(result[0].trim()) == true){
    90114               
    91                 result =new String[]{"Modelica"};
     115                result =new String[]{"Modelica.Blocks"};
    92116            }
    93117        }
     
    105129        activeEditor = part;
    106130
    107         if(activeEditor instanceof FileDiagramEditor)
     131        if(activeEditor instanceof FileDiagramEditor){
    108132            editPart = ((FileDiagramEditor) activeEditor).getDiagramEditPart();
    109     }
    110 
    111     public void generateInheritanceDiagramFromFile(String fileName){
     133           
     134        }
     135    }
     136
     137    protected void generateInheritanceDiagramFromFile(String fileName){
    112138        String[] fileClasses = {""};
    113139        String command = "loadFileInteractive(\""+ fileName+"\")";
     
    131157
    132158
    133     public void generateInheritanceDiagramFromClasses(String[] classNames){
     159    protected void generateInheritanceDiagramFromClasses(String[] classNames){
    134160       
    135161       
     
    172198            if(createdEditPart != null){
    173199               
    174                 setClassName(createdEditPart,classes[i]);
     200                SetPropertiesUtil.setClassName(createdEditPart,classes[i]);
     201                TransactionalEditingDomain editingDomain = createdEditPart.getEditingDomain();
     202               
     203                ModelicaPropertyEditPart parameterEDP = SetPropertiesUtil.addParameter(createdEditPart, 0, "");
     204                ModelicaProperty3EditPart variableEDP = SetPropertiesUtil.addVariable(createdEditPart);
     205                ModelicaEquationPropertyEditPart equationEDP =
     206                    SetPropertiesUtil.addEquation(createdEditPart);
     207                SetPropertiesUtil.setEquationProperty(editingDomain, equationEDP, "er=5");
     208               
     209                InnerClass classContent = null;
     210               
     211                try{
     212                classContent = new InnerClass(null,classes[i],IModelicaClass.Restriction.parse(classType),null);
     213                }
     214                catch(Exception e){
     215                   
     216                }
     217               
     218                if(classContent != null){
     219                   
     220                    try{
     221                    classContent.getChildren();
     222                    classContent.getImports();
     223                   
     224                    }
     225                    catch(Exception e){
     226                       
     227                    }
     228                   
     229                }
     230               
     231                LinkedList<ElementInfo> classInfo = null;
     232               
     233                try{
     234                classInfo= (LinkedList<ElementInfo>)CompilerProxy.getElements(classes[i]);
     235                }
     236                catch(Exception e){
     237                   
     238                }
     239               
     240               
     241               
     242                SetPropertiesUtil.setModelProperties(editingDomain,
     243                        parameterEDP,
     244                        SetPropertiesUtil.ProtectedAcces,
     245                        5,
     246                        "-345",
     247                        "out",
     248                        true,
     249                        "test",
     250                        "",
     251                        (Object)0,
     252                        "constant");
     253               
     254               
     255               
     256            //  SetPropertiesUtil.setAccessFeatureValue(parameterEDP, SetPropertiesUtil.ProtectedAcces);
    175257               
    176258                createdNode = new CustomNode(classType.trim(),classes[i],createdEditPart);
     
    219301        }
    220302
    221     }
     303    }   
    222304   
    223     protected void setClassName(ModelicaClassEditPart partToEdit, String newName){
    224 
    225         //Here we change the name of the displayed figure
    226 
    227         ModelicaClassName2EditPart nameEditPart;
    228 
    229         nameEditPart = (ModelicaClassName2EditPart)partToEdit.getPrimaryChildEditPart();
    230         if(nameEditPart != null){
    231 
    232             EObject elementToEdit = ((NodeImpl)partToEdit.getModel()).getElement();
    233 
    234             EStructuralFeature nameFeature = UMLPackage.eINSTANCE.getNamedElement().getEStructuralFeature(
    235                     "name");
    236 
    237 
    238 
    239             SetRequest setNameRequest = new SetRequest(elementToEdit, nameFeature , newName);
    240             SetValueCommand setNameCommand = new SetValueCommand(setNameRequest);
    241 
    242             try{
    243                 setNameCommand.execute(new NullProgressMonitor(), null);
    244             }
    245             catch(Exception e){
    246 
    247             }
    248 
    249         }
    250 
    251 
    252        
    253     }
    254 
    255305    protected void createInheritanceConnections(){
    256306       
     
    401451        else return editPart;
    402452    }
    403    
     453       
    404454    protected EditPart getEditPart(String name){
    405455        Iterator listIterator = createdNodes.iterator();
Note: See TracChangeset for help on using the changeset viewer.