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 :

Accéder et étendre la vue navigator


Sujet :

Eclipse Platform

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 248
    Points : 119
    Points
    119
    Par défaut Accéder et étendre la vue navigator
    Salut !

    Je suis débutant en développement de plugin Eclipse.

    J'ai lu plusieurs des tutoriels disponibles mais je n'arrive toujours pas à savoir comment faire pour accéder au contenu de la vue "Navigator".
    J'aimerais que mon plugin puisse demander à cette vue quels sont les fichiers et/ou répertoires sélectionnés et, par la suite, j'aimerais pouvoir ajouter des actions dans le menu "right-click".

    Est ce que quelqu'un peut me guider un peu ?

    Merci !

  2. #2
    Membre expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Points : 3 919
    Points
    3 919
    Par défaut
    Salut,

    Pour répondre à ta première question (étendre les possibilités de la vue "Navigator") tu trouveras sûrement des infos dans ces 2 articles : articles Eclipsepedia et CNF.
    Sinon, pour contribuer à un menu (qu'il soit contextuel ou non), il te faut passer par le point d'extension : org.eclipse.ui.menus, tu vas ensuite définir une extension menuContribution. Dans cette extension, il te faut renseigner un locationURI qui sera l'emplacement de ce que tu vas définir ensuite (en fait, c'est l'emplacement de tes MenuItems, Menus, ou autre...). Ce locationURI, pour la vue navigator va correspondre à l'identifiant de la vue précédé du mot clé "popup" pour indiquer dans quel menu on veut placer ce qui suit, i.e. org.eclipse.ui.views.ResourceNavigator
    Tu auras donc :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <extension
          point="org.eclipse.ui.menus">
       <menuContribution
          locationURI="popup:org.eclipse.ui.views.ResourceNavigator?after=additions">
             ...
       </menuContribution>
    </extension>
    Le "after=additions" est un placement un peu plus "fin" de tes commandes dans le menu contextuel.

    Si tu as d'autres questions, n'hésite pas.
    Voilà, à+
    Gueritarish
    Pas de questions technique par MP, les forums sont là pour ça.

  3. #3
    Membre extrêmement actif Avatar de jojodu31
    Profil pro
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 814
    Points
    814
    Par défaut
    Bonjour,
    alors pour ajouter des actions à la vue Navigator tu trouveras tout ici. Bien qu'il soit préférable d'utiliser les commandes...

    Sinon pour récupérer la sélection de cette vue :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    private ISelectionListener mylistener = new ISelectionListener() {
            public void selectionChanged(IWorkbenchPart sourcepart, ISelection selection) {
            if (sourcepart.getClass() == ResourceNavigator.class &&
                selection instanceof IStructuredSelection) {
                doSomething(((IStructuredSelection) selection).toList());
                }
            }
        };
    tu trouveras les détails pour l'écoute du Workbench ici.

    a+,
    jojodu31

    [EDIT] à demi grilled par Gueritarish ...
    Heureux soient les fêlés, car ils laisseront passer la lumière.

    Mieux vaut fermer sa gueule et passer pour un con que l'ouvrir et ne laisser aucun doute à ce sujet.

    Cours et tutoriels pour apprendre Java , FAQ Java, et Forum Java

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 248
    Points : 119
    Points
    119
    Par défaut
    Merci pour vos réponses ! ca m'aide bien
    Je vais continuer à regarder les tutoriels que vous m'avez suggérer et essayer quelque truc et je vous reviens la dessus !

    Merci

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 248
    Points : 119
    Points
    119
    Par défaut
    Salut !
    Ca fonctionne très bien j'arrive à ajouter les commandes et mêmes à en ajouter dynamiquement.

    Est ce qu'il y'aurai un moyen de simplement accèder à la vue "navigator" et lui demander tout son contenu ? (tous les élements dans l'arbre de la vue "navigator")

    Merci.

  6. #6
    Membre expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Points : 3 919
    Points
    3 919
    Par défaut
    Salut,

    Pour accéder au contenu de la vue Navigator, tu as 2 solutions :
    - passer par l'instance de la classe ResourceNavigator, puis par le viewer de cette vue et enfin, récupérer son Input, i.e. :
    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    final IWorkbenchWindow activeWorkbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
    if (activeWorkbenchWindow != null) {
        final IWorkbenchPage activePage = activeWorkbenchWindow.getActivePage();
        if (activePage != null) {
            IViewPart navigatorView =
                    activePage.findView("org.eclipse.ui.views.ResourceNavigator");
            if (navigatorView instanceof ResourceNavigator) {
                StructuredViewer viewer = ((ResourceNavigator) navigatorView).getViewer();
                Object input = viewer.getInput();
            }
        }
    }
    - la deuxième solution consiste à inclure une dépendance vers org.eclipse.core.resources dans ton plug-in pour ainsi pouvoir appeler la classe ResourcePlugin:
    Code Java : Sélectionner tout - Visualiser dans une fenêtre à part
    ResourcePlugin.getWorkspace().getRoot();

    Voilà, à+
    Gueritarish

    P.S: le développement avec Eclipse platform, c'est sale! C'est plein de cambouis, et la meilleure façon d'y arriver c'est de plonger les doigts dans le code. Pour trouver ce que je viens de t'indiquer, j'ai regardé le code de la classe qui s'occupe de la vue Navigator...
    Pas de questions technique par MP, les forums sont là pour ça.

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 248
    Points : 119
    Points
    119
    Par défaut
    Citation Envoyé par Gueritarish Voir le message
    P.S: le développement avec Eclipse platform, c'est sale! C'est plein de cambouis, et la meilleure façon d'y arriver c'est de plonger les doigts dans le code. Pour trouver ce que je viens de t'indiquer, j'ai regardé le code de la classe qui s'occupe de la vue Navigator...
    Ah ben merci !
    mais comment t'as fais pour savoir que c'est org.eclipse.core.resources que tu devrais regarder ?
    Est ce qu'il y a une technique de savoir rapidement qu'elle sont les points d'extensions qu'on a besoin à part fouiller dans les fichiers Schema ?

  8. #8
    Membre averti Avatar de Aurelien Pupier
    Homme Profil pro
    Senior Software Engineer
    Inscrit en
    Décembre 2007
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Senior Software Engineer

    Informations forums :
    Inscription : Décembre 2007
    Messages : 278
    Points : 369
    Points
    369
    Par défaut
    Bonjour,

    un bon point d'entrée est d'utiliser le plugin spy:
    - pour les menus alt+shift+F2 : http://scratsh.wordpress.com/2009/06...spy-and-menus/
    - pour le reste alt+shift+F1
    Aurélien Pupier
    Eclipse GMF-Runtime Committer
    R&D Eclipse Engineer, Studio Project Leader
    BonitaSoft S.A.

  9. #9
    Membre expert
    Avatar de Gueritarish
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mai 2007
    Messages
    1 800
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2007
    Messages : 1 800
    Points : 3 919
    Points
    3 919
    Par défaut
    Citation Envoyé par Scratsh Voir le message
    Bonjour,

    un bon point d'entrée est d'utiliser le plugin spy:
    - pour les menus alt+shift+F2 : http://scratsh.wordpress.com/2009/06...spy-and-menus/
    - pour le reste alt+shift+F1
    Il est bon de préciser que le raccourci alt+shift+F2, pour le plug-in spy, ne marche qu'à partir d'Eclipse 3.5
    Pas de questions technique par MP, les forums sont là pour ça.

  10. #10
    Membre régulier
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    248
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations forums :
    Inscription : Septembre 2008
    Messages : 248
    Points : 119
    Points
    119
    Par défaut
    Merci beaucoup pour vos réponses !
    le plug-in spy est très utile !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Accéder aux variables de la vue depuis Zend_Layout
    Par vg33 dans le forum Zend Framework
    Réponses: 2
    Dernier message: 29/06/2008, 23h52
  2. Vue Navigator affichage erreur
    Par Tan dans le forum Eclipse Java
    Réponses: 0
    Dernier message: 04/12/2007, 09h36
  3. Réponses: 4
    Dernier message: 25/11/2007, 21h12
  4. [plugin]rafraichir la vue Navigator dans un plugin
    Par snoop dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 09/11/2007, 11h50
  5. [FireBird] Accéder à une vue via Excel
    Par Vonotar dans le forum Débuter
    Réponses: 1
    Dernier message: 07/12/2004, 09h31

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