2010-02-26 6 views
2

Je me demande si le code permettant de créer les boutons affichés sur la page "Bienvenue" d'Eclipse peut être trouvé quelque part. Lorsque vous créez un nouvel espace de travail dans Eclipse, une page "Bienvenue" s'affiche au tout début. La page montre différents types de boutons comme "Quoi de neuf", "Didacticiels", ...Création d'une éclipse dynamique Bouton "Bienvenue" de la page

Je souhaite utiliser ce type de boutons, mais je n'ai pas trouvé le code source dans eclipse.

Est-ce que quelqu'un sait comment créer un tel bouton, avec des composites masqués et des composants dynamiques.

Répondre

3

Vous pouvez explorer la classe org.eclipse.ui.internal.WorkbenchIntroManager, en charge de la construction d'un ViewIntroAdapterPart, sur la base des informations trouvées dans le ViewIntroAdapterSite

De getViewIntroAdapterPart():

* @return the <code>ViewIntroAdapterPart</code> for this workbench, <code>null</code> if it 
* cannot be found. 
*/ 
/*package*/ViewIntroAdapterPart getViewIntroAdapterPart() { 
    IWorkbenchWindow[] windows = this.workbench.getWorkbenchWindows(); 
    for (int i = 0; i < windows.length; i++) { 
    IWorkbenchWindow window = windows[i]; 
    WorkbenchPage page = (WorkbenchPage) window.getActivePage(); 
    if (page == null) { 
     continue; 
    } 
    IPerspectiveDescriptor[] perspDescs = page.getOpenPerspectives(); 
    for (int j = 0; j < perspDescs.length; j++) { 
     IPerspectiveDescriptor descriptor = perspDescs[j]; 
     IViewReference reference = page.findPerspective(descriptor) 
     .findView(IIntroConstants.INTRO_VIEW_ID); 
     if (reference != null) { 
     IViewPart part = reference.getView(false); 
     if (part != null && part instanceof ViewIntroAdapterPart) { 
      return (ViewIntroAdapterPart) part; 
     } 
     } 
    } 
    } 
    return null; 
} 

Chaque perspective contribue à la IntroPart, sur la base son IPerspectiveDescriptor, s'il comprend un ViewIntroAdapterPart. Le ViewPart créera IIntroPart, qui contient les éléments visibles graphiques.

+0

voir aussi http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/ua_intro_hello_world.htm (pour une introduction, mais pas directement pour le bouton – VonC

+0

Joli lien, merci. Mais je ne veux pas contribuer un bouton à la page welcone. Je veux utiliser le bouton, affiché dans la page d'accueil, dans ma propre vue. je veux le code du bouton;) –

+0

@Markus: ... Je pensais que vous diriez que;) Je me cherche toujours le code exact. Je voulais seulement donner un point de départ. – VonC