Search in sources :

Example 1 with AbstractElementPropertySectionController

use of org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController in project tdi-studio-se by Talend.

the class DynamicComposite method refresh.

public void refresh() {
    TimeMeasure.display = false;
    TimeMeasure.measureActive = true;
    //$NON-NLS-1$
    TimeMeasure.begin("DC:refresh:" + getCurrentComponent());
    if (elem == null) {
        return;
    }
    List<? extends IElementParameter> listParam = elem.getElementParameters();
    // IElementParameter jobParam = elem.getElementParameterFromField(EParameterFieldType.PROCESS_TYPE);
    // if (jobParam != null) {
    // updateContextList(jobParam);
    // if (elem instanceof Node) {
    // ((Node) elem).checkAndRefreshNode();
    // }
    // }
    Boolean updateNeeded = (Boolean) elem.getPropertyValue(updataComponentParamName);
    if (updateNeeded != null) {
        if (updateNeeded) {
            addComponents(forceRedraw);
            elem.setPropertyValue(updataComponentParamName, new Boolean(false));
        }
    }
    forceRedraw = false;
    for (int i = 0; i < listParam.size(); i++) {
        if (listParam.get(i).getCategory() == section) {
            if (listParam.get(i).isShow(listParam)) {
                AbstractElementPropertySectionController controller = generator.getController(listParam.get(i).getFieldType(), this);
                if (controller != null) {
                    controller.refresh(listParam.get(i), checkErrorsWhenViewRefreshed);
                }
            }
        }
    }
    if (propertyResized) {
        removeListener(SWT.Resize, resizeListener);
        composite.pack();
        getParent().layout();
        propertyResized = false;
        addListener(SWT.Resize, resizeListener);
    }
    checkErrorsWhenViewRefreshed = false;
    //$NON-NLS-1$
    long time = TimeMeasure.timeSinceBegin("DC:refresh:" + getCurrentComponent());
    //$NON-NLS-1$
    TimeMeasure.end("DC:refresh:" + getCurrentComponent());
    if (DynamicTabbedPropertySection.DEBUG_TIME) {
        //$NON-NLS-1$ //$NON-NLS-2$
        System.out.println("DC;total;" + getCurrentComponent() + ";" + time);
    }
}
Also used : AbstractElementPropertySectionController(org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController)

Example 2 with AbstractElementPropertySectionController

use of org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController in project tdi-studio-se by Talend.

the class DynamicTabbedPropertySection method estimatePropertyHeightSize.

/**
     * DOC nrousseau Comment method "estimatePropertyHeightSize".
     * 
     * @param maxRow
     * @param listParam
     * @param tabbedPropertyComposite
     */
private int estimatePropertyHeightSize(int maxRow, List<? extends IElementParameter> listParam, TabbedPropertyComposite tabbedPropertyComposite) {
    int estimatedHeightSize = 0, estimatedMaxRowSize = 0;
    int additionalHeightSize = 0;
    int compositeHeight = tabbedPropertyComposite.getClientArea().height - tabbedPropertyComposite.getTitle().computeSize(SWT.DEFAULT, SWT.DEFAULT).y;
    // System.out.println("size composite:" + compositeHeight);
    int nbDynamic = 0;
    for (int curRow = 1; curRow <= maxRow; curRow++) {
        estimatedMaxRowSize = 0;
        for (int i = 0; i < listParam.size(); i++) {
            IElementParameter curParam = listParam.get(i);
            if (curParam.getCategory() == section) {
                if (curParam.getNumRow() == curRow && (curParam.getFieldType() != EParameterFieldType.TECHNICAL)) {
                    // field:"+curParam.getField());
                    if (curParam.isShow(listParam)) {
                        // System.out.println("show:" + curParam.getName()+
                        // " field:"+curParam.getField());
                        AbstractElementPropertySectionController controller = generator.getController(curParam.getFieldType(), this);
                        if (controller == null) {
                            break;
                        }
                        int estimatedSize = controller.estimateRowSize(composite, curParam);
                        if (controller.hasDynamicRowSize()) {
                            nbDynamic++;
                        }
                        if (estimatedSize > estimatedMaxRowSize) {
                            estimatedMaxRowSize = estimatedSize;
                        }
                    }
                }
            }
        }
        estimatedHeightSize += estimatedMaxRowSize;
    }
    // System.out.println("*** ESTIMATED SIZE:" + estimatedHeightSize + "
    // ***");
    int emptySpace = compositeHeight - estimatedHeightSize;
    // System.out.println("--- EMPTY SPACE:" + emptySpace);
    if (emptySpace > 0 && nbDynamic > 0) {
        additionalHeightSize = emptySpace / nbDynamic;
    // System.out.println("--- DIVIDED ADDITIONAL HEIGHT (for each
    // dynamic):" + additionalHeightSize);
    }
    return additionalHeightSize;
}
Also used : AbstractElementPropertySectionController(org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController) IElementParameter(org.talend.core.model.process.IElementParameter) Point(org.eclipse.swt.graphics.Point)

Example 3 with AbstractElementPropertySectionController

use of org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController in project tdi-studio-se by Talend.

the class DynamicTabbedPropertySection method addComponents.

/**
     * Initialize all components for the defined section for this node.
     */
public void addComponents(boolean forceRedraw, boolean reInitialize) {
    registerListenerForRefreshingSection();
    checkErrorsWhenViewRefreshed = true;
    int heightSize = 0, maxRowSize = 0, nbInRow, numInRow;
    int maxRow;
    List<? extends IElementParameter> listParam = elem.getElementParameters();
    oldQueryStoreType = (String) elem.getPropertyValue(EParameterName.QUERYSTORE_TYPE.getName());
    if (oldQueryStoreType != null) {
        if (oldQueryStoreType.equals(EmfComponent.REPOSITORY)) {
            showQueryStoreRepositoryList(true);
            updateRepositoryList();
        } else {
            showQueryStoreRepositoryList(false);
        }
    }
    IElementParameter param = elem.getElementParameter(EParameterName.PROPERTY_TYPE.getName());
    if (param != null) {
        oldPropertyType = (String) param.getValue();
        if (param.isShow(elem.getElementParameters())) {
            if (oldPropertyType.equals(EmfComponent.REPOSITORY)) {
                showPropertyRepositoryList(true, false);
                updateRepositoryList();
            } else {
                showPropertyRepositoryList(false, false);
            }
        } else {
            showPropertyRepositoryList(false, false);
        }
    }
    // param = elem.getElementParameter(extraPropertyTypeName);
    if (param != null) {
        oldPropertyType = (String) param.getValue();
        if (param.isShow(elem.getElementParameters())) {
            if (oldPropertyType.equals(EmfComponent.REPOSITORY)) {
                showPropertyRepositoryList(true, true);
                updateRepositoryList();
            } else {
                showPropertyRepositoryList(false, true);
            }
        } else {
            showPropertyRepositoryList(false, true);
        }
    }
    oldProcessType = (String) elem.getPropertyValue(EParameterName.PROCESS_TYPE_PROCESS.getName());
    if (oldProcessType != null) {
        String[] list = elem.getElementParameter(EParameterName.PROCESS_TYPE_PROCESS.getName()).getListItemsDisplayName();
        if ((oldProcessType.equals("NO_PROCESS") || (list.length == 0))) {
            //$NON-NLS-1$
            updateProcessList();
            updateContextList();
            if (elem instanceof Node) {
                ((Node) elem).checkAndRefreshNode();
            }
        }
    }
    if (!forceRedraw) {
        boolean needRedraw = false;
        for (IElementParameter elementParameter : elem.getElementParametersWithChildrens()) {
            if (elementParameter.getCategory().equals(section) && (elementParameter.getFieldType() != EParameterFieldType.SCHEMA_TYPE) && (elementParameter.getFieldType() != EParameterFieldType.SCHEMA_REFERENCE) && (elementParameter.getFieldType() != EParameterFieldType.QUERYSTORE_TYPE)) {
                // if the component must be displayed, then check if the
                // control exists or not.
                boolean show = elementParameter.isShow(elem.getElementParameters());
                Object control;
                if (elementParameter.getParentParameter() == null) {
                    control = this.hashCurControls.get(elementParameter.getName());
                } else {
                    control = this.hashCurControls.get(//$NON-NLS-1$
                    elementParameter.getParentParameter().getName() + ":" + elementParameter.getName());
                }
                if ((control == null && show) || (control != null && !show)) {
                    needRedraw = true;
                    break;
                // System.out.println(elementParameter.getName() + "
                // need redraw");
                }
            }
        }
        if (!needRedraw) {
            // System.out.println("no need redraw");
            return;
        }
    }
    Control lastControl = null;
    if (reInitialize) {
        if (currentComponent != null && composite != null) {
            Control[] ct = composite.getChildren();
            for (Control element : ct) {
                element.dispose();
            }
        }
    } else {
        // Control[] ct = composite.getChildren();
        // int curY = 0, maxY = 0;
        // for (int i = 0; i < ct.length; i++) {
        // curY = ct[i].getLocation().y + ct[i].computeSize(SWT.DEFAULT, SWT.DEFAULT).y;
        // if (curY > maxY) {
        // maxY = curY;
        // }
        // }
        heightSize = curRowSize;
    }
    hashCurControls = new DualHashBidiMap();
    maxRow = 0;
    for (int i = 0; i < listParam.size(); i++) {
        if (listParam.get(i).getCategory() == section) {
            if (listParam.get(i).getNumRow() > maxRow && listParam.get(i).isShow(listParam)) {
                maxRow = listParam.get(i).getNumRow();
            }
        }
    }
    generator.initController(this);
    // System.out.println("********************** NEW ADDCOMPONENTS
    // **********************");
    TabbedPropertyComposite tabbedPropertyComposite = this.getTabbedPropertyComposite();
    int additionalHeightSize = 0;
    if (tabbedPropertyComposite != null && (!(elem instanceof org.talend.designer.core.ui.editor.connections.Connection))) {
        boolean hasDynamicRow = false;
        for (int i = 0; i < listParam.size(); i++) {
            IElementParameter curParam = listParam.get(i);
            if (curParam.getCategory() == section) {
                if (curParam.getFieldType() != EParameterFieldType.TECHNICAL) {
                    if (curParam.isShow(listParam)) {
                        AbstractElementPropertySectionController controller = generator.getController(curParam.getFieldType(), this);
                        if (controller == null) {
                            continue;
                        }
                        if (controller.hasDynamicRowSize()) {
                            hasDynamicRow = true;
                            break;
                        }
                    }
                }
            }
        }
        if (hasDynamicRow) {
            additionalHeightSize = estimatePropertyHeightSize(maxRow, listParam, tabbedPropertyComposite);
        }
    }
    //$NON-NLS-1$
    long lastTime = TimeMeasure.timeSinceBegin("DTP:refresh:" + getCurrentComponent());
    curRowSize = 0;
    for (int curRow = 1; curRow <= maxRow; curRow++) {
        maxRowSize = 0;
        nbInRow = 0;
        for (int i = 0; i < listParam.size(); i++) {
            IElementParameter curParam = listParam.get(i);
            if (curParam.getCategory() == section) {
                if (curParam.getNumRow() == curRow && curParam.isShow(listParam) && (curParam.getFieldType() != EParameterFieldType.TECHNICAL)) {
                    nbInRow++;
                }
            }
        }
        numInRow = 0;
        lastControl = null;
        for (int i = 0; i < listParam.size(); i++) {
            IElementParameter curParam = listParam.get(i);
            if (curParam.getCategory() == section) {
                if (curParam.getNumRow() == curRow && (curParam.getFieldType() != EParameterFieldType.TECHNICAL)) {
                    // field:"+curParam.getField());
                    if (curParam.isShow(listParam)) {
                        // System.out.println("show:" + curParam.getName()+
                        // " field:"+curParam.getField());
                        numInRow++;
                        AbstractElementPropertySectionController controller = generator.getController(curParam.getFieldType(), this);
                        if (controller == null) {
                            continue;
                        }
                        if (controller.hasDynamicRowSize()) {
                            controller.setAdditionalHeightSize(additionalHeightSize);
                        }
                        lastControl = controller.createControl(composite, curParam, numInRow, nbInRow, heightSize, lastControl);
                        //$NON-NLS-1$
                        lastTime = TimeMeasure.timeSinceBegin("DTP:refresh:" + getCurrentComponent()) - lastTime;
                        if ((DynamicTabbedPropertySection.DEBUG_TIME) && !getCurrentComponent().equals("Job")) {
                            //$NON-NLS-1$
                            System.out.println(//$NON-NLS-1$ //$NON-NLS-2$
                            "DTP;create:" + curParam.getFieldType().getName() + ";" + getCurrentComponent() + ";" + //$NON-NLS-1$
                            lastTime);
                        }
                        if (curRowSize > maxRowSize) {
                            maxRowSize = curRowSize;
                        }
                    }
                }
            }
        }
        heightSize += maxRowSize;
    }
    resizeScrolledComposite();
}
Also used : TabbedPropertyComposite(org.eclipse.ui.internal.views.properties.tabbed.view.TabbedPropertyComposite) Node(org.talend.designer.core.ui.editor.nodes.Node) INode(org.talend.core.model.process.INode) DatabaseConnection(org.talend.core.model.metadata.builder.connection.DatabaseConnection) SalesforceSchemaConnection(org.talend.core.model.metadata.builder.connection.SalesforceSchemaConnection) GenericSchemaConnection(org.talend.core.model.metadata.builder.connection.GenericSchemaConnection) PositionalFileConnection(org.talend.core.model.metadata.builder.connection.PositionalFileConnection) RegexpFileConnection(org.talend.core.model.metadata.builder.connection.RegexpFileConnection) IConnection(org.talend.core.model.process.IConnection) DelimitedFileConnection(org.talend.core.model.metadata.builder.connection.DelimitedFileConnection) Connection(org.talend.core.model.metadata.builder.connection.Connection) HeaderFooterConnection(org.talend.core.model.metadata.builder.connection.HeaderFooterConnection) XmlFileConnection(org.talend.core.model.metadata.builder.connection.XmlFileConnection) QueriesConnection(org.talend.core.model.metadata.builder.connection.QueriesConnection) LDAPSchemaConnection(org.talend.core.model.metadata.builder.connection.LDAPSchemaConnection) FileExcelConnection(org.talend.core.model.metadata.builder.connection.FileExcelConnection) Point(org.eclipse.swt.graphics.Point) Control(org.eclipse.swt.widgets.Control) DualHashBidiMap(org.apache.commons.collections.bidimap.DualHashBidiMap) AbstractElementPropertySectionController(org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController) IElementParameter(org.talend.core.model.process.IElementParameter) IRepositoryViewObject(org.talend.core.model.repository.IRepositoryViewObject)

