IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Eclipse Modeling Discussion :

Modifier une figure avec un EditPart


Sujet :

Eclipse Modeling

  1. #1
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2008
    Messages
    1 190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2008
    Messages : 1 190
    Points : 2 657
    Points
    2 657
    Par défaut Modifier une figure avec un EditPart
    Bonjour,

    J'ai une application RCP et j'utilise des modèles GMF.

    Je souhaiterais, à partir d'un EditPart, modifier la figure de celui-ci (la position de l'objet par exemple).
    Je sais comment faire pour changer le modèle de l'EditPart, en passant avec un TransactionnalEditingDomain faire des requêtes de mise à jour.

    Quelqu'un saurait-il m'indiquer la procédure à suivre pour changer des valeurs de la figure ? Je cherche sans doute mal, mais je ne trouve pas de tutoriel dessus.

    Merci d'avance pour votre aide.

  2. #2
    BiM
    BiM est déconnecté
    Expert éminent sénior
    Avatar de BiM
    Femme Profil pro
    Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT
    Inscrit en
    Janvier 2005
    Messages
    7 796
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultante/Formatrice BIRT & Ingénieur Java/J2EE/GWT

    Informations forums :
    Inscription : Janvier 2005
    Messages : 7 796
    Points : 10 765
    Points
    10 765
    Par défaut
    Bonjour,

    J'utilise une vieille version mais peut être que ça peut t'aider.
    Tu overrides la méthode refreshVisuals() de ton EditPart, tu fais :
    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    super.refreshVisuals();
    Figure maFigure = getFigure();
    // Tu castes éventuellement ta figure vers autre chose
    // Tu agis sur ta figure

  3. #3
    Membre émérite
    Avatar de Mickael_Istria
    Homme Profil pro
    Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Inscrit en
    Juillet 2008
    Messages
    1 469
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Expert Eclipse IDE/RCP, pour Red Hat
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 469
    Points : 2 997
    Points
    2 997
    Par défaut
    Alors pour que tout cela soit bien transactionnel (et stocke dans ton fichier lors du Save), il ne faut pas utiliser directement les API GEF, qui ne sont pas persistees.

    Le process generique pour interagir avec le diagramme, certes non trivial est:
    1. Creer une "Request", dans ton cas, une "ChangeBoundsRequest"
    2. Transformer ta Reqest en commande avec GraphicalEditPart.getCommand(). A priori, la commande sera ici une SetBoundsCommand(), mais au final, ca t'importe peu.
    3. Donner ta commande a ton EditingDomain

    Ce process peut sombler complique, mais une fois que tu l'as compris, tu fais tout de la meme maniere: Request -> Command -> Execute.
    Il permet notamment de pouvoir associer plusieurs requests sur les operation d'UI telles qu'un drag'n'drop et de changer l'action (la commande) en fonction de l'EditPart ciblee, tout en fournissant un feedback adapte a l'utilisateur.
    Pour du HTML, CSS, JavaScript, TypeScript, JSon, Yaml, Node... dans Eclipse IDE, installe Eclipse Wild Web Developer
    Pour du Rust dans Eclipse IDE, installe Eclipse Corrosion
    Follow me on twitter

Discussions similaires

  1. Modifier une ligne avec layout:collection
    Par imane_bennouna dans le forum Struts 1
    Réponses: 3
    Dernier message: 07/05/2007, 14h47
  2. Lire et modifier une table avec plusieurs TQuery
    Par Alyx² dans le forum Bases de données
    Réponses: 4
    Dernier message: 18/08/2006, 13h09
  3. [Dates] Modifier une date avec 'substr'
    Par R'SKaP dans le forum Langage
    Réponses: 4
    Dernier message: 01/06/2006, 12h40
  4. Dessiner une figure avec graphics.h
    Par Firas_tn dans le forum C
    Réponses: 2
    Dernier message: 29/03/2006, 20h33
  5. modifier une CBitmap avec du code
    Par kor6k dans le forum MFC
    Réponses: 4
    Dernier message: 04/12/2005, 15h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo