ch.elexis.core.ui.util.viewers.SimpleWidgetProvider.java Source code

Java tutorial

Introduction

Here is the source code for ch.elexis.core.ui.util.viewers.SimpleWidgetProvider.java

Source

/*******************************************************************************
 * Copyright (c) 2005-2009, G. Weirich and Elexis
 * 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:
 *    G. Weirich - initial implementation
 *    
 *******************************************************************************/

package ch.elexis.core.ui.util.viewers;

import org.eclipse.jface.viewers.ListViewer;
import org.eclipse.jface.viewers.StructuredViewer;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.TreeViewer;
import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;

import ch.elexis.core.ui.util.viewers.ViewerConfigurer.WidgetProvider;

/**
 * Einfacher Widgetprovider. Gibt ein simples Widget des im Konstruktor genannten Types zurck
 * 
 * @author gerry
 * 
 */

public class SimpleWidgetProvider implements WidgetProvider {
    int type, style;

    CommonViewer cv;
    public static final int TYPE_TREE = 0;
    public static final int TYPE_LIST = 1;
    public static final int TYPE_TABLE = 2;
    public static final int TYPE_LAZYLIST = 3;

    public SimpleWidgetProvider(int type, int style, CommonViewer parent) {
        this.type = type;
        this.style = style;
        cv = parent;
    }

    public StructuredViewer createViewer(Composite parent) {
        switch (type) {
        case TYPE_TREE:
            return new TreeViewer(parent, style);
        case TYPE_LIST:
            return new ListViewer(parent, style);
        case TYPE_TABLE:
            return new TableViewer(parent, style);
        case TYPE_LAZYLIST:
            TableViewer ret = new TableViewer(parent, style | SWT.VIRTUAL);

            // ret.getTable().setItemCount(0);
            return ret;
        }
        return null;
    }

}