Example 4 with AbstractElementPropertySectionController

use of org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController in project tdi-studio-se by Talend.

the class DynamicTabbedPropertySection method refresh.

@Override
public void refresh() {
    TimeMeasure.display = false;
    TimeMeasure.measureActive = true;
    //$NON-NLS-1$
    TimeMeasure.begin("DTP:refresh:" + getCurrentComponent());
    if (elem == null) {
        return;
    }
    List<? extends IElementParameter> listParam = elem.getElementParameters();
    if (oldProcessType != null) {
        String newProcessType = (String) elem.getPropertyValue(EParameterName.PROCESS_TYPE_PROCESS.getName());
        if (!oldProcessType.equals(newProcessType)) {
            updateProcessList();
            updateContextList();
            if (elem instanceof Node) {
                ((Node) elem).checkAndRefreshNode();
            }
        }
    }
    Boolean updateNeeded = (Boolean) elem.getPropertyValue(updataComponentParamName);
    if (updateNeeded != null) {
        if (updateNeeded) {
            addComponents(forceRedraw);
            elem.setPropertyValue(updataComponentParamName, new Boolean(false));
        }
    }
    forceRedraw = false;
    for (int i = 0; i < listParam.size(); i++) {
        if (listParam.get(i).getCategory() == section) {
            if (listParam.get(i).isShow(listParam)) {
                AbstractElementPropertySectionController controller = generator.getController(listParam.get(i).getFieldType(), this);
                if (controller != null) {
                    controller.refresh(listParam.get(i), checkErrorsWhenViewRefreshed);
                }
            }
        }
    }
    if (propertyResized) {
        composite.getParent().layout(true, true);
        propertyResized = false;
    }
    checkErrorsWhenViewRefreshed = false;
    //$NON-NLS-1$
    long time = TimeMeasure.timeSinceBegin("DTP:refresh:" + getCurrentComponent());
    //$NON-NLS-1$
    TimeMeasure.end("DTP:refresh:" + getCurrentComponent());
    if ((DEBUG_TIME) && !getCurrentComponent().equals("Job")) {
        //$NON-NLS-1$
        //$NON-NLS-1$ //$NON-NLS-2$
        System.out.println("DTP;total;" + getCurrentComponent() + ";" + time);
    }
}
Also used : AbstractElementPropertySectionController(org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController) Node(org.talend.designer.core.ui.editor.nodes.Node) INode(org.talend.core.model.process.INode) Point(org.eclipse.swt.graphics.Point)

