/* * JBoss, Home of Professional Open Source. * * See the LEGAL.txt file distributed with this work for information regarding copyright ownership and licensing. * * See the AUTHORS.txt file distributed with this work for a full listing of individual contributors. */ package org.teiid.designer.ui.common.table; import org.eclipse.jface.viewers.CellEditor; import org.eclipse.jface.viewers.CheckboxCellEditor; import org.eclipse.swt.SWT; import org.eclipse.swt.graphics.Image; import org.teiid.designer.ui.common.UiConstants; import org.teiid.designer.ui.common.UiPlugin; import org.teiid.designer.ui.common.widget.ButtonProvider; /** * @param <T> * * @since 8.0 */ public abstract class CheckBoxColumnProvider<T> extends DefaultColumnProvider<T, Boolean> { /** * {@inheritDoc} * * @return {{@link SWT#CENTER} * @see org.teiid.designer.ui.common.table.DefaultColumnProvider#getAlignment() */ @Override public int getAlignment() { return SWT.CENTER; } /** * {@inheritDoc} * * @return the {@link CheckboxCellEditor} class * @see org.teiid.designer.ui.common.table.DefaultColumnProvider#getEditorClass() */ @Override public Class<? extends CellEditor> getEditorClass() { return CheckboxCellEditor.class; } /** * {@inheritDoc} * * @return the image of a {@link ButtonProvider check box} with the appropriate {@link #getValue(Object) checked} state * @see org.teiid.designer.ui.common.table.DefaultColumnProvider#getImage(java.lang.Object) */ @Override public final Image getImage( final T element ) { if (getValue(element)) return UiPlugin.getDefault().getImage(UiConstants.Images.CHECKED_CHECKBOX); return UiPlugin.getDefault().getImage(UiConstants.Images.UNCHECKED_CHECKBOX); } /** * {@inheritDoc} * * @return <code>null</code> * @see org.teiid.designer.ui.common.table.DefaultColumnProvider#getText(java.lang.Object) */ @Override public String getText( final T element ) { return null; } /** * {@inheritDoc} * *@return <code>false</code> * @see org.teiid.designer.ui.common.table.DefaultColumnProvider#isResizable() */ @Override public boolean isResizable() { return false; } }