예제 #1
0
  /**
   * La commande renvoie toujours true Ajoute le nouveau lien créé entre le composant et le produit
   *
   * @return true
   */
  public boolean executer() {
    LienEdge lienComp = new LienEdge(cellS, cellD, pointsAncrage);

    AllAttribute.put(lienComp, lienComp.getEdgeAttribute());

    Vector vecObj = new Vector();

    if (!diagramme.getModel().contains(cellS)) {
      vecObj.add(cellS);
    }
    if (!diagramme.getModel().contains(cellD)) {
      vecObj.add(cellD);
    }

    ((IeppCell) cellS).ajoutLien(lienComp);
    ((IeppCell) cellD).ajoutLien(lienComp);
    // On declare les sources et les destinations des liens
    lienComp.setSourceEdge((IeppCell) cellS);
    lienComp.setDestination((IeppCell) cellD);

    vecObj.add(lienComp);

    diagramme.ajouterLien(lienComp);

    ConnectionSet cs = new ConnectionSet(lienComp, portS, portD);

    diagramme.getModel().insert(vecObj.toArray(), AllAttribute, null, null, null);
    diagramme.getModel().insert(null, null, cs, null, null);

    diagramme.show();

    return true;
  }
예제 #2
0
 /**
  * Construction d'une commande permettant de déplacer un élément
  *
  * @param d, diagramme sur lequel on veut déplacer l'élément
  * @param v, propriétés du déplacement à effectuer
  */
 public CDeplacerElement(VueDPGraphe d, Vecteur v) {
   // garder un lien vers le diagramme
   this.diagramme = d;
   // initialiser les éléments à déplacer
   this.selection = new Vector();
   Enumeration e = diagramme.selectedElements();
   // parcourir la liste des éléments sélectionnés
   while (e.hasMoreElements()) {
     // ajouter chacun de ces éléments dans la liste des éléments à déplacer
     selection.addElement(e.nextElement());
   }
   // récupérer les propriétés du déplacement
   this.translation = v;
 }