au.gov.ansto.bragg.kakadu.ui.views.RegionView.java Source code

Java tutorial

Introduction

Here is the source code for au.gov.ansto.bragg.kakadu.ui.views.RegionView.java

Source

/*******************************************************************************
 * Copyright (c) 2007 Australian Nuclear Science and Technology Organisation.
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 *     Danil Klimontov (Bragg Institute) - initial API and implementation
 *******************************************************************************/
package au.gov.ansto.bragg.kakadu.ui.views;

import org.eclipse.jface.viewers.IStructuredContentProvider;
import org.eclipse.jface.viewers.ITableLabelProvider;
import org.eclipse.jface.viewers.LabelProvider;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.Viewer;
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;
import org.gumtree.vis.mask.AbstractMask;

import au.gov.ansto.bragg.kakadu.ui.region.RegionEventListener;

/**
 * The view for Region UI.
 * @author Danil Klimontov (dak)
 */
public class RegionView extends ViewPart {

    private RegionEventListener regionListener = new RegionEventListener() {
        public void maskAdded(AbstractMask region) {
            viewer.refresh();
        }

        public void maskRemoved(AbstractMask region) {
            viewer.refresh();
        }

        public void maskUpdated(AbstractMask region) {
            viewer.refresh();
        }
    };

    public class RegionLabelProvider extends LabelProvider implements ITableLabelProvider {
        public Image getColumnImage(Object element, int columnIndex) {
            return null;
        }

        public String getColumnText(Object element, int columnIndex) {
            AbstractMask uiRegion = (AbstractMask) element;
            switch (columnIndex) {
            case 0:
                return uiRegion.getName();
            default:
                return "";
            }
        }
    }

    public class RegionListContentProvider implements IStructuredContentProvider {

        public void dispose() {
        }

        public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
        }

        public Object[] getElements(Object inputElement) {
            //         return regionManager.getRegions().toArray();
            return null;
        }
    }

    private TableViewer viewer;
    private TableColumn tableColumnName;
    //   private ParameterRegionManager regionManager = new ParameterRegionManager();

    /**
     * 
     */
    public RegionView() {
    }

    public void createPartControl(Composite parent) {
        parent.setLayout(new FillLayout());

        viewer = new TableViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION);

        tableColumnName = new TableColumn(viewer.getTable(), SWT.NONE);
        tableColumnName.setText("Name");
        tableColumnName.setWidth(60);
        tableColumnName.setMoveable(true);

        viewer.setContentProvider(new RegionListContentProvider());
        viewer.setLabelProvider(new RegionLabelProvider());
        viewer.getTable().setHeaderVisible(true);
        viewer.getTable().setLinesVisible(true);

        viewer.setInput(getViewSite());

        initListeners();

    }

    private void initListeners() {
        //      regionManager.addRegionListener(regionListener);
    }

    public void setFocus() {
    }

    public void dispose() {
        super.dispose();
        //      regionManager.removeRegionListener(regionListener);
    }

}