Example 5 with AbstractElementPropertySectionController

use of org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController in project tdi-studio-se by Talend.

the class DynamicComposite method addComponents.

/**
     * Initialize all components for the defined section for this node.
     */
public void addComponents(boolean forceRedraw, boolean reInitialize, int height) {
    checkErrorsWhenViewRefreshed = true;
    int heightSize = 0, maxRowSize = 0, nbInRow, numInRow;
    int maxRow;
    boolean isCompute = false;
    Map<String, Integer> groupPosition = new HashMap<String, Integer>();
    List<? extends IElementParameter> listParam = elem.getElementParametersWithChildrens();
    if (!forceRedraw) {
        boolean needRedraw = isNeedRedraw();
        if (!needRedraw) {
            // System.out.println("no need redraw");
            return;
        }
    }
    Control lastControl = null;
    if (reInitialize) {
        if (currentComponent != null) {
            disposeChildren();
        }
    } else {
        heightSize = height;
    }
    hashCurControls = new DualHashBidiMap();
    maxRow = 0;
    for (int i = 0; i < listParam.size(); i++) {
        if (listParam.get(i).getCategory() == section) {
            if (listParam.get(i).getNumRow() > maxRow && listParam.get(i).isShow(listParam)) {
                maxRow = listParam.get(i).getNumRow();
            }
        }
    }
    IElementParameter synchronizeSchemaParam = elem.getElementParameter(EParameterName.NOT_SYNCHRONIZED_SCHEMA.getName());
    if (synchronizeSchemaParam != null) {
        // if the node don't contains a schema type and accept an input flow and is not synchronized
        // display a schema on the first line just the type to synchronize the schema
        synchronizeSchemaParam.setShow(!((Node) elem).isSchemaSynchronized());
    }
    generator.initController(this);
    // System.out.println("********************** NEW ADDCOMPONENTS
    // **********************");
    // TabbedPropertyComposite tabbedPropertyComposite = this.getTabbedPropertyComposite();
    int additionalHeightSize = 0;
    boolean hasDynamicRow = false;
    for (int i = 0; i < listParam.size(); i++) {
        IElementParameter curParam = listParam.get(i);
        if (curParam.getCategory() == section) {
            if (curParam.getFieldType() != EParameterFieldType.TECHNICAL) {
                if (curParam.isShow(listParam)) {
                    AbstractElementPropertySectionController controller = generator.getController(curParam.getFieldType(), this);
                    if (controller == null) {
                        continue;
                    }
                    if (controller.hasDynamicRowSize()) {
                        hasDynamicRow = true;
                        break;
                    }
                }
            }
        }
    }
    if (hasDynamicRow) {
        additionalHeightSize = estimatePropertyHeightSize(maxRow, listParam);
    }
    //$NON-NLS-1$
    long lastTime = TimeMeasure.timeSinceBegin("DC:refresh:" + getCurrentComponent());
    for (int curRow = 1; curRow <= maxRow; curRow++) {
        nbInRow = 0;
        for (int i = 0; i < listParam.size(); i++) {
            IElementParameter curParam = listParam.get(i);
            if (curParam.getCategory() == section) {
                if (curParam.getNumRow() == curRow && curParam.isShow(listParam) && (curParam.getFieldType() != EParameterFieldType.TECHNICAL)) {
                    nbInRow++;
                }
            }
        }
        numInRow = 0;
        lastControl = null;
        curRowSize = 0;
        for (int i = 0; i < listParam.size(); i++) {
            IElementParameter curParam = listParam.get(i);
            if (curParam.getCategory() == section) {
                if (curParam.getNumRow() == curRow && (curParam.getFieldType() != EParameterFieldType.TECHNICAL)) {
                    // field:"+curParam.getField());
                    if (curParam.isShow(listParam)) {
                        // System.out.println("show:" + curParam.getName()+
                        // " field:"+curParam.getField());
                        numInRow++;
                        AbstractElementPropertySectionController controller = generator.getController(curParam.getFieldType(), this);
                        if (controller == null) {
                            continue;
                        }
                        if (controller.hasDynamicRowSize()) {
                            controller.setAdditionalHeightSize(additionalHeightSize);
                        }
                        String groupName = curParam.getGroup();
                        Composite subComposite = null;
                        if (groupName != null) {
                            if (!hashCurControls.containsKey(groupName)) {
                                if (groupPosition.size() > 0) {
                                    heightSize += DEFAULT_GROUP_HEIGHT;
                                }
                                new GroupController(this).createControl(composite, curParam, numInRow, nbInRow, heightSize, lastControl);
                                groupPosition.put(groupName, heightSize);
                            }
                            subComposite = (Composite) hashCurControls.get(groupName);
                            int h2 = heightSize - groupPosition.get(groupName);
                            lastControl = controller.createControl(subComposite, curParam, numInRow, nbInRow, h2, lastControl);
                        } else {
                            if (isCompactView()) {
                                int h3 = DEFAULT_GROUP_HEIGHT * (groupPosition.size() > 0 ? 1 : 0) + heightSize;
                                lastControl = controller.createControl(composite, curParam, numInRow, nbInRow, h3, lastControl);
                            } else {
                                if (numInRow > 1 && nbInRow > 1) {
                                    heightSize += maxRowSize;
                                }
                                int h3 = DEFAULT_GROUP_HEIGHT * (groupPosition.size() > 0 ? 1 : 0) + heightSize;
                                lastControl = controller.createControl(composite, curParam, 1, 1, h3, null);
                            }
                        }
                        //$NON-NLS-1$
                        lastTime = TimeMeasure.timeSinceBegin("DC:refresh:" + getCurrentComponent()) - lastTime;
                        if (DynamicTabbedPropertySection.DEBUG_TIME) {
                            System.out.println(//$NON-NLS-1$ //$NON-NLS-2$
                            "DC;create:" + curParam.getFieldType().getName() + ";" + getCurrentComponent() + ";" + //$NON-NLS-1$
                            lastTime);
                        }
                        // System.out.println("param:" + curParam.getName()
                        // + " - curRowSize:" + curRowSize);
                        maxRowSize = 0;
                        if (curRowSize > maxRowSize) {
                            maxRowSize = curRowSize;
                            isCompute = true;
                        }
                    }
                }
            }
        }
        if (isCompute) {
            heightSize += maxRowSize;
            isCompute = false;
        }
    }
    if (synchronizeSchemaParam != null) {
        synchronizeSchemaParam.setShow(false);
    }
    resizeScrolledComposite();
}
Also used : Composite(org.eclipse.swt.widgets.Composite) ScrolledComposite(org.eclipse.swt.custom.ScrolledComposite) HashMap(java.util.HashMap) GroupController(org.talend.designer.core.ui.editor.properties.controllers.GroupController) Node(org.talend.designer.core.ui.editor.nodes.Node) RepositoryNode(org.talend.repository.model.RepositoryNode) IRepositoryNode(org.talend.repository.model.IRepositoryNode) Control(org.eclipse.swt.widgets.Control) DualHashBidiMap(org.apache.commons.collections.bidimap.DualHashBidiMap) AbstractElementPropertySectionController(org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController) IElementParameter(org.talend.core.model.process.IElementParameter)

