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 Platform Discussion :

[RCP] Comment débuter?


Sujet :

Eclipse Platform

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 65
    Points : 26
    Points
    26
    Par défaut [RCP] Comment débuter?
    Bonjour,
    Après quelques recherches qui ne m'ont pas beaucoup aidé, je me décide à poster ici.
    En fait, je suis actuellement en stage et on m'a confié une tâche à réaliser pour vendredi prochain. Je dois donc faire une version RCP d'une application qui existe déjà et a été développée sous VB. Enfin, je dois surtout reproduire l'aspect graphique en introduisant des données brutes plutôt que des accès à la base de données. Cette appli RCP servira surtout à présenter au client l'aspect graphique de la chose.

    Le problème est que je n'ai jamais touché au RCP. J'ai lu quelques docs depuis vendredi (depuis qu'on m'a confié ce boulot en fait) et j'en ai retenu quelques trucs. Par contre, je ne sais absolument pas comment commencer mon application.

    Comment créer une appli RCP? Comment réaliser mon interface graphique en SWT? Comment lancer une appli RCP?

    Bref, je suis un peu perdu. Est-ce que quelqu'un connaitrait des bons tutoriaux ou pourrait même peut-être m'aider ici directement pour me permettre de bien débuter et ne pas perdre trop de temps (je n'en ai déjà pas beaucoup^^)?

    Voilà, merci beaucoup d'avance!
    Tom

  2. #2
    Membre averti Avatar de Jean-Philippe Shields
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    278
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2005
    Messages : 278
    Points : 340
    Points
    340
    Par défaut
    Tu dois aller sur le site http://www.eclipse.org/articles/ et chercher les mentions Rich client Platform (RCP). Il y a trois très bon articles. D'un autre côté tu peux aussi générer des exemples à partir d'Eclipse. New -> projects -> plugin project. Sur la 2e page du wizard tu dois spécifier oui à la dernière question en bas : Would you like to create a Rich client application -> Yes. Après tu choisi le template qui te convient. Bonne chance.
    RCP rulez!

  3. #3
    Membre éprouvé
    Avatar de octal
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    441
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 441
    Points : 957
    Points
    957
    Par défaut
    bonjour,
    c'est pas pour vous décourrager mais franchement pour comprendre le fonctionnement de RCP (à mon avis et ce n'est qu'un avis), meme pour un truc aussi simple, il vous faudra apprendre et comprendre les élément suivants:
    1- SWT
    2- JFace
    3- la plateforme RCP d'éclipse.
    et tout cela suppose une bonne connaissance de Java (et je dirais même des principaux design patterns).
    Tout cela en qq jours, c mission quazi-impossible.

    Vous avez de toute les facons le livre "Eclpse RCP" de Jeff McAffer et Jean-Michel Lemieux

    Bon courage et bonne chance.
    http://www.pocketmt.com GLCD Font Creator home site.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    D'accord, Octal, je vais voir ce que je peux faire!

    Merci pour les conseils et tutos en tout cas. J'ai commencé les tutos donnés par Jean-Philippe Shields. J'ai donc pu créer ma première appli RCP qui m'ouvre simplement une fenêtre Hello World.

    Je voulais maintenant essayer de créer une interface graphique simple, en ajoutant des composants petit à petit. Mais je bloque sur un soucis dès le départ. Peut-être pourrez-vous m'aider?

    En fait, si j'ai bien compris, l'interface graphique se décrit dans le fichier Perspective.java, c'est bien ça? Dans ce fichier, c'est la fonction createInitialLayout qui doit être modifiée, non? Je veux pour l'instant créer un widget Group, dans lequel j'insérerai des labels et autres composants. Mais j'ai un soucis. Pour créer ce Group, j'ai besoin de passer au constructeur un objet de type Composit qui est le parent de ce nouvel objet Group. Mais je ne sais pas du tout quoi lui passer. Est-ce que quelqu'un pourrait m'aider?

    Merci beaucoup d'avance!
    Tom

  5. #5
    Membre régulier Avatar de Rocket
    Profil pro
    Inscrit en
    Février 2003
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 72
    Points : 82
    Points
    82
    Par défaut
    Bonjour,

    Pour tout ce qui est interface graphique, je te conseille de télécharger VE et ces 2 librairies qui sont GEF et EMF. Surtout fais attention à ta version d'Eclipse pour télécharger la bonne version de VE.

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Merci beaucoup, je pense que ça pourra beaucoup m'aider. Par contre, lorsque je suis les étapes d'installation, j'ai une erreur qui me dit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Build Path contains duplicate entry : C:eclipse/plugins/org.eclipse.swt.win32.win32.x86_3.1.2.jar for project essai
    au moment où je veux ajouter la librairie SWT au Build Path du projet. Quelqu'un pourrait m'aider? Merci beaucoup d'avance! Je commence à désespérer là^^...

  7. #7
    Membre régulier Avatar de Rocket
    Profil pro
    Inscrit en
    Février 2003
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 72
    Points : 82
    Points
    82
    Par défaut
    N'aurais tu pas ajouté cette librairie seule à ton projet puis ensuite essayé d'ajouter toutes les librairies de SWT ?

    Clic droit sur le projet, buil path -> configure path onglet librairie

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Merci Rocket! En fait, la librairie était déjà intégrée. Quel âne!

    Maintenant, je peux donc réaliser des interfaces graphiques simplement en SWT avec VE. Mais j'ai (bien sûr^^) un nouveau soucis. En fait, en utilisant VE, je suis obligé de créer une autre classe (que j'ai appelée CVQC, du nom de mon projet). Donc, dans cette classe, j'ai mon interface graphique, longue mais simple à réaliser. Le problème est que quand je lance mon appli RCP, ce n'est bien sûr pas ma classe CVQC qui est affichée mais une fenêter vierge correspondant à mon fichier ApplicationWorkbenchWindowAdvisor.java.

    Y a-t-il un moyen pour lier les deux? Je veux dire lancer mon appli RCP normalement mais que ça m'affiche l'interface définie dans le fichier CVQC.java?

    Merci beaucoup d'avance... Je suis mal barré pour terminer pour vendredi, moi...

  9. #9
    Membre régulier Avatar de Rocket
    Profil pro
    Inscrit en
    Février 2003
    Messages
    72
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2003
    Messages : 72
    Points : 82
    Points
    82
    Par défaut
    En fait, je ne suis pas arrivé là encore ...

    Par contre si qlqu'un pouvait répondre cela m'intéresse aussi.

  10. #10
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    lol...

    Bon, je vois que je ne suis pas le seul à faire ça donc d'autres ont sûrement déjà essayé et réussi. Espérons que quelqu'un passe par ici rapidement!

    Merci d'avance!

  11. #11
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Personne ne sait comment "mixer" ces deux outils?

  12. #12
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 390
    Points : 432
    Points
    432
    Par défaut
    Bon je vais essayé d'etre clair et exhaustif, ce n'est pas toujours evident.

    Une application RCP comprend plusieurs classe principal :

    ApplicationWorkbenchWindowAdvisor.java sert à mettre en page ton application (déscativer des barres, remodeler entièrement l'apparence de eclipse ...). Tu peux laisser cette classe par défault, tu pourras voir plus tard comment elle marche. Ce n'est pas l'objet de tno problème.

    Et tu as une classe (ou plusieurs) qui etant de ViewPart. Cette classe définie une vue (un onglet dans eclipse si tu préfère) Dans cette classe tu as une méthode qui s'appelle createPartControl(Composite parent). C'est cette méthode qui sera appelée à la création de ta vue. C'est ici que tu dois définir l'aspect de ta vue.

    Autrement dit, je suppose que tu as ta classe CVQC.java qui étend de composite et qui définit ton interface graphique. Pour l'afficher dans le plugin, il te suffit d'écrire la méthode createPartControl de cette façon et ca devrait marcher.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public void createPartControl(Composite parent) {
    parent.setLayout(new FillLayout());
     
    CVQC ihm = new CVQC(parent,SWT.NONE);
    }
    Enfin il y a une classe dont je ne me souviens plus l'architecture, qui définit la perspective. Ca permet de définir l'emplacement des différentes vues d'un plugin dans un perspective. C'est également ici que tu desactive l'éditeur si tu n'en veux pas ...

    Voila j'espere t'avoir fait avancer

    ps : je te conseil d'ouvrir l'exemple de client mail inclut dans Eclipse, il contient si mes souvenir sont bons, une perspective contenant 2 vues. Ca te permettra d'avoir une bonne vision d'ensemble de comment tout ça fonctionne.

    Bonne chance
    a+
    Mess with the best, die like the rest!

  13. #13
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 65
    Points : 26
    Points
    26
    Par défaut


    Je n'ai pas de classe qui étende de ViewPart et qui possède une méthode createPartControl. Et ma classe CVQC (générée par VE) n'étend pas Composite.



    Je suis perdu... Bon, je retourne chercher encore. Si quelqu'un d'autre a une idée, je suis bien sûr preneur!

  14. #14
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 390
    Points : 432
    Points
    432
    Par défaut
    Si je trouve le temps, je t'enverrai un exemple simple mais détaillé et qui regroupe tout ce dont tu as besoin.

    Mais faut que je trouve le temps et c'est pas gagné alors continue à chercher
    Mess with the best, die like the rest!

  15. #15
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Ok, merci. Je dois rendre mon boulot demain normalement. Je crois que je suis un peu mal parti, là...

  16. #16
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 390
    Points : 432
    Points
    432
    Par défaut
    Voila je t'ai fait un exemple.
    Tu le trouvera ici (ne clique pas sur le lien, fait "Enregistrer la cible sous").
    Pour le faire marcher :
    1- Decompresse le fichier dans ton workspace
    2- Importe le projet dans Eclipse
    3- Ouvre le fichier CVQC.product dans Eclipse
    4- Clique sur "Launch the product"
    5- Ca marche (enfin j'espère)

    Si tu ne t'en sors pas avec ca, ben je peux plus grand chose

    J'y ai mis qq commentaire, parcous les qq classe et remplace ce qu'il y a a remplacer.

    J'espere que tu l'auras à temps

    Bonne chance
    a+
    Mess with the best, die like the rest!

  17. #17
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    Euh... C'est super sympa, j'espère que ça pourra m'aider... Mais là, l'archive ne marche pas. Je ne peux pas l'ouvrir. Ca me dit qu'elle n'a pas un format reconnu ou qu'elle est endommagée...

  18. #18
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 390
    Points : 432
    Points
    432
    Par défaut
    Visiblement cl'hebergeur qui deconne, parce que quand je le telecharge en ftp, ca marche. Donne moi une addresse ou je peux t'envoyer l'archive.
    Mess with the best, die like the rest!

  19. #19
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 65
    Points : 26
    Points
    26
    Par défaut
    si tu pouvais me l'envoyer à thomas.kerneis [@] gmail [point] com

    Merci beaucoup pour ton aide, en tout cas!

  20. #20
    Membre averti
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    390
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 390
    Points : 432
    Points
    432
    Par défaut
    Archive expédiée ...
    Mess with the best, die like the rest!

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [FLASH] Comment débuter ?
    Par kevinf dans le forum Flash
    Réponses: 3
    Dernier message: 20/10/2005, 11h30
  2. [GridBagLayout] Comment débuter avec ce layout
    Par Bighobbit dans le forum Débuter
    Réponses: 12
    Dernier message: 28/09/2005, 17h13
  3. Comment débuter en prog quand on est aveugle
    Par Rataf dans le forum Débuter
    Réponses: 2
    Dernier message: 04/04/2003, 22h13
  4. Comment débuter en programmation ?
    Par Marc Lussac dans le forum Débuter
    Réponses: 0
    Dernier message: 08/04/2002, 11h29

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