2010-02-26 3 views
2

이클립스 "환영"페이지에 표시된 단추를 생성하는 코드가 어딘가에 있는지 궁금합니다.동적 이클립스 "환영"페이지 버튼 만들기

이클립스에서 새 작업 공간을 만들면 시작 부분에 "환영"페이지가 표시됩니다. 페이지에 "새로운 내용", "자습서"와 같은 다른 유형의 단추가 표시됩니다 ...

이 단추를 사용하고 싶지만 이클립스 내부에서 소스 코드를 찾을 수 없습니다.

숨겨진 컴포지션과 다이 니믹 구성 요소를 사용하여 그러한 버튼을 만드는 방법을 아는 사람이 있습니까?

답변

3

당신이 시도하고 getViewIntroAdapterPart()부터 ViewIntroAdapterSite

에있는 정보를 기반으로 ViewIntroAdapterPart를 구축 담당의 org.eclipse.ui.internal.WorkbenchIntroManager 클래스를 둘러 볼 수 있습니다 :

* @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; 
} 

를 각각의 관점에 따라 IntroPart에 기여 그것의 IPerspectiveDescriptor, 포함하는 경우 ViewIntroAdapterPart.

ViewPart는 그래픽으로 보이는 요소를 포함하는 IIntroPart을 생성합니다.

+0

또한보십시오 http://help.eclipse.org/galileo/index.jsp?topic=/org.eclipse.platform.doc.isv/guide/ua_intro_hello_world.htm (소개를 위해, 그러나 단추를 위해 직접 아닙니다) – VonC

+0

좋은 링크, 고마워. 그러나 나는 welcone 페이지에 버튼을 기여하고 싶지 않습니다. 환영 페이지에 표시된 버튼을 내보기에 사용하고 싶습니다. 나는 버튼 코드를 원한다;) –

+0

@Markus : ... 나는 당신이 그것을 말할 것이라고 생각했다;) 나는 여전히 정확한 코드를 찾고있다. 나는 출발점을 알려주고 싶었다. – VonC