Search in sources :

Example 21 with SchemasKeyData

use of org.talend.designer.filemultischemas.data.SchemasKeyData in project tdi-studio-se by Talend.

the class SchemaDetailsPropertiesProvider method getColumnText.

/*
     * (non-Javadoc)
     * 
     * @see org.eclipse.jface.viewers.ITableLabelProvider#getColumnText(java.lang.Object, int)
     */
public String getColumnText(Object element, int columnIndex) {
    if (columnIndex == 0) {
        // column name
        if (element instanceof MultiMetadataColumn) {
            return ((MultiMetadataColumn) element).getLabel();
        }
        if (element instanceof MultiSchemasMetadataColumn) {
            return ((MultiSchemasMetadataColumn) element).getData();
        }
    } else if (columnIndex == 1) {
        // level
        if (element instanceof MultiMetadataColumn) {
            MultiMetadataColumn multiMetadataColumn = (MultiMetadataColumn) element;
            return validateValue(multiMetadataColumn.getContainerTagLevel());
        }
    } else if (columnIndex == 2) {
        // key
        if (element instanceof MultiMetadataColumn) {
            MultiMetadataColumn multiMetadataColumn = (MultiMetadataColumn) element;
            // first column(record type)
            SchemasKeyData container = multiMetadataColumn.getContainer();
            if (container != null && container.getMetadataColumnsInModel().indexOf(multiMetadataColumn) == uiManager.getSelectedColumnIndex()) {
                return null;
            }
            return validateValue(multiMetadataColumn.isKey());
        }
    } else {
        if (element instanceof MultiSchemasMetadataColumn) {
            MultiSchemasMetadataColumn column = (MultiSchemasMetadataColumn) element;
            switch(columnIndex) {
                case // type
                3:
                    return getTypeLabel(column.getTalendType());
                case // length
                4:
                    return validateValue(column.getLength());
                // return column.getCard();
                case // pattern
                5:
                    return column.getPattern();
            }
        }
    }
    return null;
}
Also used : MultiSchemasMetadataColumn(org.talend.designer.filemultischemas.data.MultiSchemasMetadataColumn) SchemasKeyData(org.talend.designer.filemultischemas.data.SchemasKeyData) MultiMetadataColumn(org.talend.designer.filemultischemas.data.MultiMetadataColumn)

Aggregations

SchemasKeyData (org.talend.designer.filemultischemas.data.SchemasKeyData)21 MultiMetadataColumn (org.talend.designer.filemultischemas.data.MultiMetadataColumn)7 IStructuredSelection (org.eclipse.jface.viewers.IStructuredSelection)6 ArrayList (java.util.ArrayList)5 ISelection (org.eclipse.jface.viewers.ISelection)3 IMetadataTable (org.talend.core.model.metadata.IMetadataTable)3 InvocationTargetException (java.lang.reflect.InvocationTargetException)2 List (java.util.List)2 KeyAdapter (org.eclipse.swt.events.KeyAdapter)2 KeyEvent (org.eclipse.swt.events.KeyEvent)2 ModifyEvent (org.eclipse.swt.events.ModifyEvent)2 ModifyListener (org.eclipse.swt.events.ModifyListener)2 SelectionAdapter (org.eclipse.swt.events.SelectionAdapter)2 SelectionEvent (org.eclipse.swt.events.SelectionEvent)2 Tree (org.eclipse.swt.widgets.Tree)2 TreeColumn (org.eclipse.swt.widgets.TreeColumn)2 TreeItem (org.eclipse.swt.widgets.TreeItem)2 CommandStackForComposite (org.talend.commons.ui.command.CommandStackForComposite)2 FileNotFoundException (java.io.FileNotFoundException)1 IOException (java.io.IOException)1