Rita
Rita

Reputation: 223

Update property view on click of project explorer, eclipse plugin

I have created a custom project in project explorer. Whenever I click on custom project folder currently it shows default property sheet but I want to customize this property sheet. I have gone through the tabbed property example but I am not able customize it. Please can anyone provide me some sample examples or code for same.

Thanks.

Upvotes: 0

Views: 1429

Answers (1)

mantrid
mantrid

Reputation: 2840

how to connect that property view to an editor or project explorer

model classes for you custom project and its folders should implement IAdaptable interface and return an object implementing IPropertySource that describes given element. it will be passed to properties view automatically when you click on the element.

alternativelly, you can avoid implementing IAdaptable and create an IAdapterFactory that converts an instance of you project/folder element into corresponding IPropertySoure but then you have to make Eclipse framework aware of your IAdapterFactory implementation.

public class MyProjectAdapterFactory implements IAdapterFactory {
@Override
public Object getAdapter(Object adaptableObject, Class adapterType) {
    if (adapterType== IPropertySource.class && adaptableObject instanceof MyProject){
        return new MyProjectPropertySource((MyProject) adaptableObject);
    }

    return null;
}

@Override
public Class[] getAdapterList() {
    return new Class[] { IPropertySource.class };
}

}

register it in you plugin.xml file:

<extension point="org.eclipse.core.runtime.adapters">
  <factory adaptableType="my.example.MyProject" class="my.example.MyProjectAdapterFactory">
     <adapter type="org.eclipse.ui.views.properties.IPropertySource"/>
  </factory>
</extension>

look at the full tutorial: http://www.vogella.de/articles/EclipsePlugIn/article.html

Upvotes: 3

Related Questions