
FIRST CREATE AN ECLIPSE PLUG IN PROJECT

CLICK ON NEXT BUTTON

CLICK ON FINISH BUTTON

CLICK ON PLUGIN.XML FILE

GO TO EXTENSIONS
CLICK ON ADD BUTTON AND SEARCH FOR ORG.ECLIPSE.UI.VIEWS EXTENSION POINT

CLICK ON FINISH BUTTON
ADD CATEGORY AND VIEWS CONTRIBUTION INFORMATION IN PLUGIN.XML FILE

WRITE ECLIPSE VIEWS CODE
package com.deveshcodelab.examples.views;
import java.util.Arrays;
import org.eclipse.jface.viewers.ArrayContentProvider;
import org.eclipse.jface.viewers.ILabelProviderListener;
import org.eclipse.jface.viewers.ITableLabelProvider;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.swt.SWT;
import org.eclipse.swt.graphics.Image;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.TableColumn;
import org.eclipse.ui.part.ViewPart;
public class ExampleView extends ViewPart {
private String[] columnNames = new String[] { "Name", "Age", "Address" };
private TableViewer tableViewer;
public ExampleView() {
// TODO Auto-generated constructor stub
}
@Override
public void createPartControl(Composite parent) {
Composite composite = new Composite(parent, SWT.NONE);
composite.setLayout(new FillLayout());
tableViewer = new TableViewer(composite);
for (int i = 0; i < columnNames.length; i++) {
TableColumn tableColumn = new TableColumn(tableViewer.getTable(), SWT.LEAD);
tableColumn.setText(columnNames[i]);
tableColumn.setWidth(200);
}
tableViewer.setLabelProvider(new PersonLabelProvider());
tableViewer.setContentProvider(ArrayContentProvider.getInstance());
tableViewer.setInput(getPersonList());
}
@Override
public void setFocus() {
}
private static class PersonLabelProvider implements ITableLabelProvider {
@Override
public void addListener(ILabelProviderListener listener) {
// TODO Auto-generated method stub
}
@Override
public void dispose() {
// TODO Auto-generated method stub
}
@Override
public boolean isLabelProperty(Object element, String property) {
// TODO Auto-generated method stub
return false;
}
@Override
public void removeListener(ILabelProviderListener listener) {
// TODO Auto-generated method stub
}
@Override
public Image getColumnImage(Object element, int columnIndex) {
// TODO Auto-generated method stub
return null;
}
@Override
public String getColumnText(Object element, int columnIndex) {
Person p = (Person) element;
switch (columnIndex) {
case 0:
return p.name;
case 1:
return String.valueOf(p.age);
case 2:
return p.address;
default:
return null;
}
}
}
private Object getPersonList() {
return Arrays.asList(new Person("Modi", 69, "India"), new Person("Trump", 79, "Washington DC"),
new Person("Putin", 18, "Moscow"));
}
private static class Person {
private String name;
private int age;
private String address;
public Person(String name, int age, String address) {
super();
this.name = name;
this.age = age;
this.address = address;
}
}
}
click on run configuration

click on run button
in runtime eclipse -> go to window -> views ->

click on the view you have created

we have successfully contributed to eclipse views. for any query please write me in comment box.
thank you.