制作我自己的Eclipse Intro页面

时间:2009-07-13 09:09:00

标签: eclipse plugins product

我在创建自己的Eclipse Intro Page(as shown here)时遇到了困难。

我的产品ID似乎有些问题,但我不知道如何获取产品ID,我试图扩展org.eclipse.core.runtime.products但是当它问我要注册哪个应用程序时我不知道该回答什么,它似乎是问题的一部分...任何人都有任何想法?

2 个答案:

答案 0 :(得分:5)

这是我最终做的......

public class IntroPart implements IIntroPart {

 //VITAL : you must implement
    public void createPartControl(Composite container) {
        Composite outerContainer = new Composite(container, SWT.NONE);
        GridLayout gridLayout = new GridLayout();
        outerContainer.setLayout(gridLayout);
        outerContainer.setBackground(outerContainer.getDisplay()
                .getSystemColor(SWT.COLOR_TITLE_BACKGROUND_GRADIENT));
        Label label = new Label(outerContainer, SWT.CENTER);
        label.setText("WELCOME TO ECLIPSE");
        GridData gd = new GridData(GridData.GRAB_HORIZONTAL
                | GridData.GRAB_VERTICAL);
        gd.horizontalAlignment = GridData.CENTER;
        gd.verticalAlignment = GridData.CENTER;
        label.setLayoutData(gd);
        label.setBackground(outerContainer.getDisplay().getSystemColor(
                SWT.COLOR_TITLE_BACKGROUND_GRADIENT));
    }

 //VITAL : you must implement
    public String getTitle() {
        return "My Title";
    }

 //VITAL : you must implement
    public Image getTitleImage() {
        return new Image(Display.getCurrent(), this.getClass()
                .getResourceAsStream("splash.bmp"));
    }

    public void addPropertyListener(IPropertyListener listener) {
         //NON-VITAL : implement accordingly to your needs
    }

    public void dispose() {
         //NON-VITAL : implement accordingly to your needs
    }

    public IIntroSite getIntroSite() {
         //NON-VITAL : implement accordingly to your needs
        return null;
    }

    public void init(IIntroSite site, IMemento memento)
            throws PartInitException {
         //NON-VITAL : implement accordingly to your needs
    }

    public void removePropertyListener(IPropertyListener listener) {
         //NON-VITAL : implement accordingly to your needs
    }

    public void saveState(IMemento memento) {
         //NON-VITAL : implement accordingly to your needs
    }

    public void setFocus() {
         //NON-VITAL : implement accordingly to your needs
    }

    public void standbyStateChanged(boolean standby) {
         //NON-VITAL : implement accordingly to your needs
    }

    public Object getAdapter(Class adapter) {
         //NON-VITAL : implement accordingly to your needs
        return null;
    }
}

使用的图片是我的图片,当您显示欢迎页面时它会作为标签图标...

奇怪的是,标题和图像没有默认值......但是......这就是生活。

希望它能帮助^^

答案 1 :(得分:1)

您是否需要定义新的ID,或者您只想要一个仅显示您的内容的最小配置?

如果是后者,您是否看过同一帮助的后一部分? Defining a minimal intro configuration,建议使用org.eclipse.intro.minimal,以便只显示您的内容。