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 :

[Plugin] Réutiliser org.eclipse.ui.console


Sujet :

Eclipse Platform

  1. #1
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 2
    Points : 2
    Points
    2
    Par défaut [Plugin] Réutiliser org.eclipse.ui.console
    Bonjour,

    Je développe un plugin pour eclipse.
    Pour cela je doit afficher dans une view des composants graphiques (SWT, draw2D).
    Je doit également gérer plusieurs sessions (donc un affichage different par session). J'aimerais pour cela me baser sur le plugin org.eclipse.ui.console qui gère les differentes consoles du worbench. Ceci permettrait de passer facilement d'une session à une autre (par les onglets).
    Hors dans les consoles seul du text est affiché.

    Pensez-vous que ce soit une bonne idée de réutiliser ce plugin ?
    Si oui, quelles seraient les principales modifs à effectuer ?
    - Remplacer les classes TextConsole, IOConsole, MessageConsole par ma propre classe MyConsole (qui implementerait AbstractConsole) ?
    - Remplacer la classe TextConsolePage par MyConsolePage ?
    - Ne pas utiliser un viewer JFace (TextConsoleViewer) ?

    Si vous pouviez me donner quelques pistes ou conseils.

    Merci.

  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
    Je ne saisis pas bien tes intentions. Tu peux faire afficher des composants graphiques dans un view normale org.eclipse.ui.view. Les perspectives seraient peut-être mieux adaptées à la gestions de plusieurs sessions.

    Pour ce qui est de la console:

    Tu dois créer une console comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    
    import org.eclipse.ui.console.MessageConsole;
    import org.eclipse.ui.console.MessageConsoleStream;
     
    
    publicclass DebugConsole extends MessageConsole {
     
    
     
    
    private MessageConsoleStream inMessageStream;
    public DebugConsole() {
    s
    uper("Debug Console", null);
    //Redirect the output inMessageStream = newMessageStream(); System.setOut(new PrintStream(inMessageStream));
    }
    Tu l'ajoutes à ta perspective comme ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    
    import org.eclipse.ui.console.IConsoleConstants;
     
    publicvoid createInitialLayout(IPageLayout layout) {
     
    
    
    layout.addView(IConsoleConstants.ID_CONSOLE_VIEW);
    }
    Ma console redirige la sortie standard, tout ce qui est affiché par System.out.println().

    Tu ajoutes ta console dans les consoles du workbench comme ceci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    
    ConsolePlugin.getDefault().getConsoleManager().addConsoles( new IConsole[] { new DebugConsole() } );
    
    L'exemple est valide pour une application RCP.
    RCP rulez!

  3. #3
    Candidat au Club
    Inscrit en
    Mai 2006
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Mai 2006
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Jean Philippe, merci pour ta reponse.

    En fait ce que je souhaite faire c'est, au sein d'une même perspective, pouvoir afficher plusieurs contenus (un seul à la fois) dans une même vue. Et passer d'un contenu à l'autre en choisissant par exemple le contenu souhaité dans un menu.

    Il me semblait que ce qui était fais pour la console dans eclipse pouvait me reservir. Cependant seul du texte est affiché et moi je souhaiterai afficher des composants graphiques.

    Je voulais donc simplement savoir si il vallait mieux réutiliser le plug-in org.eclipse.ui.console en apportant les modif nécessaires ou alors repartir de zéro (ou presque); par exemple en étendant la classe PageBookView.

    Merci.

  4. #4
    Membre du Club Avatar de daronmaster
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    67
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 67
    Points : 56
    Points
    56
    Par défaut
    Bonjour,

    Je sais que ça fait longtemps maintenant que ce post existe mais je ne vois visiblement aucune solution d'apportée.

    Et vu que le sujet m'interesse, est-ce que quelqu'un aurait une solution à apporter ?

    Est-il possible d'ajouter des composants graphiques dans une vue qui étend MessageConsole comme le fait la vue "Error Log" ?

    Ou bien est-il possible d'étendre la vue "Error Log" afin de changer son comprtement et créer ma propre gestion d'affichage ?

    Merci
    Tchû

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 30/03/2012, 10h33
  2. Réponses: 2
    Dernier message: 22/02/2010, 14h29
  3. Réponses: 2
    Dernier message: 10/10/2009, 17h59
  4. Erreur EMF et plugins org.eclipse.core.runtime.Path
    Par abderahime_13 dans le forum Eclipse Java
    Réponses: 8
    Dernier message: 11/04/2008, 17h27
  5. [Eclipse 3.1][Plugin] Rediriger sortie vers la console
    Par petitpepito dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 18/01/2006, 23h37

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