Aggregations

AbstractElementPropertySectionController (org.talend.designer.core.ui.editor.properties.controllers.AbstractElementPropertySectionController)12 IElementParameter (org.talend.core.model.process.IElementParameter)9 Composite (org.eclipse.swt.widgets.Composite)4 Node (org.talend.designer.core.ui.editor.nodes.Node)4 DualHashBidiMap (org.apache.commons.collections.bidimap.DualHashBidiMap)3 Point (org.eclipse.swt.graphics.Point)3 Control (org.eclipse.swt.widgets.Control)3 HashMap (java.util.HashMap)2 ScrolledComposite (org.eclipse.swt.custom.ScrolledComposite)2 FormAttachment (org.eclipse.swt.layout.FormAttachment)2 FormData (org.eclipse.swt.layout.FormData)2 Table (org.eclipse.swt.widgets.Table)2 IMetadataTable (org.talend.core.model.metadata.IMetadataTable)2 INode (org.talend.core.model.process.INode)2 MetadataTableEditor (org.talend.core.ui.metadata.editor.MetadataTableEditor)2 MetadataTableEditorView (org.talend.core.ui.metadata.editor.MetadataTableEditorView)2 Connection (org.talend.designer.core.ui.editor.connections.Connection)2 GroupController (org.talend.designer.core.ui.editor.properties.controllers.GroupController)2 InvocationTargetException (java.lang.reflect.InvocationTargetException)1 ArrayList (java.util.ArrayList)1