Search in sources :

Example 1 with HL7MultiSchemaUI

use of org.talend.designer.hl7.ui.HL7MultiSchemaUI in project tdi-studio-se by Talend.

the class HL7MetadataEmfTableEditorView method getDbColumnNameAccessor.

@Override
protected IBeanPropertyAccessors<MetadataColumn, String> getDbColumnNameAccessor() {
    return new IBeanPropertyAccessors<MetadataColumn, String>() {

        public String get(MetadataColumn bean) {
            return bean.getOriginalField();
        }

        public void set(MetadataColumn bean, String value) {
            bean.setOriginalField(value);
            IStructuredSelection selection = (IStructuredSelection) ((HL7MultiSchemaUI) linker.getMainui()).getMetaTableViewer().getSelection();
            Object selectedObj = selection.getFirstElement();
            if (selectedObj != null) {
                String key = ((IModel) selectedObj).getDisplayName();
                linker.getManager().updateRelationMapping(key, bean, false);
            // if (columns.indexOf(bean) > 0) {
            // columns.get(columns.indexOf(bean)).setOriginalField(value);
            // }
            }
        }
    };
}
Also used : MetadataColumn(org.talend.core.model.metadata.builder.connection.MetadataColumn) IModel(org.talend.designer.hl7.model.IModel) HL7MultiSchemaUI(org.talend.designer.hl7.ui.HL7MultiSchemaUI) IBeanPropertyAccessors(org.talend.commons.utils.data.bean.IBeanPropertyAccessors) IStructuredSelection(org.eclipse.jface.viewers.IStructuredSelection)

Example 2 with HL7MultiSchemaUI

use of org.talend.designer.hl7.ui.HL7MultiSchemaUI in project tdi-studio-se by Talend.

the class HL7Main method createUI.

/**
     * create UI".
     * 
     * @param parent
     * @return
     */
public void createUI(Composite parent) {
    if (connector.isHL7Output()) {
        generatorUI = new HL7OutputLinkUI(parent, this.hl7Manager);
        generatorUI.init();
        return;
    }
    generatorUI = new HL7MultiSchemaUI(parent, hl7Manager);
    generatorUI.init();
}
Also used : HL7OutputLinkUI(org.talend.designer.hl7.ui.HL7OutputLinkUI) HL7MultiSchemaUI(org.talend.designer.hl7.ui.HL7MultiSchemaUI)

Example 3 with HL7MultiSchemaUI

use of org.talend.designer.hl7.ui.HL7MultiSchemaUI in project tdi-studio-se by Talend.

the class HL7MetadataEmfToolbarEditor method createMoveUpPushButton.

@Override
protected MoveUpPushButton createMoveUpPushButton() {
    return new MoveUpPushButtonForExtendedTable(toolbar, extendedTableViewer) {

        @Override
        protected void afterCommandExecution(Command executedCommand) {
            MetadataEmfTableEditor tableEditorModel = (MetadataEmfTableEditor) getExtendedTableViewer().getExtendedControlModel();
            IStructuredSelection selection = (IStructuredSelection) ((HL7MultiSchemaUI) linker.getMainui()).getMetaTableViewer().getSelection();
            Object selectedObj = selection.getFirstElement();
            if (selectedObj != null) {
                String key = ((IModel) selectedObj).getDisplayName();
                List<MetadataColumn> metadataColumnList = tableEditorModel.getMetadataColumnList();
                Map<String, List<MetadataColumn>> schemaRelationMap = linker.getManager().getSchemaRelationMap();
                if (schemaRelationMap != null) {
                    List<MetadataColumn> schemas = new ArrayList<MetadataColumn>();
                    schemas.addAll(metadataColumnList);
                    schemaRelationMap.put(key, schemas);
                }
            }
            linker.getMainui().redrawLinkers();
            linker.getBackgroundRefresher().refreshBackground();
        }

        @Override
        public boolean getEnabledState() {
            // 13749
            return super.getEnabledState() && !isRepository;
        }
    };
}
Also used : IModel(org.talend.designer.hl7.model.IModel) MoveUpPushButtonForExtendedTable(org.talend.commons.ui.swt.advanced.dataeditor.button.MoveUpPushButtonForExtendedTable) ArrayList(java.util.ArrayList) IStructuredSelection(org.eclipse.jface.viewers.IStructuredSelection) MetadataColumn(org.talend.core.model.metadata.builder.connection.MetadataColumn) MetadataEmfExportXmlCommand(org.talend.core.ui.metadata.extended.command.MetadataEmfExportXmlCommand) MetadataEmfPasteCommand(org.talend.core.ui.metadata.extended.command.MetadataEmfPasteCommand) ExtendedTableResetDBTypesCommand(org.talend.core.ui.metadata.extended.command.ExtendedTableResetDBTypesCommand) MetadataEmfImportXmlCommand(org.talend.core.ui.metadata.extended.command.MetadataEmfImportXmlCommand) Command(org.eclipse.gef.commands.Command) MetadataEmfTableEditor(org.talend.core.ui.metadata.editor.MetadataEmfTableEditor) HL7MultiSchemaUI(org.talend.designer.hl7.ui.HL7MultiSchemaUI) ArrayList(java.util.ArrayList) List(java.util.List)

Example 4 with HL7MultiSchemaUI

use of org.talend.designer.hl7.ui.HL7MultiSchemaUI in project tdi-studio-se by Talend.

the class HL7MetadataEmfToolbarEditor method createPastePushButton.

/*
     * (non-Javadoc)
     * 
     * @see org.talend.core.ui.extended.ExtendedToolbarView#createPastButton()
     */
@Override
public PastePushButton createPastePushButton() {
    return new PastePushButtonForExtendedTable(toolbar, extendedTableViewer) {

        @Override
        protected Command getCommandToExecute(ExtendedTableModel extendedTableModel, Integer indexWhereInsert) {
            return new MetadataEmfPasteCommand(extendedTableModel, indexWhereInsert);
        }

        @Override
        public boolean getEnabledState() {
            // 13749
            return super.getEnabledState() && !isRepository;
        }

        @Override
        protected void afterCommandExecution(Command executedCommand) {
            MetadataEmfTableEditor tableEditorModel = (MetadataEmfTableEditor) getExtendedTableViewer().getExtendedControlModel();
            IStructuredSelection selection = (IStructuredSelection) ((HL7MultiSchemaUI) linker.getMainui()).getMetaTableViewer().getSelection();
            Object selectedObj = selection.getFirstElement();
            if (selectedObj != null) {
                String key = ((IModel) selectedObj).getDisplayName();
                List<MetadataColumn> metadataColumnList = tableEditorModel.getMetadataColumnList();
                Map<String, List<MetadataColumn>> schemaRelationMap = linker.getManager().getSchemaRelationMap();
                if (schemaRelationMap != null) {
                    List<MetadataColumn> schemas = new ArrayList<MetadataColumn>();
                    schemas.addAll(metadataColumnList);
                    schemaRelationMap.put(key, schemas);
                }
            }
        }
    };
}
Also used : IModel(org.talend.designer.hl7.model.IModel) ArrayList(java.util.ArrayList) PastePushButtonForExtendedTable(org.talend.commons.ui.swt.advanced.dataeditor.button.PastePushButtonForExtendedTable) IStructuredSelection(org.eclipse.jface.viewers.IStructuredSelection) MetadataEmfPasteCommand(org.talend.core.ui.metadata.extended.command.MetadataEmfPasteCommand) MetadataColumn(org.talend.core.model.metadata.builder.connection.MetadataColumn) MetadataEmfExportXmlCommand(org.talend.core.ui.metadata.extended.command.MetadataEmfExportXmlCommand) MetadataEmfPasteCommand(org.talend.core.ui.metadata.extended.command.MetadataEmfPasteCommand) ExtendedTableResetDBTypesCommand(org.talend.core.ui.metadata.extended.command.ExtendedTableResetDBTypesCommand) MetadataEmfImportXmlCommand(org.talend.core.ui.metadata.extended.command.MetadataEmfImportXmlCommand) Command(org.eclipse.gef.commands.Command) MetadataEmfTableEditor(org.talend.core.ui.metadata.editor.MetadataEmfTableEditor) HL7MultiSchemaUI(org.talend.designer.hl7.ui.HL7MultiSchemaUI) ArrayList(java.util.ArrayList) List(java.util.List) ExtendedTableModel(org.talend.commons.ui.swt.extended.table.ExtendedTableModel)

Example 5 with HL7MultiSchemaUI

use of org.talend.designer.hl7.ui.HL7MultiSchemaUI in project tdi-studio-se by Talend.

the class HL7MetadataEmfToolbarEditor method createAddPushButton.

/*
     * (non-Javadoc)
     * 
     * @see org.talend.core.ui.extended.ExtendedToolbarView#createAddPushButton()
     */
@Override
protected AddPushButton createAddPushButton() {
    return new AddPushButtonForExtendedTable(this.toolbar, getExtendedTableViewer()) {

        boolean hasSchema = false;

        @Override
        protected Object getObjectToAdd() {
            if (hasSchema) {
                MetadataEmfTableEditor tableEditorModel = (MetadataEmfTableEditor) getExtendedTableViewer().getExtendedControlModel();
                if (tableEditorModel.getMetadataTable() == null) {
                    tableEditorModel.setMetadataTable(ConnectionFactory.eINSTANCE.createMetadataTable());
                }
                MetadataColumn metadatacolumn = tableEditorModel.createNewMetadataColumn(dbmsId);
                metadatacolumn.setLength(226);
                metadatacolumn.setPrecision(0);
                updateCurrentTableModelAndMap(tableEditorModel);
                return metadatacolumn;
            }
            return null;
        }

        @Override
        protected void beforeCommandExecution() {
            IStructuredSelection selection = (IStructuredSelection) ((HL7MultiSchemaUI) linker.getMainui()).getMetaTableViewer().getSelection();
            Object selectedObj = selection.getFirstElement();
            if (selectedObj != null) {
                hasSchema = true;
                super.beforeCommandExecution();
            } else {
                hasSchema = false;
                MessageDialog.openError(HL7MetadataEmfToolbarEditor.this.getParentComposite().getShell(), "Can't add new column!", "Need to init a schema by choosing a file at first");
            }
        }

        private void updateCurrentTableModelAndMap(MetadataEmfTableEditor tableEditorModel) {
            IStructuredSelection selection = (IStructuredSelection) ((HL7MultiSchemaUI) linker.getMainui()).getMetaTableViewer().getSelection();
            Object selectedObj = selection.getFirstElement();
            if (selectedObj != null) {
                String key = ((IModel) selectedObj).getDisplayName();
                linker.getManager().updateRelationMapping(key, tableEditorModel.createNewMetadataColumn(dbmsId), true);
            }
        }

        @Override
        public boolean getEnabledState() {
            // 13749
            return super.getEnabledState() && !isRepository;
        }
    };
}
Also used : MetadataColumn(org.talend.core.model.metadata.builder.connection.MetadataColumn) IModel(org.talend.designer.hl7.model.IModel) AddPushButtonForExtendedTable(org.talend.commons.ui.swt.advanced.dataeditor.button.AddPushButtonForExtendedTable) MetadataEmfTableEditor(org.talend.core.ui.metadata.editor.MetadataEmfTableEditor) HL7MultiSchemaUI(org.talend.designer.hl7.ui.HL7MultiSchemaUI) IStructuredSelection(org.eclipse.jface.viewers.IStructuredSelection)

Aggregations

HL7MultiSchemaUI (org.talend.designer.hl7.ui.HL7MultiSchemaUI)7 IStructuredSelection (org.eclipse.jface.viewers.IStructuredSelection)6 MetadataColumn (org.talend.core.model.metadata.builder.connection.MetadataColumn)6 IModel (org.talend.designer.hl7.model.IModel)6 MetadataEmfTableEditor (org.talend.core.ui.metadata.editor.MetadataEmfTableEditor)5 Command (org.eclipse.gef.commands.Command)4 ExtendedTableResetDBTypesCommand (org.talend.core.ui.metadata.extended.command.ExtendedTableResetDBTypesCommand)4 MetadataEmfExportXmlCommand (org.talend.core.ui.metadata.extended.command.MetadataEmfExportXmlCommand)4 MetadataEmfImportXmlCommand (org.talend.core.ui.metadata.extended.command.MetadataEmfImportXmlCommand)4 MetadataEmfPasteCommand (org.talend.core.ui.metadata.extended.command.MetadataEmfPasteCommand)4 ArrayList (java.util.ArrayList)3 List (java.util.List)3 ExtendedTableModel (org.talend.commons.ui.swt.extended.table.ExtendedTableModel)2 File (java.io.File)1 AddPushButtonForExtendedTable (org.talend.commons.ui.swt.advanced.dataeditor.button.AddPushButtonForExtendedTable)1 ImportPushButtonForExtendedTable (org.talend.commons.ui.swt.advanced.dataeditor.button.ImportPushButtonForExtendedTable)1 MoveDownPushButtonForExtendedTable (org.talend.commons.ui.swt.advanced.dataeditor.button.MoveDownPushButtonForExtendedTable)1 MoveUpPushButtonForExtendedTable (org.talend.commons.ui.swt.advanced.dataeditor.button.MoveUpPushButtonForExtendedTable)1 PastePushButtonForExtendedTable (org.talend.commons.ui.swt.advanced.dataeditor.button.PastePushButtonForExtendedTable)1 IBeanPropertyAccessors (org.talend.commons.utils.data.bean.IBeanPropertyAccessors)1